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