Package com.sas.lsaf.content.repository

## Class RepositoryItem

- java.lang.Object
- - com.sas.lsaf.core.AbstractIdentifiable
  - - com.sas.lsaf.content.repository.RepositoryItem

- All Implemented Interfaces:
    `Identifiable`, `java.io.Serializable`
  Direct Known Subclasses:
    `RepositoryContainer`, `RepositoryFile`

      public abstract class RepositoryItem
      extends AbstractIdentifiable

  The abstract base class for all repository items.
  Since:
    2.1
  See Also:
    Serialized Form

- - ### Nested Class Summary

    Nested Classes
    Modifier and Type | Class | Description
    --- | --- | ---
    `static class` | `RepositoryItem.State` |
    `static class` | `RepositoryItem.Syncable` | Syncable enumeration that controls the workspace synchronization behavior for a specific repository item.

  - ### Constructor Summary

    Constructors
    Constructor | Description
    --- | ---
    `RepositoryItem​(java.lang.String typeId, java.lang.String id, java.lang.String name, java.lang.String path, long revision, RepositoryItem.State state, java.lang.String createdBy, java.util.Date created, java.lang.String lastModifiedBy, java.util.Date lastModified, java.lang.String propertiesLastModifiedBy, java.util.Date propertiesLastModified, java.lang.String description, RepositoryItem.Syncable syncable, java.util.List<Attribute> attributes)` | It is not intended or recommended that the consumer of the API construct these objects.

  - ### Method Summary

    All Methods Instance Methods Concrete Methods
    Modifier and Type | Method | Description
    --- | --- | ---
    `boolean` | `equals​(java.lang.Object obj)` |
    `java.util.List<Attribute>` | `getAttributes()` | Gets the extended attributes that are defined on the repository item, if they exist.
    `java.util.Date` | `getCreated()` | Gets the date on which the repository item was created.
    `java.lang.String` | `getCreatedBy()` | Gets the user who created the repository item.
    `java.lang.String` | `getDescription()` | Gets the description of the item.
    `java.util.Date` | `getLastModified()` | Gets the date on which the repository item's content was last modified.
    `java.lang.String` | `getLastModifiedBy()` | Gets the user who last modified the repository item's content.
    `java.lang.String` | `getName()` | Gets the name of the item.
    `java.lang.String` | `getPath()` | Gets the full path to the item in the repository, which includes the name.
    `java.util.Date` | `getPropertiesLastModified()` | Gets the date on which the repository item's properties were last modified.
    `java.lang.String` | `getPropertiesLastModifiedBy()` | Gets the user who last modified the repository item's properties.
    `long` | `getRevision()` | Gets the internally managed revision number of the repository item.
    `RepositoryItem.State` | `getState()` | Gets the current state of the repository item.
    `RepositoryItem.Syncable` | `getSyncable()` | Indicates whether the item can be copied to the user's workspace.
    `int` | `hashCode()` |
    `void` | `setAttributes​(java.util.List<Attribute> attributes)` | Sets the extended attributes to define on the repository item, if they exist.
    `void` | `setDescription​(java.lang.String description)` | Sets the description of the item.
    `void` | `setSyncable​(RepositoryItem.Syncable syncable)` | Sets whether the item can be copied to the user's workspace.
    `java.lang.String` | `toString()` |

    - ### Methods inherited from class com.sas.lsaf.core.AbstractIdentifiable

      `getId, getTypeId`

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

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

- - ### Constructor Detail

    - #### RepositoryItem

          public RepositoryItem​(java.lang.String typeId,
                                java.lang.String id,
                                java.lang.String name,
                                java.lang.String path,
                                long revision,
                                RepositoryItem.State state,
                                java.lang.String createdBy,
                                java.util.Date created,
                                java.lang.String lastModifiedBy,
                                java.util.Date lastModified,
                                java.lang.String propertiesLastModifiedBy,
                                java.util.Date propertiesLastModified,
                                java.lang.String description,
                                RepositoryItem.Syncable syncable,
                                java.util.List<Attribute> attributes)

      It is not intended or recommended that the consumer of the API construct these objects. They should only deal with the repository item objects returned by the API.
      Parameters:
        `typeId` - The object type identifier of the repository item.
        `id` - The unique identifier of the repository item.
        `name` - The name of the item.
        `path` - The full path to the item in the repository, which includes the name.
        `revision` - The internally managed revision number of the repository item.
        `state` - The current state of the repository item.
        `createdBy` - The user who created the repository item.
        `created` - The date on which the repository item was created.
        `lastModifiedBy` - The user who last modified the repository item's content.
        `lastModified` - The date on which the repository item's content was last modified.
        `propertiesLastModifiedBy` - The user who last modified the repository item's properties.
        `propertiesLastModified` - The date on which the repository item's properties were last modified.
        `description` - The description of the item.
        `syncable` - Indicates whether the item can be copied to the user's workspace.
        `attributes` - The extended attributes that are defined on the repository item, if they exist.

  - ### Method Detail

    - #### getName

          public java.lang.String getName()

      Gets the name of the item.
      Returns:
        The name of the item.

    - #### getPath

          public java.lang.String getPath()

      Gets the full path to the item in the repository, which includes the name.
      Returns:
        The full path to the item in the repository, which includes the name.

    - #### getRevision

          public long getRevision()

      Gets the internally managed revision number of the repository item.
      Returns:
        The internally managed revision number of the repository item.

    - #### getState

          public RepositoryItem.State getState()

      Gets the current state of the repository item.
      Returns:
        The current state of the repository item.

    - #### getCreatedBy

          public java.lang.String getCreatedBy()

      Gets the user who created the repository item.
      Returns:
        The user who created the repository item.

    - #### getCreated

          public java.util.Date getCreated()

      Gets the date on which the repository item was created.
      Returns:
        The date on which the repository item was created.

    - #### getLastModifiedBy

          public java.lang.String getLastModifiedBy()

      Gets the user who last modified the repository item's content.
      Returns:
        The user who last modified the repository item's content.

    - #### getLastModified

          public java.util.Date getLastModified()

      Gets the date on which the repository item's content was last modified.
      Returns:
        The date on which the repository item's content was last modified.

    - #### getPropertiesLastModifiedBy

          public java.lang.String getPropertiesLastModifiedBy()

      Gets the user who last modified the repository item's properties.
      Returns:
        The user who last modified the repository item's properties.

    - #### getPropertiesLastModified

          public java.util.Date getPropertiesLastModified()

      Gets the date on which the repository item's properties were last modified.
      Returns:
        The date on which the repository item's properties were last modified.

    - #### getDescription

          public java.lang.String getDescription()

      Gets the description of the item.
      Returns:
        The description of the item.

    - #### setDescription

          public void setDescription​(java.lang.String description)

      Sets the description of the item.
      Parameters:
        `description` - the description of the item.

    - #### getSyncable

          public RepositoryItem.Syncable getSyncable()

      Indicates whether the item can be copied to the user's workspace.
      Returns:
        Indicates whether the item can be copied to the user's workspace.

    - #### setSyncable

          public void setSyncable​(RepositoryItem.Syncable syncable)

      Sets whether the item can be copied to the user's workspace.
      Parameters:
        `syncable` - Indicates whether the item can be copied to the user's workspace.

    - #### getAttributes

          public java.util.List<Attribute> getAttributes()

      Gets the extended attributes that are defined on the repository item, if they exist.
      Returns:
        The extended attributes that are defined on the repository item, if they exist.

    - #### setAttributes

          public void setAttributes​(java.util.List<Attribute> attributes)

      Sets the extended attributes to define on the repository item, if they exist.
      Parameters:
        `attributes` - The extended attributes to define on the repository item, if they exist.

    - #### hashCode

          public int hashCode()

      Overrides:
        `hashCode` in class `AbstractIdentifiable`

    - #### equals

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

      Overrides:
        `equals` in class `AbstractIdentifiable`

    - #### toString

          public java.lang.String toString()

      Overrides:
        `toString` in class `AbstractIdentifiable`