ListNodes retrieves nodes from cached cluster data.
()
| 59 | |
| 60 | // ListNodes retrieves nodes from cached cluster data. |
| 61 | func (c *Client) ListNodes() ([]Node, error) { |
| 62 | if c.Cluster == nil { |
| 63 | if _, err := c.GetClusterStatus(); err != nil { |
| 64 | return nil, err |
| 65 | } |
| 66 | } |
| 67 | |
| 68 | nodes := make([]Node, 0, len(c.Cluster.Nodes)) |
| 69 | |
| 70 | for _, clusterNode := range c.Cluster.Nodes { |
| 71 | if clusterNode != nil { |
| 72 | nodes = append(nodes, *clusterNode) |
| 73 | } |
| 74 | } |
| 75 | |
| 76 | return nodes, nil |
| 77 | } |
| 78 | |
| 79 | // GetNodeStatus retrieves real-time status for a specific node. |
| 80 | func (c *Client) GetNodeStatus(nodeName string) (*Node, error) { |
no test coverage detected