com.ansys.ingress.client.api

## Interface ModelSpec

-     public interface ModelSpec

  ModelSpec provides information about object types defined in EKM.

- - ### Field Summary

    Fields
    Modifier and Type | Field and Description
    --- | ---
    `static java.lang.String` | `ACCESS_ACTION` ACCESS_ACTION specifies the permission for accessing an object.
    `static java.lang.String` | `ATTRIBUTE_VERSIONED_OBJECT_IDENTIFIER` ATTRIBUTE_VERSIONED_OBJECT_IDENTIFIER is the property that contains the ID of an object under version control.
    `static java.lang.String` | `CHECKED_OUT_BY_PROPERTY` CHECKED_OUT_BY_PROPERTY is the property that contains the name of the user that has an object checked out from version control.
    `static java.lang.String` | `CHECKIN_AFTER_EXTRACT` CHECKIN_AFTER_EXTRACT is the name of a property used to indicate that an uploaded file should be checked into version control once it has had metadata extracted on the server.
    `static java.lang.String` | `CHECKIN_AFTER_EXTRACT_COMMENT` CHECKIN_AFTER_EXTRACT_COMMENT is the name of a property containing a comment describing the changes made to an object when it is checked into version control.
    `static java.lang.String` | `CHECKIN_DISABLED_OPTION` CHECKIN_DISABLED_OPTION indicates an object is not under version control
    `static java.lang.String` | `CHECKIN_ENABLED_OPTION` CHECKIN_ENABLED_OPTION indicates an object is under version control
    `static java.lang.String` | `CHECKIN_POLICY_PROPERTY` CHECKIN_POLICY_PROPERTY is the property that specifies the checkin policy of an object in the repository.
    `static java.lang.String` | `CHECKOUT_ACTION` CHECKOUT_ACTION specifies the permission for checking an object out of version control.
    `static java.lang.String` | `CHECKOUT_AFTER_EXTRACT` CHECKOUT_AFTER_EXTRACT indicates an object should be checked out from version control once data extraction is complete.
    `static java.lang.String` | `CONTENT_MODIFICATION_TIME_PROPERTY` CONTENT_MODIFICATION_TIME_PROPERTY is the property containing the date and time a file's content was last modified
    `static java.lang.String` | `CONTENT_TYPE_PROPERTY` CONTENT_TYPE_PROPERTY is the property containing an object's content type.
    `static java.lang.String` | `CREATE_ACTION` CREATE_ACTION specifies the permission for creating an object in the repository.
    `static java.lang.String` | `CREATION_TIME_PROPERTY` CREATION_TIME_PROPERTY is the property the specifies the time an object was created.
    `static java.lang.String` | `CREATOR_PROPERTY` CREATOR_PROPERTY is the property that specifies the user that created an object.
    `static java.lang.String` | `DEFAULT_TYPENAME` DEFAULT_TYPENAME is the default type name for objects on the server.
    `static java.lang.String` | `DELETE_ACTION` DELETE_ACTION specifies the permission for deleting an object in the repository.
    `static java.lang.String` | `DESCRIPTION_PROPERTY` Name of the description property.
    `static java.lang.String` | `DOWNLOAD_ACTION` DOWNLOAD_ACTION is the action name for downloading a file from the server.
    `static java.lang.String` | `FILE_TYPE` Default type name for EKM file.
    `static java.lang.String` | `FOLDER_TYPE` Default type name for EKM folders.
    `static java.lang.String` | `FULL_CONTROL_ACTION` FULL_CONTROL_ACTION specifies the permission for full control on an object in the repository.
    `static java.lang.String` | `HIDDEN_CATEGORY` HIDDEN_CATEGORY is the name of the property categroy for hidden properties.
    `static java.lang.String` | `ICON_ATTRIBUTE` ICON_ATTRIBUTE is the attribue for a type's icon
    `static java.lang.String` | `LENGTH_PROPERTY` LENGTH_PROPERTY is the property containing the length of a file on the server.
    `static java.lang.String` | `LIFECYCLE_ACTION` LIFECYCLE_ACTION specifies the permission for performing a lifecycle operation on an object in the repository.
    `static java.lang.String` | `LOCKING_ENABLED_OPTION` LOCKING_ENABLED_OPTION is used to determine if locking is enabled on an object.
    `static java.lang.String` | `MODIFICATION_TIME_PROPERTY` MODIFICATION_TIME_PROPERTY is the property containing the date and time a an object on the server was last modified
    `static java.lang.String` | `MODIFIED_BY_PROPERTY` MODIFIED_BY_PROPERTY is the property containing the name of the user that last modified an object.
    `static java.lang.String` | `MODIFY_ACTION` MODIFY_ACTION specifies the permission for modifying an object in the repository.
    `static java.lang.String` | `PATH_SEPARATOR` PATH_SEPARATOR is the value used to separate path elements.
    `static java.lang.String` | `SPEC_TYPE_MIXIN` SPEC_TYPE_MIXIN indicates this type is a mixin type.
    `static java.lang.String` | `TAGS_CATEGORY` TAGS_CATEGORY is the category for user defined properties.
    `static java.lang.String` | `VERSIONING_ENABLED_OPTION` VERSIONING_ENABLED_OPTION is the property used to determine if an object has versioning enabled or not.

  - ### Method Summary

    All Methods Instance Methods Abstract Methods
    Modifier and Type | Method and Description
    --- | ---
    `java.lang.String` | `getBaseTypeName()`
    `java.lang.String` | `getLabel()`
    `java.util.Set<java.lang.String>` | `getProperties()`
    `java.util.Map<java.lang.String,com.ansys.ingress.commons.model.properties.PropertySpec>` | `getPropertySpecs()`
    `java.util.List<java.lang.String>` | `getRequiredChildren()`
    `com.ansys.ingress.commons.serializable.Searchable` | `getSearchable()`
    `java.lang.String` | `getTypeAttributeValue(java.lang.String attrName)` Gets the value of an attribute of a type.
    `java.lang.String` | `getTypeName()`
    `boolean` | `isBeta()`
    `boolean` | `isInternal()`
    `boolean` | `isMixin()`

- - ### Field Detail

    - #### DESCRIPTION_PROPERTY

          static final java.lang.String DESCRIPTION_PROPERTY

      Name of the description property.
      See Also:
        Constant Field Values

    - #### ACCESS_ACTION

          static final java.lang.String ACCESS_ACTION

      ACCESS_ACTION specifies the permission for accessing an object.
      See Also:
        Constant Field Values

    - #### CHECKOUT_ACTION

          static final java.lang.String CHECKOUT_ACTION

      CHECKOUT_ACTION specifies the permission for checking an object out of version control.
      See Also:
        Constant Field Values

    - #### CREATE_ACTION

          static final java.lang.String CREATE_ACTION

      CREATE_ACTION specifies the permission for creating an object in the repository.
      See Also:
        Constant Field Values

    - #### DELETE_ACTION

          static final java.lang.String DELETE_ACTION

      DELETE_ACTION specifies the permission for deleting an object in the repository.
      See Also:
        Constant Field Values

    - #### MODIFY_ACTION

          static final java.lang.String MODIFY_ACTION

      MODIFY_ACTION specifies the permission for modifying an object in the repository.
      See Also:
        Constant Field Values

    - #### DOWNLOAD_ACTION

          static final java.lang.String DOWNLOAD_ACTION

      DOWNLOAD_ACTION is the action name for downloading a file from the server.
      See Also:
        Constant Field Values

    - #### LIFECYCLE_ACTION

          static final java.lang.String LIFECYCLE_ACTION

      LIFECYCLE_ACTION specifies the permission for performing a lifecycle operation on an object in the repository.
      See Also:
        Constant Field Values

    - #### FULL_CONTROL_ACTION

          static final java.lang.String FULL_CONTROL_ACTION

      FULL_CONTROL_ACTION specifies the permission for full control on an object in the repository.
      See Also:
        Constant Field Values

    - #### CHECKED_OUT_BY_PROPERTY

          static final java.lang.String CHECKED_OUT_BY_PROPERTY

      CHECKED_OUT_BY_PROPERTY is the property that contains the name of the user that has an object checked out from version control.
      See Also:
        Constant Field Values

    - #### CHECKIN_POLICY_PROPERTY

          static final java.lang.String CHECKIN_POLICY_PROPERTY

      CHECKIN_POLICY_PROPERTY is the property that specifies the checkin policy of an object in the repository.
      See Also:
        Constant Field Values

    - #### LOCKING_ENABLED_OPTION

          static final java.lang.String LOCKING_ENABLED_OPTION

      LOCKING_ENABLED_OPTION is used to determine if locking is enabled on an object.
      See Also:
        Constant Field Values

    - #### ATTRIBUTE_VERSIONED_OBJECT_IDENTIFIER

          static final java.lang.String ATTRIBUTE_VERSIONED_OBJECT_IDENTIFIER

      ATTRIBUTE_VERSIONED_OBJECT_IDENTIFIER is the property that contains the ID of an object under version control.
      See Also:
        Constant Field Values

    - #### CHECKIN_AFTER_EXTRACT

          static final java.lang.String CHECKIN_AFTER_EXTRACT

      CHECKIN_AFTER_EXTRACT is the name of a property used to indicate that an uploaded file should be checked into version control once it has had metadata extracted on the server.
      See Also:
        Constant Field Values

    - #### CHECKIN_AFTER_EXTRACT_COMMENT

          static final java.lang.String CHECKIN_AFTER_EXTRACT_COMMENT

      CHECKIN_AFTER_EXTRACT_COMMENT is the name of a property containing a comment describing the changes made to an object when it is checked into version control.
      See Also:
        Constant Field Values

    - #### CHECKIN_DISABLED_OPTION

          static final java.lang.String CHECKIN_DISABLED_OPTION

      CHECKIN_DISABLED_OPTION indicates an object is not under version control
      See Also:
        Constant Field Values

    - #### CHECKIN_ENABLED_OPTION

          static final java.lang.String CHECKIN_ENABLED_OPTION

      CHECKIN_ENABLED_OPTION indicates an object is under version control
      See Also:
        Constant Field Values

    - #### CHECKOUT_AFTER_EXTRACT

          static final java.lang.String CHECKOUT_AFTER_EXTRACT

      CHECKOUT_AFTER_EXTRACT indicates an object should be checked out from version control once data extraction is complete.
      See Also:
        Constant Field Values

    - #### CONTENT_MODIFICATION_TIME_PROPERTY

          static final java.lang.String CONTENT_MODIFICATION_TIME_PROPERTY

      CONTENT_MODIFICATION_TIME_PROPERTY is the property containing the date and time a file's content was last modified
      See Also:
        Constant Field Values

    - #### LENGTH_PROPERTY

          static final java.lang.String LENGTH_PROPERTY

      LENGTH_PROPERTY is the property containing the length of a file on the server.
      See Also:
        Constant Field Values

    - #### MODIFICATION_TIME_PROPERTY

          static final java.lang.String MODIFICATION_TIME_PROPERTY

      MODIFICATION_TIME_PROPERTY is the property containing the date and time a an object on the server was last modified
      See Also:
        Constant Field Values

    - #### MODIFIED_BY_PROPERTY

          static final java.lang.String MODIFIED_BY_PROPERTY

      MODIFIED_BY_PROPERTY is the property containing the name of the user that last modified an object.
      See Also:
        Constant Field Values

    - #### DEFAULT_TYPENAME

          static final java.lang.String DEFAULT_TYPENAME

      DEFAULT_TYPENAME is the default type name for objects on the server.
      See Also:
        Constant Field Values

    - #### TAGS_CATEGORY

          static final java.lang.String TAGS_CATEGORY

      TAGS_CATEGORY is the category for user defined properties.
      See Also:
        Constant Field Values

    - #### CREATION_TIME_PROPERTY

          static final java.lang.String CREATION_TIME_PROPERTY

      CREATION_TIME_PROPERTY is the property the specifies the time an object was created.
      See Also:
        Constant Field Values

    - #### CREATOR_PROPERTY

          static final java.lang.String CREATOR_PROPERTY

      CREATOR_PROPERTY is the property that specifies the user that created an object.
      See Also:
        Constant Field Values

    - #### SPEC_TYPE_MIXIN

          static final java.lang.String SPEC_TYPE_MIXIN

      SPEC_TYPE_MIXIN indicates this type is a mixin type.
      See Also:
        Constant Field Values

    - #### PATH_SEPARATOR

          static final java.lang.String PATH_SEPARATOR

      PATH_SEPARATOR is the value used to separate path elements.
      See Also:
        Constant Field Values

    - #### HIDDEN_CATEGORY

          static final java.lang.String HIDDEN_CATEGORY

      HIDDEN_CATEGORY is the name of the property categroy for hidden properties.
      See Also:
        Constant Field Values

    - #### ICON_ATTRIBUTE

          static final java.lang.String ICON_ATTRIBUTE

      ICON_ATTRIBUTE is the attribue for a type's icon
      See Also:
        Constant Field Values

    - #### CONTENT_TYPE_PROPERTY

          static final java.lang.String CONTENT_TYPE_PROPERTY

      CONTENT_TYPE_PROPERTY is the property containing an object's content type.
      See Also:
        Constant Field Values

    - #### VERSIONING_ENABLED_OPTION

          static final java.lang.String VERSIONING_ENABLED_OPTION

      VERSIONING_ENABLED_OPTION is the property used to determine if an object has versioning enabled or not.
      See Also:
        Constant Field Values

    - #### FOLDER_TYPE

          static final java.lang.String FOLDER_TYPE

      Default type name for EKM folders.
      See Also:
        Constant Field Values

    - #### FILE_TYPE

          static final java.lang.String FILE_TYPE

      Default type name for EKM file.
      See Also:
        Constant Field Values

  - ### Method Detail

    - #### getBaseTypeName

          java.lang.String getBaseTypeName()

      Returns:
        Returns the base type of this spec.

    - #### getLabel

          java.lang.String getLabel()

      Returns:
        Returns a localized label for this type.

    - #### getTypeAttributeValue

          java.lang.String getTypeAttributeValue(java.lang.String attrName)
                                          throws DataException

      Gets the value of an attribute of a type.
      Parameters:
        `attrName` -
      Returns:
        Returns the value.
      Throws:
        `DataException` - if the value could not be retrieved.

    - #### getTypeName

          java.lang.String getTypeName()

      Returns:
        Returns the internal type name for this type.

    - #### getProperties

          java.util.Set<java.lang.String> getProperties()

      Returns:
        Returns the property names defined for this type.

    - #### getPropertySpecs

          java.util.Map<java.lang.String,com.ansys.ingress.commons.model.properties.PropertySpec> getPropertySpecs()

      Returns:
        Returns the property specs for this type.

    - #### getRequiredChildren

          java.util.List<java.lang.String> getRequiredChildren()

      Returns:
        Returns the names of children that are required for an object of this type.

    - #### getSearchable

          com.ansys.ingress.commons.serializable.Searchable getSearchable()

      Returns:
        Returns the enum for who can search this type.

    - #### isBeta

          boolean isBeta()

      Returns:
        Returns true if this type is a beta type.

    - #### isMixin

          boolean isMixin()

      Returns:
        Returns true if this is a mixin type.

    - #### isInternal

          boolean isInternal()

      Returns:
        Returns true if this is an internal type.