net.percederberg.mibble.snmp
Class SnmpObjectType

java.lang.Object
  extended bynet.percederberg.mibble.MibType
      extended bynet.percederberg.mibble.snmp.SnmpObjectType

public class SnmpObjectType
extends MibType

The SNMP object type macro type. This macro type was present in SNMPv1, but was somewhat extended in SNMPv2. It is defined in the RFC:s 1155, 1212 and 2578.

Since:
2.0
See Also:
RFC 1155 (RFC1155-SMI), RFC 1212 (RFC-1212), RFC 2578 (SNMPv2-SMI)

Constructor Summary
SnmpObjectType(MibType syntax, java.lang.String units, SnmpAccess access, SnmpStatus status, java.lang.String description, java.lang.String reference, java.util.ArrayList index, MibValue defaultValue)
          Creates a new SNMP object type.
SnmpObjectType(MibType syntax, java.lang.String units, SnmpAccess access, SnmpStatus status, java.lang.String description, java.lang.String reference, MibValue augments, MibValue defaultValue)
          Creates a new SNMP object type.
 
Method Summary
 SnmpAccess getAccess()
          Returns the access mode.
 MibValue getAugments()
          Returns the augmented index value.
 MibValue getDefaultValue()
          Returns the default value.
 java.lang.String getDescription()
          Returns the type description.
 java.util.ArrayList getIndex()
          Returns the list of index values or types.
 java.lang.String getReference()
          Returns the type reference.
 SnmpStatus getStatus()
          Returns the type status.
 MibType getSyntax()
          Returns the type syntax.
 java.lang.String getUnits()
          Returns the units description.
 MibType initialize(MibSymbol symbol, MibLoaderLog log)
          Initializes the MIB type.
 boolean isCompatible(MibValue value)
          Checks if the specified value is compatible with this type.
 java.lang.String toString()
          Returns a string representation of this object.
 
Methods inherited from class net.percederberg.mibble.MibType
createReference, createReference, createReference, getName, getReferenceSymbol, getTag, hasReferenceTo, hasReferenceTo, hasTag, hasTag, isPrimitive, setReferenceSymbol, setTag
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 

Constructor Detail

SnmpObjectType

public SnmpObjectType(MibType syntax,
                      java.lang.String units,
                      SnmpAccess access,
                      SnmpStatus status,
                      java.lang.String description,
                      java.lang.String reference,
                      java.util.ArrayList index,
                      MibValue defaultValue)
Creates a new SNMP object type.

Parameters:
syntax - the object type syntax
units - the units description, or null
access - the access mode
status - the type status
description - the type description, or null
reference - the type reference, or null
index - the list of index values or types
defaultValue - the default value, or null

SnmpObjectType

public SnmpObjectType(MibType syntax,
                      java.lang.String units,
                      SnmpAccess access,
                      SnmpStatus status,
                      java.lang.String description,
                      java.lang.String reference,
                      MibValue augments,
                      MibValue defaultValue)
Creates a new SNMP object type.

Parameters:
syntax - the object type syntax
units - the units description, or null
access - the access mode
status - the type status
description - the type description, or null
reference - the type reference, or null
augments - the index augments value
defaultValue - the default value, or null
Method Detail

initialize

public MibType initialize(MibSymbol symbol,
                          MibLoaderLog log)
                   throws MibException
Initializes the MIB type. This will remove all levels of indirection present, such as references to types or values. No information is lost by this operation. This method may modify this object as a side-effect, and will return the basic type.

NOTE: This is an internal method that should only be called by the MIB loader.

Specified by:
initialize in class MibType
Parameters:
symbol - the MIB symbol containing this type
log - the MIB loader log
Returns:
the basic MIB type
Throws:
MibException - if an error was encountered during the initialization
Since:
2.2

isCompatible

public boolean isCompatible(MibValue value)
Checks if the specified value is compatible with this type. A value is compatible if and only if it is an object identifier value.

Specified by:
isCompatible in class MibType
Parameters:
value - the value to check
Returns:
true if the value is compatible, or false otherwise

getSyntax

public MibType getSyntax()
Returns the type syntax.

Returns:
the type syntax

getUnits

public java.lang.String getUnits()
Returns the units description.

Returns:
the units description, or null if no units has been set

getAccess

public SnmpAccess getAccess()
Returns the access mode.

Returns:
the access mode

getStatus

public SnmpStatus getStatus()
Returns the type status.

Returns:
the type status

getDescription

public java.lang.String getDescription()
Returns the type description.

Returns:
the type description, or null if no description has been set

getReference

public java.lang.String getReference()
Returns the type reference.

Returns:
the type reference, or null if no reference has been set

getIndex

public java.util.ArrayList getIndex()
Returns the list of index values or types. The returned list will consist of MibValue and MibType instances.

Returns:
the list of index values or types
See Also:
MibValue, MibType

getAugments

public MibValue getAugments()
Returns the augmented index value.

Returns:
the augmented index value, or null if no augments index is used

getDefaultValue

public MibValue getDefaultValue()
Returns the default value.

Returns:
the default value, or null if no default value has been set

toString

public java.lang.String toString()
Returns a string representation of this object.

Overrides:
toString in class MibType
Returns:
a string representation of this object