Class DiscoveryNodes

    • Method Detail

      • iterator

        public java.util.Iterator<DiscoveryNode> iterator()
        Specified by:
        iterator in interface java.lang.Iterable<DiscoveryNode>
      • isLocalNodeElectedMaster

        public boolean isLocalNodeElectedMaster()
        Returns true if the local node is the elected master node.
      • getSize

        public int getSize()
        Get the number of known nodes
        Returns:
        number of nodes
      • getNodes

        public ImmutableOpenMap<java.lang.String,​DiscoveryNode> getNodes()
        Get a Map of the discovered nodes arranged by their ids
        Returns:
        Map of the discovered nodes arranged by their ids
      • getDataNodes

        public ImmutableOpenMap<java.lang.String,​DiscoveryNode> getDataNodes()
        Get a Map of the discovered data nodes arranged by their ids
        Returns:
        Map of the discovered data nodes arranged by their ids
      • getMasterNodes

        public ImmutableOpenMap<java.lang.String,​DiscoveryNode> getMasterNodes()
        Get a Map of the discovered master nodes arranged by their ids
        Returns:
        Map of the discovered master nodes arranged by their ids
      • getIngestNodes

        public ImmutableOpenMap<java.lang.String,​DiscoveryNode> getIngestNodes()
        Returns:
        All the ingest nodes arranged by their ids
      • getMasterAndDataNodes

        public ImmutableOpenMap<java.lang.String,​DiscoveryNode> getMasterAndDataNodes()
        Get a Map of the discovered master and data nodes arranged by their ids
        Returns:
        Map of the discovered master and data nodes arranged by their ids
      • getCoordinatingOnlyNodes

        public ImmutableOpenMap<java.lang.String,​DiscoveryNode> getCoordinatingOnlyNodes()
        Get a Map of the coordinating only nodes (nodes which are neither master, nor data, nor ingest nodes) arranged by their ids
        Returns:
        Map of the coordinating only nodes arranged by their ids
      • get

        public DiscoveryNode get​(java.lang.String nodeId)
        Get a node by its id
        Parameters:
        nodeId - id of the wanted node
        Returns:
        wanted node if it exists. Otherwise null
      • nodeExists

        public boolean nodeExists​(java.lang.String nodeId)
        Determine if a given node id exists
        Parameters:
        nodeId - id of the node which existence should be verified
        Returns:
        true if the node exists. Otherwise false
      • nodeExists

        public boolean nodeExists​(DiscoveryNode node)
        Determine if a given node exists
        Parameters:
        node - of the node which existence should be verified
        Returns:
        true if the node exists. Otherwise false
      • getMasterNodeId

        public java.lang.String getMasterNodeId()
        Get the id of the master node
        Returns:
        id of the master
      • getLocalNodeId

        public java.lang.String getLocalNodeId()
        Get the id of the local node
        Returns:
        id of the local node
      • getLocalNode

        public DiscoveryNode getLocalNode()
        Get the local node
        Returns:
        local node
      • getMasterNode

        public DiscoveryNode getMasterNode()
        Get the master node
        Returns:
        master node
      • findByAddress

        public DiscoveryNode findByAddress​(TransportAddress address)
        Get a node by its address
        Parameters:
        address - TransportAddress of the wanted node
        Returns:
        node identified by the given address or null if no such node exists
      • getSmallestNonClientNodeVersion

        public Version getSmallestNonClientNodeVersion()
        Returns the version of the node with the oldest version in the cluster that is not a client node If there are no non-client nodes, Version.CURRENT will be returned.
        Returns:
        the oldest version in the cluster
      • getLargestNonClientNodeVersion

        public Version getLargestNonClientNodeVersion()
        Returns the version of the node with the youngest version in the cluster that is not a client node. If there are no non-client nodes, Version.CURRENT will be returned.
        Returns:
        the youngest version in the cluster
      • getMinNodeVersion

        public Version getMinNodeVersion()
        Returns the version of the node with the oldest version in the cluster.
        Returns:
        the oldest version in the cluster
      • getMaxNodeVersion

        public Version getMaxNodeVersion()
        Returns the version of the node with the youngest version in the cluster
        Returns:
        the youngest version in the cluster
      • resolveNode

        public DiscoveryNode resolveNode​(java.lang.String node)
        Resolve a node with a given id
        Parameters:
        node - id of the node to discover
        Returns:
        discovered node matching the given id
        Throws:
        java.lang.IllegalArgumentException - if more than one node matches the request or no nodes have been resolved
      • resolveNodes

        public java.lang.String[] resolveNodes​(java.lang.String... nodes)
        resolves a set of node "descriptions" to concrete and existing node ids. "descriptions" can be (resolved in this order): - "_local" or "_master" for the relevant nodes - a node id - a wild card pattern that will be matched against node names - a "attr:value" pattern, where attr can be a node role (master, data, ingest etc.) in which case the value can be true or false, or a generic node attribute name in which case value will be treated as a wildcard and matched against the node attribute values.
      • toString

        public java.lang.String toString()
        Overrides:
        toString in class java.lang.Object