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  }