com.cisco.provisioning.cpe.extensions.constants
Enum CNROptions

java.lang.Object
  extended by java.lang.Enum<CNROptions>
      extended by com.cisco.provisioning.cpe.extensions.constants.CNROptions
All Implemented Interfaces:
Serializable, Comparable<CNROptions>

public enum CNROptions
extends Enum<CNROptions>

This enum contains predefined CNROptionArgumentArray instances for IANA and CableLabs DHCP options. The CNROptionArgumentArray class is the Java equivalent of the CNR DEX APIv2 DEX_ARG_ARRAY argument type, which provides for fully qualified DHCP sub-option references. These references to specific sub-options are convenient for referencing vendor-specific sub-options that are common to the CableLabs DOCSIS 3.0 provisioning flow.

See Also:
CNROptionArgumentArray, CNROptionArgumentType

Enum Constant Summary
V4_CL_SOFTWARE_VERSION_NUMBER
          Identifies the DHCPv4 Cablelabs Software Version Option.
V4_CL_TFTP_SERVERS
          Identifies the DHCPv4 Cablelabs TFTP Servers Option.
V6_CL_CCC_PRIMARY_DHCP_SERVER
          Identifies the DHCPv6 Cablelabs Client Configuration PacketCable sub-option for the TSP's Primary DHCPv4 Server Address.
V6_CL_CCC_SECONDARY_DHCP_SERVER
          Identifies the DHCPv6 Cablelabs Client Configuration PacketCable sub-option for the TSP's Secondary DHCPv4 Server Address.
V6_CL_CM_MAC
          Identifies the DHCPv6 CableLabs DOCSIS Relay Agent CM MAC Address Option.
V6_CL_SOFTWARE_VERSION_NUMBER
          Identifies the DHCPv6 Cablelabs Software Version Option.
V6_CL_TFTP_CONFIG_FILENAME
          Identifies the DHCPv6 Cablelabs Configuration File Name Option.
V6_CL_TFTP_SERVERS
          Identifies the DHCPv6 Cablelabs TFTP Servers Option.
V6_CL_TIME_SERVERS
          Identifies the DHCPv6 Cablelabs Time Servers Option.
V6_CL_VENDOR_CLASS
          Identifies the DHCPv6 CableLabs Vendor Class Option.
V6_IANA_IA_NA
          Identifies the DHCPv6 Identity Association for Non-temporary Addresses Option.
 
Method Summary
 CNROptionArgumentArray getCNROptionArgumentArray()
          Returns the CNROptionArgumentArray for this CNROptions.
static CNROptions getInstance(CNROptionArgumentArray id)
          Returns the CNROptions object with the given CNROptionArgumentArray (or null if it does not exist).
static CNROptions valueOf(String name)
          Returns the enum constant of this type with the specified name.
static CNROptions[] values()
          Returns an array containing the constants of this enum type, in the order they are declared.
 String valueToString(byte[] bytes)
          Returns the string representation of the given byte[] value for the given identifier.
 String valueToString(byte[][] bytes)
          Returns the string representation of the given byte[][] value for the given identifier.
 
Methods inherited from class java.lang.Enum
compareTo, equals, getDeclaringClass, hashCode, name, ordinal, toString, valueOf
 
Methods inherited from class java.lang.Object
getClass, notify, notifyAll, wait, wait, wait
 

Enum Constant Detail

V4_CL_TFTP_SERVERS

public static final CNROptions V4_CL_TFTP_SERVERS
Identifies the DHCPv4 Cablelabs TFTP Servers Option. This option carries a list of IPv4 addresses of TFTP servers to be used by the CM.

The CNROptionArgumentArray value is {OPTION_NUMBER=125, ENTERPRISE_ID=4491, SUBOPTION_NUMBER=2, INDEX=RAW, END}. The CnrAttributeValueType is IP_ADDRESS_V4_LIST.


V4_CL_SOFTWARE_VERSION_NUMBER

public static final CNROptions V4_CL_SOFTWARE_VERSION_NUMBER
Identifies the DHCPv4 Cablelabs Software Version Option. Identical to the software version value as reported in the MIB object sysDescr.

The CNROptionArgumentArray value is {OPTION_NUMBER=43, SUBOPTION_NUMBER=6, INDEX=RAW, END}. The CnrAttributeValueType is ASCII_STRING.


V6_CL_SOFTWARE_VERSION_NUMBER

public static final CNROptions V6_CL_SOFTWARE_VERSION_NUMBER
Identifies the DHCPv6 Cablelabs Software Version Option. Identical to the software version value as reported in the MIB object sysDescr.

The CNROptionArgumentArray value is {OPTION_NUMBER=17, ENTERPRISE_ID=4491, SUBOPTION_NUMBER=6, INDEX=RAW, END}. The CnrAttributeValueType is ASCII_STRING.


V6_CL_TIME_SERVERS

public static final CNROptions V6_CL_TIME_SERVERS
Identifies the DHCPv6 Cablelabs Time Servers Option. This option defines a list of Time Protocol servers available to the DHCPv6 client [RFC 868].

The CNROptionArgumentArray value is {OPTION_NUMBER=17, ENTERPRISE_ID=4491, SUBOPTION_NUMBER=37, INDEX=RAW, END}. The CnrAttributeValueType is IP_ADDRESS_V6_LIST.


V6_CL_CM_MAC

public static final CNROptions V6_CL_CM_MAC
Identifies the DHCPv6 CableLabs DOCSIS Relay Agent CM MAC Address Option. This option carries the MAC address of the CM through which a DHCPv6 message was received. If the DHCPv6 message was sent by the CM, this option will carry the MAC address of the CM.

The CNROptionArgumentArray value is {OPTION_NUMBER=17, ENTERPRISE_ID=4491, SUBOPTION_NUMBER=1026, INDEX=RAW, END}. The CnrAttributeValueType is BLOB.


V6_CL_TFTP_CONFIG_FILENAME

public static final CNROptions V6_CL_TFTP_CONFIG_FILENAME
Identifies the DHCPv6 Cablelabs Configuration File Name Option. This option contains the name of the configuration file for the client.

The CNROptionArgumentArray value is {OPTION_NUMBER=17, ENTERPRISE_ID=4491, SUBOPTION_NUMBER=33, END} The CnrAttributeValueType is ASCII_STRING.


V6_CL_TFTP_SERVERS

public static final CNROptions V6_CL_TFTP_SERVERS
Identifies the DHCPv6 Cablelabs TFTP Servers Option. This option contains the IPv6 addresses of the TFTP servers from which the client obtains its configuration file.

The CNROptionArgumentArray value is {OPTION_NUMBER=17, ENTERPRISE_ID=4491, SUBOPTION_NUMBER=32, INDEX=RAW, END}. The CnrAttributeValueType is IP_ADDRESS_V6_LIST.


V6_CL_VENDOR_CLASS

public static final CNROptions V6_CL_VENDOR_CLASS
Identifies the DHCPv6 CableLabs Vendor Class Option. The first instance of vendor-class-data contains an ASCII string representing the CableLabs technology and version.

The CNROptionArgumentArray value is {OPTION_NUMBER=16, ENTERPRISE_ID=4491, INDEX=0, END}. The CnrAttributeValueType is ASCII_STRING.


V6_IANA_IA_NA

public static final CNROptions V6_IANA_IA_NA
Identifies the DHCPv6 Identity Association for Non-temporary Addresses Option. The IA_NA option is used to carry an IA_NA, the parameters associated with the IA_NA, and the non-temporary addresses associated with the IA_NA.

The BAC built-in RDU configuration generation extension uses this CNROptionArgumentArray with the DHCPOper.UPDATE_IPV6_ADDRESS and DHCPOper.DROP_IF_MAX_IA_ADDRESSES_EXCEEDED operations.

The CNROptionArgumentArray value is {OPTION_NUMBER=3, END}. The CnrAttributeValueType is BLOB.


V6_CL_CCC_PRIMARY_DHCP_SERVER

public static final CNROptions V6_CL_CCC_PRIMARY_DHCP_SERVER
Identifies the DHCPv6 Cablelabs Client Configuration PacketCable sub-option for the TSP's Primary DHCPv4 Server Address.

The CNROptionArgumentArray value is {OPTION_NUMBER=17, ENTERPRISE_ID=4491, SUBOPTION_NUMBER=2170, SUBOPTION_NUMBER=1, INDEX=RAW, END}. The CnrAttributeValueType is IP_ADDRESS.


V6_CL_CCC_SECONDARY_DHCP_SERVER

public static final CNROptions V6_CL_CCC_SECONDARY_DHCP_SERVER
Identifies the DHCPv6 Cablelabs Client Configuration PacketCable sub-option for the TSP's Secondary DHCPv4 Server Address.

The CNROptionArgumentArray value is {OPTION_NUMBER=17, ENTERPRISE_ID=4491, SUBOPTION_NUMBER=2170, SUBOPTION_NUMBER=2, INDEX=RAW, END}. The CnrAttributeValueType is IP_ADDRESS.

Method Detail

values

public static CNROptions[] 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 (CNROptions c : CNROptions.values())
    System.out.println(c);

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

valueOf

public static CNROptions 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

getInstance

public static CNROptions getInstance(CNROptionArgumentArray id)
Returns the CNROptions object with the given CNROptionArgumentArray (or null if it does not exist).

Parameters:
id - the CNROptionArgumentArray associated with the desired instance of CNROptions.
Returns:
the CNROptions object with the given CNROptionArgumentArray (or null if it does not exist).

getCNROptionArgumentArray

public CNROptionArgumentArray getCNROptionArgumentArray()
Returns the CNROptionArgumentArray for this CNROptions.

Returns:
the CNROptionArgumentArray for this CNROptions.

valueToString

public String valueToString(byte[] bytes)
Returns the string representation of the given byte[] value for the given identifier.

Parameters:
bytes - the byte[] value
Returns:
the string representation of the given byte[] value.

valueToString

public String valueToString(byte[][] bytes)
Returns the string representation of the given byte[][] value for the given identifier.

Parameters:
bytes - the byte[][] value
Returns:
the string representation of the given byte[][] value.