# Interface SmiObjectType

All Superinterfaces:
  `Comparable<SmiObject>, SmiObject, SmiValueType`

All Known Subinterfaces:
  `SmiObjectTypeIndex`

public interface SmiObjectType extends SmiObject, SmiValueType
The SmiObjectType interface extends the `SmiObject` by attributes specific to the SMI OBJECT-TYPE construct, i.e., the MAX-ACCESS clause.

Author:
  Frank Fock

- ## Method Summary

  Modifier and Type
  Method
  Description
  `org.snmp4j.smi.Variable`
  `createNewVariable()`
  Creates a new `VariableBinding` based on this object type's default value (see `getDefaultVariable()`) or if that is `null` new variable matching the object type's syntax created with its default constructor.
  `List<SmiObjectType>`
  `getColumns()`
  Gets the columnar OBJECT-TYPE definitions for this table.
  `String`
  `getDefaultValue()`
  Gets the DEFVAL clause content if present.
  `org.snmp4j.smi.Variable`
  `getDefaultVariable()`
  Returns the default value returned by `getDefaultValue()` as a `Variable` instance or `null` if there is no default value (i.e., no DEFVAL clause).
  `List<SmiObjectTypeIndex>`
  `getIndexObjects()`
  Gets the index objects for this table.
  `org.snmp4j.smi.MaxAccess`
  `getMaxAccess()`
  Gets the maximum access allowed for this MIB OBJECT-TYPE.
  `int`
  `getMaxValueLength()`
  Gets the maximum length (in characters) of a formatted value using the current variable format.
  `int`
  `getMinValueLength()`
  Gets the minimum length (in characters) of a formatted value using the current variable format.
  `String`
  `getUnits()`
  Gets the content of the UNITS clause (if present).
  `default boolean`
  `isTableEntry()`
  Return `true` if this OBJECT-TYPE is a table entry (row) OBJECT-TYPE.

  ### Methods inherited from interface Comparable

  `compareTo`

  ### Methods inherited from interface SmiObject

  `getAsn1Comments, getChildren, getDescription, getObjectName, getOID, getParent, getReference, getSmiSyntax, getStatus, getSyntax, getType`

  ### Methods inherited from interface SmiValueType

  `getSmiSyntax, getSyntax`

- ## Method Details

  - ### getMaxAccess

    org.snmp4j.smi.MaxAccess getMaxAccess()
    Gets the maximum access allowed for this MIB OBJECT-TYPE.
    Returns:
      an access enumeration value.

  - ### getColumns

    List<SmiObjectType> getColumns()
    Gets the columnar OBJECT-TYPE definitions for this table. If this object is not a table `null` is returned.
    Returns:
      `null` if this OBJECT-TYPE is not a table entry (row) OBJECT-TYPE and the OBJECT-TYPE definitions of the columnar objects of this table.

  - ### getIndexObjects

    List<SmiObjectTypeIndex> getIndexObjects()
    Gets the index objects for this table. If this object is not a table `null` is returned.
    Returns:
      `null` if this OBJECT-TYPE is not a table entry (row) OBJECT-TYPE and the OBJECT-TYPE definitions of the index objects of this table.

  - ### isTableEntry

    default boolean isTableEntry()
    Return `true` if this OBJECT-TYPE is a table entry (row) OBJECT-TYPE. This is the case if the `getIndexObjects()` method returns a non-empty list.
    Returns:
      `true` if this OBJECT-TYPE is a table entry (row) OBJECT-TYPE.
    Since:
      2.0.0

  - ### getUnits

    String getUnits()
    Gets the content of the UNITS clause (if present).
    Returns:
      the UNITS clause content or `null` if the UNITS clause is not present in this OBJECT-TYPE.

  - ### getMaxValueLength

    int getMaxValueLength()
    Gets the maximum length (in characters) of a formatted value using the current variable format.
    Returns:
      the maximum number of characters in a string value of this OBJECT TYPE.
    Since:
      1.3.1

  - ### getMinValueLength

    int getMinValueLength()
    Gets the minimum length (in characters) of a formatted value using the current variable format.
    Returns:
      the minimum number of characters in a string value of this OBJECT TYPE.
    Since:
      1.3.1

  - ### getDefaultValue

    String getDefaultValue()
    Gets the DEFVAL clause content if present. Otherwise `null` is returned.
    Returns:
      the content of the SMI OBJECT-TYPE DEFVAL clause.
    Since:
      1.3.2

  - ### getDefaultVariable

    org.snmp4j.smi.Variable getDefaultVariable()
    Returns the default value returned by `getDefaultValue()` as a `Variable` instance or `null` if there is no default value (i.e., no DEFVAL clause).
    Returns:
      the default value as variable.
    Since:
      1.3.2

  - ### createNewVariable

    org.snmp4j.smi.Variable createNewVariable()
    Creates a new `VariableBinding` based on this object type's default value (see `getDefaultVariable()`) or if that is `null` new variable matching the object type's syntax created with its default constructor.
    Returns:
      a new variable matching this object type's syntax and default value (if present).
    Since:
      1.3.2