net.percederberg.mibble.value

## Class ValueReference

- java.lang.Object
- - net.percederberg.mibble.MibValue
  - - net.percederberg.mibble.value.ValueReference

- All Implemented Interfaces:
    java.lang.Comparable<java.lang.Object>

      public class ValueReference
      extends MibValue

  A reference to a value symbol.

  NOTE: This class is used internally during the MIB parsing only. After loading a MIB file successfully, all value references will have been resolved to other MIB values. Do NOT use or reference this class.

  Since:
    2.0

- - ### Constructor Summary

    Constructors
    Constructor and Description
    `ValueReference(MibFileRef fileRef, MibContext context, java.lang.String name)` Creates a new value reference.

  - ### Method Summary

    Methods
    Modifier and Type | Method and Description
    --- | ---
    `int` | `compareTo(java.lang.Object obj)` Compares this object with the specified object for order.
    `boolean` | `equals(java.lang.Object obj)` Checks if this object equals another object.
    `MibFileRef` | `getFileRef()` Returns the reference MIB file location.
    `MibSymbol` | `getSymbol()` Returns the referenced symbol.
    `int` | `hashCode()` Returns a hash code for this object.
    `MibValue` | `initialize(MibLoaderLog log, MibType type)` Initializes the MIB value.
    `java.lang.Object` | `toObject()` Returns a Java object representation of this value.
    `java.lang.String` | `toString()` Returns a string representation of this value.

    - ### Methods inherited from class net.percederberg.mibble.MibValue

      `clear, createReference, getName, getReferenceSymbol, isReferenceTo, isReferenceTo, setReferenceSymbol`

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

      `clone, finalize, getClass, notify, notifyAll, wait, wait, wait`

- - ### Constructor Detail

    - #### ValueReference

          public ValueReference(MibFileRef fileRef,
                        MibContext context,
                        java.lang.String name)

      Creates a new value reference.
      Parameters:
        `fileRef` - the reference MIB file location
        `context` - the reference context
        `name` - the reference name

  - ### Method Detail

    - #### initialize

          public MibValue initialize(MibLoaderLog log,
                            MibType type)
                              throws MibException

      Initializes the MIB value. This will remove all levels of indirection present, such as references to other values. No value information is lost by this operation. This method may modify this object as a side-effect, and will return the basic value.

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

      Specified by:
        `initialize` in class `MibValue`
      Parameters:
        `log` - the MIB loader log
        `type` - the value type
      Returns:
        the basic MIB value
      Throws:
        `MibException` - if an error was encountered during the initialization

    - #### getFileRef

          public MibFileRef getFileRef()

      Returns the reference MIB file location.
      Returns:
        the reference MIB file location

    - #### getSymbol

          public MibSymbol getSymbol()

      Returns the referenced symbol.
      Returns:
        the referenced symbol

    - #### compareTo

          public int compareTo(java.lang.Object obj)

      Compares this object with the specified object for order. This method will only compare the string representations with each other.
      Parameters:
        `obj` - the object to compare to
      Returns:
        less than zero if this object is less than the specified, zero if the objects are equal, or greater than zero otherwise
      Since:
        2.6

    - #### equals

          public boolean equals(java.lang.Object obj)

      Checks if this object equals another object. This method will compare the string representations for equality.
      Overrides:
        `equals` in class `java.lang.Object`
      Parameters:
        `obj` - the object to compare with
      Returns:
        true if the objects are equal, or false otherwise
      Since:
        2.6

    - #### hashCode

          public int hashCode()

      Returns a hash code for this object.
      Overrides:
        `hashCode` in class `java.lang.Object`
      Returns:
        a hash code for this object
      Since:
        2.6

    - #### toObject

          public java.lang.Object toObject()

      Returns a Java object representation of this value. This method will always return null.
      Specified by:
        `toObject` in class `MibValue`
      Returns:
        a Java object representation of this value

    - #### toString

          public java.lang.String toString()

      Returns a string representation of this value.
      Overrides:
        `toString` in class `java.lang.Object`
      Returns:
        a string representation of this value