## Uses of Interface
org.apache.ignite.cluster.ClusterGroup

- Packages that use ClusterGroup
  Package | Description
  --- | ---
  org.apache.ignite | Contains entry-point Ignite & HPC APIs.
  org.apache.ignite.cluster | Contains cluster-related classes.

- - ### Uses of ClusterGroup in org.apache.ignite

    Subinterfaces of ClusterGroup in org.apache.ignite
    Modifier and Type | Interface | Description
    --- | --- | ---
    `interface` | `IgniteCluster` | Represents whole cluster (all available nodes) and also provides a handle on `IgniteCluster.nodeLocalMap()` which provides map-like functionality linked to current grid node.

    Methods in org.apache.ignite that return ClusterGroup
    Modifier and Type | Method | Description
    --- | --- | ---
    `ClusterGroup` | IgniteCompute.`clusterGroup()` | Gets cluster group to which this `IgniteCompute` instance belongs.
    `ClusterGroup` | IgniteEvents.`clusterGroup()` | Gets cluster group to which this `IgniteEvents` instance belongs.
    `ClusterGroup` | IgniteMessaging.`clusterGroup()` | Gets the cluster group to which this `GridMessaging` instance belongs.
    `ClusterGroup` | IgniteServices.`clusterGroup()` | Gets the cluster group to which this `IgniteServices` instance belongs.
    `ClusterGroup` | IgniteCluster.`forLocal()` | Gets a cluster group consisting from the local node.

    Methods in org.apache.ignite with parameters of type ClusterGroup
    Modifier and Type | Method | Description
    --- | --- | ---
    `IgniteCompute` | Ignite.`compute​(ClusterGroup grp)` | Gets `compute` facade over the specified cluster group.
    `IgniteCompute` | IgniteSpringBean.`compute​(ClusterGroup grp)` | Gets `compute` facade over the specified cluster group.
    `IgniteEvents` | Ignite.`events​(ClusterGroup grp)` | Gets `events` facade over nodes within the cluster group.
    `IgniteEvents` | IgniteSpringBean.`events​(ClusterGroup grp)` | Gets `events` facade over nodes within the cluster group.
    `ExecutorService` | Ignite.`executorService​(ClusterGroup grp)` | Creates a new `ExecutorService` which will execute all submitted `Callable` and `Runnable` jobs on nodes in the specified cluster group.
    `ExecutorService` | IgniteSpringBean.`executorService​(ClusterGroup grp)` | Creates a new `ExecutorService` which will execute all submitted `Callable` and `Runnable` jobs on nodes in the specified cluster group.
    `IgniteMessaging` | Ignite.`message​(ClusterGroup grp)` | Gets `messaging` facade over nodes within the cluster group.
    `IgniteMessaging` | IgniteSpringBean.`message​(ClusterGroup prj)` | Gets `messaging` facade over nodes within the cluster group.
    `CacheMetrics` | IgniteCache.`metrics​(ClusterGroup grp)` | Gets cluster group snapshot metrics for caches in cluster group.
    `IgniteServices` | Ignite.`services​(ClusterGroup grp)` | Gets `services` facade over nodes within the cluster group.
    `IgniteServices` | IgniteSpringBean.`services​(ClusterGroup grp)` | Gets `services` facade over nodes within the cluster group.

  - ### Uses of ClusterGroup in org.apache.ignite.cluster

    Methods in org.apache.ignite.cluster that return ClusterGroup
    Modifier and Type | Method | Description
    --- | --- | ---
    `ClusterGroup` | ClusterGroup.`forAttribute​(String name, @Nullable Object val)` | Creates a new cluster group for nodes containing given name and value specified in user attributes.
    `ClusterGroup` | ClusterGroup.`forCacheNodes​(String cacheName)` | Creates a cluster group for all nodes that have cache with specified name, either in client or server modes.
    `ClusterGroup` | ClusterGroup.`forClientNodes​(String cacheName)` | Creates a cluster group for all client nodes that access cache with the specified name.
    `ClusterGroup` | ClusterGroup.`forClients()` | Creates a cluster group of nodes started in client mode.
    `ClusterGroup` | ClusterGroup.`forDataNodes​(String cacheName)` | Creates a cluster group for all data nodes that have the cache with the specified name running.
    `ClusterGroup` | ClusterGroup.`forHost​(String host, String... hosts)` | Gets cluster group consisting from the nodes running on the hosts specified.
    `ClusterGroup` | ClusterGroup.`forHost​(ClusterNode node)` | Gets cluster group consisting from the nodes in this cluster group residing on the same host as the given node.
    `ClusterGroup` | ClusterGroup.`forNode​(ClusterNode node, ClusterNode... nodes)` | Creates a cluster group for the given node.
    `ClusterGroup` | ClusterGroup.`forNodeId​(UUID id, UUID... ids)` | Creates a cluster group for a node with the specified ID.
    `ClusterGroup` | ClusterGroup.`forNodeIds​(Collection<UUID> ids)` | Creates a cluster group over nodes with specified node IDs.
    `ClusterGroup` | ClusterGroup.`forNodes​(Collection<? extends ClusterNode> nodes)` | Creates a cluster group over a given set of nodes.
    `ClusterGroup` | ClusterGroup.`forOldest()` | Creates a cluster group with one oldest node from the current cluster group.
    `ClusterGroup` | ClusterGroup.`forOthers​(ClusterGroup prj)` | Creates a cluster group for nodes not included into the given cluster group.
    `ClusterGroup` | ClusterGroup.`forOthers​(ClusterNode node, ClusterNode... nodes)` | Creates a cluster group for nodes other than the given nodes.
    `ClusterGroup` | ClusterGroup.`forPredicate​(IgnitePredicate<ClusterNode> p)` | Creates a new cluster group which includes all nodes that pass the given predicate filter.
    `ClusterGroup` | ClusterGroup.`forRandom()` | Creates a cluster group with one random node from the current cluster group.
    `ClusterGroup` | ClusterGroup.`forRemotes()` | Gets cluster group consisting from the nodes in this cluster group excluding the local node.
    `ClusterGroup` | ClusterGroup.`forServers()` | Creates a cluster group of nodes started in server mode.
    `ClusterGroup` | ClusterGroup.`forYoungest()` | Creates a cluster group with one youngest node in the current cluster group.

    Methods in org.apache.ignite.cluster with parameters of type ClusterGroup
    Modifier and Type | Method | Description
    --- | --- | ---
    `ClusterGroup` | ClusterGroup.`forOthers​(ClusterGroup prj)` | Creates a cluster group for nodes not included into the given cluster group.