package peermgr import ( "github.com/link33/sidecar/internal/port" "github.com/link33/sidecar/model/pb" ) type sidecar struct { id string swarm PeerManager tag string rev chan *pb.Message } func (s *sidecar) ID() string { return s.id } func (s *sidecar) Type() string { return port.Sidecar } func (s *sidecar) Name() string { return s.ID() } func (s *sidecar) Tag() string { return s.tag } // Send TODO 如何区别IBTPX与Message // Send 同步发送给绑定的对应的port dev func (s *sidecar) Send(msg *pb.Message) (*pb.Message, error) { return s.swarm.Send(s.ID(), msg) } // AsyncSend 异步发送给绑定的对应的port dev func (s *sidecar) AsyncSend(msg *pb.Message) error { return s.swarm.AsyncSend(s.ID(), msg) } // ListenIBTPX 从绑定的对应的port dev接收数据 func (s *sidecar) ListenIBTPX() <-chan *pb.Message { return s.rev }