package node import ( "lux/crypto" "lux/net" "lux/proto" ) type LuxNode struct { router net.LuxRouter state LuxNodeState } func NewLuxNode(nodeKey crypto.LuxKey, ks crypto.LuxKeyStore) LuxNode { return LuxNode{ router: net.NewLuxRouter(nodeKey, ks), state: NewNodeState(), } } func (node *LuxNode) GetRouter() *net.LuxRouter { return &node.router } func (node *LuxNode) GetNodeID() proto.LuxID { return node.GetRouter().GetThisKey().Id } func (node *LuxNode) AddInterior(udpAddr string) error { return node.router.CreateInboundChannel(net.LuxChannelInterior, udpAddr) } func (node *LuxNode) Start() { node.router.Start() } func (node *LuxNode) Stop() { node.router.Stop() }