func()

in store/cluster_node.go [209:233]


func (n *ClusterNode) GetClusterNodeInfo(ctx context.Context) (*ClusterNodeInfo, error) {
	infoStr, err := n.GetClient().Info(ctx).Result()
	if err != nil {
		return nil, err
	}

	clusterNodeInfo := &ClusterNodeInfo{}
	lines := strings.Split(infoStr, "\r\n")
	for _, line := range lines {
		fields := strings.Split(line, ":")
		if len(fields) != 2 {
			continue
		}
		switch fields[0] {
		case "sequence":
			clusterNodeInfo.Sequence, err = strconv.ParseUint(fields[1], 10, 64)
			if err != nil {
				return nil, err
			}
		case "role":
			clusterNodeInfo.Role = fields[1]
		}
	}
	return clusterNodeInfo, nil
}