@InterfaceAudience.Public @InterfaceStability.Unstable public abstract class NodeAttribute extends Object
Node Attribute is a kind of a label which represents one of the attribute/feature of a Node. Its different from node partition label as resource guarantees across the queues will not be maintained for these type of labels.
A given Node can be mapped with any kind of attribute, few examples are HAS_SSD=true, JAVA_VERSION=JDK1.8, OS_TYPE=WINDOWS.
Its not compulsory for all the attributes to have value, empty string is the
default value of the NodeAttributeType.STRING
Node Attribute Prefix is used as namespace to segregate the attributes.
Modifier and Type | Field and Description |
---|---|
static String |
PREFIX_CENTRALIZED |
static String |
PREFIX_DISTRIBUTED |
Constructor and Description |
---|
NodeAttribute() |
Modifier and Type | Method and Description |
---|---|
abstract NodeAttributeKey |
getAttributeKey() |
abstract NodeAttributeType |
getAttributeType() |
abstract String |
getAttributeValue() |
static NodeAttribute |
newInstance(String attributeName,
NodeAttributeType attributeType,
String attributeValue) |
static NodeAttribute |
newInstance(String attributePrefix,
String attributeName,
NodeAttributeType attributeType,
String attributeValue) |
abstract void |
setAttributeKey(NodeAttributeKey attributeKey) |
abstract void |
setAttributeType(NodeAttributeType attributeType) |
abstract void |
setAttributeValue(String attributeValue) |
public static final String PREFIX_DISTRIBUTED
public static final String PREFIX_CENTRALIZED
public static NodeAttribute newInstance(String attributeName, NodeAttributeType attributeType, String attributeValue)
public static NodeAttribute newInstance(String attributePrefix, String attributeName, NodeAttributeType attributeType, String attributeValue)
@InterfaceAudience.Public @InterfaceStability.Unstable public abstract NodeAttributeKey getAttributeKey()
@InterfaceAudience.Public @InterfaceStability.Unstable public abstract void setAttributeKey(NodeAttributeKey attributeKey)
@InterfaceAudience.Public @InterfaceStability.Unstable public abstract String getAttributeValue()
@InterfaceAudience.Public @InterfaceStability.Unstable public abstract void setAttributeValue(String attributeValue)
@InterfaceAudience.Public @InterfaceStability.Unstable public abstract NodeAttributeType getAttributeType()
@InterfaceAudience.Public @InterfaceStability.Unstable public abstract void setAttributeType(NodeAttributeType attributeType)
Copyright © 2019 Apache Software Foundation. All rights reserved.