Package com.sas.lsaf.core

## Class AbstractIdentifiable

- java.lang.Object
- - com.sas.lsaf.core.AbstractIdentifiable

- All Implemented Interfaces:
    `Identifiable`, `java.io.Serializable`
  Direct Known Subclasses:
    `AbstractRevisionable`, `AclMembers`, `AclOwner`, `AnalysisDataset`, `AnalysisResult`, `AttributeDefinition`, `AttributeValue`, `AuditEntry`, `CompletedElement`, `DictionaryDescriptor`, `Element`, `ExternalDictionary`, `GlobalPrivilege`, `GroupDescriptor`, `MembershipDescriptor`, `ModelDescriptor`, `ObjectIdentity`, `ProcessDefinitionInfo`, `ProcessFlowDescriptor`, `RepositoryItem`, `RoleDescriptor`, `ScheduleDescriptor`, `ScopedPrivilege`, `SectionDescriptor`, `Session`, `SharedWorkspaceEntry`, `StandardDescriptor`, `Study`, `TlfDescriptor`, `TypeDescriptor`, `UserDescriptor`

      public abstract class AbstractIdentifiable
      extends java.lang.Object
      implements Identifiable

  An abstract parent class for objects implementing the `Identifiable` interface.
  Since:
    1.1
  See Also:
    Serialized Form

- - ### Constructor Summary

    Constructors
    Constructor | Description
    --- | ---
    `AbstractIdentifiable​(java.lang.String typeId, java.lang.String id)` | Constructor.

  - ### Method Summary

    All Methods Instance Methods Concrete Methods
    Modifier and Type | Method | Description
    --- | --- | ---
    `boolean` | `equals​(java.lang.Object obj)` |
    `java.lang.String` | `getId()` | Returns the unique identifier for this object instance.
    `java.lang.String` | `getTypeId()` | Returns the identifying type for this object.
    `int` | `hashCode()` |
    `java.lang.String` | `toString()` |

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

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

- - ### Constructor Detail

    - #### AbstractIdentifiable

          public AbstractIdentifiable​(java.lang.String typeId,
                                      java.lang.String id)

      Constructor.
      Parameters:
        `typeId` - the object type of the object, typically set by implementing classes.
        `id` - the unique identifier for the object instance.

  - ### Method Detail

    - #### getId

          public java.lang.String getId()

      Description copied from interface: `Identifiable`
      Returns the unique identifier for this object instance. In most cases, this value will be `UUID.randomUUID()` but it is up to specific implementations to decide.
      Specified by:
        `getId` in interface `Identifiable`
      Returns:
        the unique identifier for this object instance.

    - #### getTypeId

          public java.lang.String getTypeId()

      Description copied from interface: `Identifiable`
      Returns the identifying type for this object. This type identifier may be defined in the `TypeService` but that is not a requirement. The type should be sufficiently unique within the system that implementers can identify their own object instances and provide lookup routines when necessary.
      Specified by:
        `getTypeId` in interface `Identifiable`
      Returns:
        the identifying type for this object.

    - #### hashCode

          public int hashCode()

      Overrides:
        `hashCode` in class `java.lang.Object`

    - #### equals

          public boolean equals​(java.lang.Object obj)

      Overrides:
        `equals` in class `java.lang.Object`

    - #### toString

          public java.lang.String toString()

      Overrides:
        `toString` in class `java.lang.Object`