Skip to content

Commit

Permalink
adjust to nnet changes
Browse files Browse the repository at this point in the history
  • Loading branch information
nbdy authored and yilunzhang committed Sep 28, 2024
1 parent 761f255 commit 0cec1eb
Show file tree
Hide file tree
Showing 5 changed files with 27 additions and 29 deletions.
8 changes: 4 additions & 4 deletions lnode/localnode.go
Original file line number Diff line number Diff line change
Expand Up @@ -5,13 +5,13 @@ import (
"encoding/json"
"errors"
"fmt"
nnetnode "github.com/nknorg/nnet/node"
"net"
"net/url"
"sync"
"sync/atomic"
"time"

"github.com/golang/protobuf/proto"
"github.com/nknorg/nkn/v2/api/ratelimiter"
"github.com/nknorg/nkn/v2/chain"
"github.com/nknorg/nkn/v2/chain/pool"
Expand All @@ -22,11 +22,11 @@ import (
"github.com/nknorg/nkn/v2/util/log"
"github.com/nknorg/nkn/v2/vault"
"github.com/nknorg/nnet"
nnetnode "github.com/nknorg/nnet/node"
"github.com/nknorg/nnet/overlay/chord"
"github.com/nknorg/nnet/overlay/routing"
nnetpb "github.com/nknorg/nnet/protobuf"
pbnode "github.com/nknorg/nnet/protobuf/node"
"golang.org/x/time/rate"
"google.golang.org/protobuf/proto"
)

type LocalNode struct {
Expand Down Expand Up @@ -112,7 +112,7 @@ func NewLocalNode(wallet *vault.Wallet, nn *nnet.NNet, ledgerMode pb.LedgerMode)
return true, true
}})

nn.MustApplyMiddleware(nnetnode.WillConnectToNode{Func: func(n *nnetpb.Node) (bool, bool) {
nn.MustApplyMiddleware(nnetnode.WillConnectToNode{Func: func(n *pbnode.Node) (bool, bool) {
err := localNode.shouldConnectToNode(n)
if err != nil {
log.Infof("stop connect to node because: %v", err)
Expand Down
22 changes: 11 additions & 11 deletions lnode/message.go
Original file line number Diff line number Diff line change
Expand Up @@ -5,13 +5,13 @@ import (
"errors"
"fmt"

"github.com/golang/protobuf/proto"
"github.com/nknorg/nkn/v2/crypto"
"github.com/nknorg/nkn/v2/node"
"github.com/nknorg/nkn/v2/pb"
"github.com/nknorg/nkn/v2/util/log"
nnetnode "github.com/nknorg/nnet/node"
nnetpb "github.com/nknorg/nnet/protobuf"
pbmsg "github.com/nknorg/nnet/protobuf/message"
"google.golang.org/protobuf/proto"
)

func (localNode *LocalNode) SerializeMessage(unsignedMsg *pb.UnsignedMessage, sign bool) ([]byte, error) {
Expand Down Expand Up @@ -42,7 +42,7 @@ func (localNode *LocalNode) SerializeMessage(unsignedMsg *pb.UnsignedMessage, si
}

func (localNode *LocalNode) remoteMessageRouted(remoteMessage *nnetnode.RemoteMessage, nnetLocalNode *nnetnode.LocalNode, remoteNodes []*nnetnode.RemoteNode) (*nnetnode.RemoteMessage, *nnetnode.LocalNode, []*nnetnode.RemoteNode, bool) {
if remoteMessage.Msg.MessageType == nnetpb.BYTES {
if remoteMessage.Msg.MessageType == pbmsg.MessageType_BYTES {
err := localNode.maybeAddRemoteNode(remoteMessage.RemoteNode)
if err != nil {
log.Warningf("Add remote node error: %v", err)
Expand All @@ -66,7 +66,7 @@ func (localNode *LocalNode) remoteMessageRouted(remoteMessage *nnetnode.RemoteMe
return nil, nil, nil, false
}

msgBody := &nnetpb.Bytes{}
msgBody := &pbmsg.Bytes{}
err = proto.Unmarshal(remoteMessage.Msg.Message, msgBody)
if err != nil {
log.Errorf("Error unmarshal byte msg: %v", err)
Expand Down Expand Up @@ -106,7 +106,7 @@ func (localNode *LocalNode) remoteMessageRouted(remoteMessage *nnetnode.RemoteMe
}

if len(signedMsg.Signature) > 0 {
if remoteMessage.Msg.RoutingType != nnetpb.DIRECT {
if remoteMessage.Msg.RoutingType != pbmsg.RoutingType_DIRECT {
log.Errorf("Signature is only allowed on direct message")
return nil, nil, nil, false
}
Expand Down Expand Up @@ -272,25 +272,25 @@ func checkMessageSigned(messageType pb.MessageType, signed bool) error {
}

// checkMessageRoutingType checks if a message type has the allowed routing type
func checkMessageRoutingType(messageType pb.MessageType, routingType nnetpb.RoutingType) error {
func checkMessageRoutingType(messageType pb.MessageType, routingType pbmsg.RoutingType) error {
switch routingType {
case nnetpb.DIRECT:
case pbmsg.RoutingType_DIRECT:
if _, ok := pb.AllowedDirectMessageType_name[int32(messageType)]; ok {
return nil
}
case nnetpb.RELAY:
case pbmsg.RoutingType_RELAY:
if _, ok := pb.AllowedRelayMessageType_name[int32(messageType)]; ok {
return nil
}
case nnetpb.BROADCAST_PUSH:
case pbmsg.RoutingType_BROADCAST_PUSH:
if _, ok := pb.AllowedBroadcastPushMessageType_name[int32(messageType)]; ok {
return nil
}
case nnetpb.BROADCAST_PULL:
case pbmsg.RoutingType_BROADCAST_PULL:
if _, ok := pb.AllowedBroadcastPullMessageType_name[int32(messageType)]; ok {
return nil
}
case nnetpb.BROADCAST_TREE:
case pbmsg.RoutingType_BROADCAST_TREE:
if _, ok := pb.AllowedBroadcastTreeMessageType_name[int32(messageType)]; ok {
return nil
}
Expand Down
6 changes: 3 additions & 3 deletions lnode/transaction.go
Original file line number Diff line number Diff line change
Expand Up @@ -4,9 +4,9 @@ import (
"bytes"
"errors"
"fmt"
pbmsg "github.com/nknorg/nnet/protobuf/message"
"hash/fnv"

"github.com/golang/protobuf/proto"
"github.com/nknorg/nkn/v2/block"
"github.com/nknorg/nkn/v2/chain"
"github.com/nknorg/nkn/v2/chain/pool"
Expand All @@ -20,7 +20,7 @@ import (
"github.com/nknorg/nkn/v2/util"
"github.com/nknorg/nkn/v2/util/log"
nnetnode "github.com/nknorg/nnet/node"
nnetpb "github.com/nknorg/nnet/protobuf"
"google.golang.org/protobuf/proto"
)

const (
Expand Down Expand Up @@ -459,7 +459,7 @@ func (localNode *LocalNode) BroadcastTransaction(txn *transaction.Transaction) e
return err
}

_, err = localNode.nnet.SendBytesBroadcastAsync(buf, nnetpb.BROADCAST_TREE)
_, err = localNode.nnet.SendBytesBroadcastAsync(buf, pbmsg.RoutingType_BROADCAST_TREE)
if err != nil {
return err
}
Expand Down
18 changes: 8 additions & 10 deletions node/node.go
Original file line number Diff line number Diff line change
Expand Up @@ -4,19 +4,19 @@ package node
import (
"encoding/hex"
"encoding/json"
pbnode "github.com/nknorg/nnet/protobuf/node"
"net/url"
"sync"
"time"

"github.com/golang/protobuf/jsonpb"
"github.com/nknorg/nkn/v2/crypto"
"github.com/nknorg/nkn/v2/pb"
"github.com/nknorg/nkn/v2/util"
nnetpb "github.com/nknorg/nnet/protobuf"
"google.golang.org/protobuf/encoding/protojson"
)

type Node struct {
*nnetpb.Node
*pbnode.Node
*pb.NodeData
publicKey []byte
StartTime time.Time
Expand All @@ -29,27 +29,25 @@ type Node struct {
func (n *Node) MarshalJSON() ([]byte, error) {
var out map[string]interface{}

marshaler := &jsonpb.Marshaler{}

s, err := marshaler.MarshalToString(n.Node)
s, err := protojson.Marshal(n.Node)
if err != nil {
return nil, err
}

err = json.Unmarshal([]byte(s), &out)
err = json.Unmarshal(s, &out)
if err != nil {
return nil, err
}

delete(out, "data")
out["id"] = hex.EncodeToString(n.Node.Id)

s, err = marshaler.MarshalToString(n.NodeData)
s, err = protojson.Marshal(n.NodeData)
if err != nil {
return nil, err
}

err = json.Unmarshal([]byte(s), &out)
err = json.Unmarshal(s, &out)
if err != nil {
return nil, err
}
Expand All @@ -60,7 +58,7 @@ func (n *Node) MarshalJSON() ([]byte, error) {
return json.Marshal(out)
}

func NewNode(nnetNode *nnetpb.Node, nodeData *pb.NodeData) (*Node, error) {
func NewNode(nnetNode *pbnode.Node, nodeData *pb.NodeData) (*Node, error) {
err := crypto.CheckPublicKey(nodeData.PublicKey)
if err != nil {
return nil, err
Expand Down
2 changes: 1 addition & 1 deletion node/remotenode.go
Original file line number Diff line number Diff line change
Expand Up @@ -6,10 +6,10 @@ import (
"sync"
"time"

"github.com/golang/protobuf/proto"
"github.com/nknorg/nkn/v2/pb"
"github.com/nknorg/nkn/v2/util/log"
nnetnode "github.com/nknorg/nnet/node"
"google.golang.org/protobuf/proto"
)

type RemoteNode struct {
Expand Down

0 comments on commit 0cec1eb

Please sign in to comment.