Package org.apache.ignite.internal

## Enum IgniteFeatures

- java.lang.Object
- - java.lang.Enum<IgniteFeatures>
  - - org.apache.ignite.internal.IgniteFeatures

All Implemented Interfaces:
  `Serializable`, `Comparable<IgniteFeatures>`

    public enum IgniteFeatures
    extends Enum<IgniteFeatures>

Defines supported features and check its on other nodes.

### Enum Constant Summary

Enum Constants
`PME_FREE_SWITCH` Partition Map Exchange-free switch on baseline node left at fully rebalanced cluster.

### Method Summary

All Methods Static Methods Instance Methods Concrete Methods
`static byte[]` `allFeatures()` Features supported by the current node.
`static boolean` `allNodesSupport​(DiscoverySpi discoSpi, IgniteFeatures feature)` Check that feature is supported by all remote nodes.
`static boolean` `allNodesSupports​(Iterable<ClusterNode> nodes, IgniteFeatures feature)` Checks that feature supported by all nodes.
`int` `getFeatureId()`
`static boolean` `nodeSupports​(byte[] featuresAttrBytes, IgniteFeatures feature)` Checks that feature supported by node.
`static boolean` `nodeSupports​(ClusterNode clusterNode, IgniteFeatures feature)` Checks that feature supported by node.
`static IgniteFeatures` `valueOf​(String name)` Returns the enum constant of this type with the specified name.
`static IgniteFeatures[]` `values()` Returns an array containing the constants of this enum type, in the order they are declared.

### Methods inherited from class java.lang.Enum

`clone, compareTo, equals, finalize, getDeclaringClass, hashCode, name, ordinal, toString, valueOf`

### Methods inherited from class java.lang.Object

`getClass, notify, notifyAll, wait, wait, wait`

### Enum Constant Detail

#### PME_FREE_SWITCH

    public static final IgniteFeatures PME_FREE_SWITCH

Partition Map Exchange-free switch on baseline node left at fully rebalanced cluster.

### Method Detail

#### values

    public static IgniteFeatures[] values()

Returns an array containing the constants of this enum type, in the order they are declared. This method may be used to iterate over the constants as follows:

    for (IgniteFeatures c : IgniteFeatures.values())
        System.out.println(c);

Returns:
  an array containing the constants of this enum type, in the order they are declared

#### valueOf

    public static IgniteFeatures valueOf​(String name)

Returns the enum constant of this type with the specified name. The string must match exactly an identifier used to declare an enum constant in this type. (Extraneous whitespace characters are not permitted.)

Parameters:
  `name` - the name of the enum constant to be returned.
Returns:
  the enum constant with the specified name
Throws:
  `IllegalArgumentException` - if this enum type has no constant with the specified name
  `NullPointerException` - if the argument is null

#### getFeatureId

    public int getFeatureId()

Returns:
  Feature ID.

#### nodeSupports

    public static boolean nodeSupports​(ClusterNode clusterNode,
                                       IgniteFeatures feature)

Checks that feature supported by node.

Parameters:
  `clusterNode` - Cluster node to check.
  `feature` - Feature to check.
Returns:
  `True` if feature is declared to be supported by remote node.

#### nodeSupports

    public static boolean nodeSupports​(byte[] featuresAttrBytes,
                                       IgniteFeatures feature)

Checks that feature supported by node.

Parameters:
  `featuresAttrBytes` - Byte array value of supported features node attribute.
  `feature` - Feature to check.
Returns:
  `True` if feature is declared to be supported by remote node.

#### allNodesSupports

    public static boolean allNodesSupports​(Iterable<ClusterNode> nodes,
                                           IgniteFeatures feature)

Checks that feature supported by all nodes.

Parameters:
  `nodes` - cluster nodes to check their feature support.
Returns:
  if feature is declared to be supported by all nodes

#### allNodesSupport

    public static boolean allNodesSupport​(DiscoverySpi discoSpi,
                                          IgniteFeatures feature)

Check that feature is supported by all remote nodes.

Parameters:
  `discoSpi` - Discovery SPI implementation.
  `feature` - Feature to check.
Returns:
  `True` if all remote nodes support the feature.

#### allFeatures

    public static byte[] allFeatures()

Features supported by the current node.

Returns:
  Byte array representing all supported features by current node.