github.com/jingruilea/kubeedge@v1.2.0-beta.0.0.20200410162146-4bb8902b3879/edge/pkg/metamanager/client/nodestatus.go (about) 1 package client 2 3 import ( 4 "fmt" 5 6 "github.com/kubeedge/beehive/pkg/core/model" 7 8 edgeapi "github.com/kubeedge/kubeedge/common/types" 9 "github.com/kubeedge/kubeedge/edge/pkg/common/message" 10 "github.com/kubeedge/kubeedge/edge/pkg/common/modules" 11 ) 12 13 //NodeStatusGetter is interface to get node status 14 type NodeStatusGetter interface { 15 NodeStatus(namespace string) NodeStatusInterface 16 } 17 18 //NodeStatusInterface is node status interface 19 type NodeStatusInterface interface { 20 Create(*edgeapi.NodeStatusRequest) (*edgeapi.NodeStatusRequest, error) 21 Update(rsName string, ns edgeapi.NodeStatusRequest) error 22 Delete(name string) error 23 Get(name string) (*edgeapi.NodeStatusRequest, error) 24 } 25 26 type nodeStatus struct { 27 namespace string 28 send SendInterface 29 } 30 31 func newNodeStatus(namespace string, s SendInterface) *nodeStatus { 32 return &nodeStatus{ 33 send: s, 34 namespace: namespace, 35 } 36 } 37 38 func (c *nodeStatus) Create(ns *edgeapi.NodeStatusRequest) (*edgeapi.NodeStatusRequest, error) { 39 return nil, nil 40 } 41 42 func (c *nodeStatus) Update(rsName string, ns edgeapi.NodeStatusRequest) error { 43 resource := fmt.Sprintf("%s/%s/%s", c.namespace, model.ResourceTypeNodeStatus, rsName) 44 nodeStatusMsg := message.BuildMsg(modules.MetaGroup, "", modules.EdgedModuleName, resource, model.UpdateOperation, ns) 45 _, err := c.send.SendSync(nodeStatusMsg) 46 if err != nil { 47 return fmt.Errorf("update nodeStatus failed, err: %v", err) 48 } 49 50 return nil 51 } 52 53 func (c *nodeStatus) Delete(name string) error { 54 return nil 55 } 56 57 func (c *nodeStatus) Get(name string) (*edgeapi.NodeStatusRequest, error) { 58 return nil, nil 59 }