bc/peer/messageHandler.go
peer/messageHandler.goRaw
1package main
2
3import (
4 "fmt"
5
6 p2plib "./p2plib"
7
8 blockchainlib "./blockchainlib"
9)
10
11func createMsgHandlerCases() map[string]func(p2plib.Peer, p2plib.Msg) {
12 configuredMsgCases := make(map[string]func(p2plib.Peer, p2plib.Msg))
13 configuredMsgCases["Block"] = func(peer p2plib.Peer, msg p2plib.Msg) {
14 //TODO check if the block is signed by an autorized emitter
15 //block = msg.Data converted to Block
16 var block blockchainlib.Block
17 if !blockchain.BlockExists(block) {
18 blockchain.AddBlock(block)
19 p2plib.PropagateData(peer, "block in string format")
20 }
21 }
22
23 fmt.Println(configuredMsgCases)
24 return configuredMsgCases
25}