diff options
author | Bas van Kervel <basvankervel@gmail.com> | 2017-06-13 17:49:07 +0800 |
---|---|---|
committer | Bas van Kervel <basvankervel@gmail.com> | 2017-06-15 17:53:15 +0800 |
commit | b58a5016738b92db19e08ec87ef34ce3250fae6b (patch) | |
tree | fa9485b3f711204b14edae5dcbc812e624490c68 /whisper/whisperv5/gen_message_json.go | |
parent | 80f7c6c2996ad47f70a5070c400b1fd87a20c59c (diff) | |
download | go-tangerine-b58a5016738b92db19e08ec87ef34ce3250fae6b.tar go-tangerine-b58a5016738b92db19e08ec87ef34ce3250fae6b.tar.gz go-tangerine-b58a5016738b92db19e08ec87ef34ce3250fae6b.tar.bz2 go-tangerine-b58a5016738b92db19e08ec87ef34ce3250fae6b.tar.lz go-tangerine-b58a5016738b92db19e08ec87ef34ce3250fae6b.tar.xz go-tangerine-b58a5016738b92db19e08ec87ef34ce3250fae6b.tar.zst go-tangerine-b58a5016738b92db19e08ec87ef34ce3250fae6b.zip |
whisperv5: integrate whisper and add whisper RPC simulator
Diffstat (limited to 'whisper/whisperv5/gen_message_json.go')
-rw-r--r-- | whisper/whisperv5/gen_message_json.go | 80 |
1 files changed, 80 insertions, 0 deletions
diff --git a/whisper/whisperv5/gen_message_json.go b/whisper/whisperv5/gen_message_json.go new file mode 100644 index 000000000..26168225c --- /dev/null +++ b/whisper/whisperv5/gen_message_json.go @@ -0,0 +1,80 @@ +// Code generated by github.com/fjl/gencodec. DO NOT EDIT. + +package whisperv5 + +import ( + "encoding/json" + + "github.com/ethereum/go-ethereum/common/hexutil" +) + +func (m Message) MarshalJSON() ([]byte, error) { + type Message struct { + Sig hexutil.Bytes `json:"sig,omitempty"` + TTL uint32 `json:"ttl"` + Timestamp uint32 `json:"timestamp"` + Topic TopicType `json:"topic"` + Payload hexutil.Bytes `json:"payload"` + Padding hexutil.Bytes `json:"padding"` + PoW float64 `json:"pow"` + Hash hexutil.Bytes `json:"hash"` + Dst hexutil.Bytes `json:"recipientPublicKey,omitempty"` + } + var enc Message + enc.Sig = m.Sig + enc.TTL = m.TTL + enc.Timestamp = m.Timestamp + enc.Topic = m.Topic + enc.Payload = m.Payload + enc.Padding = m.Padding + enc.PoW = m.PoW + enc.Hash = m.Hash + enc.Dst = m.Dst + return json.Marshal(&enc) +} + +func (m *Message) UnmarshalJSON(input []byte) error { + type Message struct { + Sig hexutil.Bytes `json:"sig,omitempty"` + TTL *uint32 `json:"ttl"` + Timestamp *uint32 `json:"timestamp"` + Topic *TopicType `json:"topic"` + Payload hexutil.Bytes `json:"payload"` + Padding hexutil.Bytes `json:"padding"` + PoW *float64 `json:"pow"` + Hash hexutil.Bytes `json:"hash"` + Dst hexutil.Bytes `json:"recipientPublicKey,omitempty"` + } + var dec Message + if err := json.Unmarshal(input, &dec); err != nil { + return err + } + if dec.Sig != nil { + m.Sig = dec.Sig + } + if dec.TTL != nil { + m.TTL = *dec.TTL + } + if dec.Timestamp != nil { + m.Timestamp = *dec.Timestamp + } + if dec.Topic != nil { + m.Topic = *dec.Topic + } + if dec.Payload != nil { + m.Payload = dec.Payload + } + if dec.Padding != nil { + m.Padding = dec.Padding + } + if dec.PoW != nil { + m.PoW = *dec.PoW + } + if dec.Hash != nil { + m.Hash = dec.Hash + } + if dec.Dst != nil { + m.Dst = dec.Dst + } + return nil +} |