Package com.documentum.fc.client

# Interface IDfPolicy

All Superinterfaces:
  `IDfPersistentObject`, `IDfSysObject`, `IDfTypedObject`

public interface IDfPolicy extends IDfSysObject
Interface for lifecycles.

- ## Field Summary

  ### Fields inherited from interface com.documentum.fc.client.IDfPersistentObject

  `CURRENCY_CHECK_ALWAYS, CURRENCY_CHECK_FIRST_ACCESS, CURRENCY_CHECK_NEVER, CURRENCY_CHECK_ONCE_PER_SCOPE`

- ## Method Summary

  Modifier and Type
  Method
  Description
  `int`
  `appendState()`
  Append a new state to this lifecycle.
  `IDfId`
  `getActionObjectId(int index)`
  Return the attribute action_object_id value at the specified index.
  `int`
  `getActionObjectIdCount()`
  Return the number of attribute action_object_id values for this policy.
  `IDfId`
  `getAliasSetIds(int index)`
  Return the alias_set_ids value at the specified index.
  `int`
  `getAliasSetIdsCount()`
  Return the number of attribute allias_set_ids values for this policy.
  `IDfList`
  `getAllIncludedTypes()`
  Retun an IDfList that includes the complete list of types for objects that can be attached to this policy.
  `boolean`
  `getAllowAttach(int index)`
  Return the attribute allow_attach value at the specified index.
  `int`
  `getAllowAttachCount()`
  Return the number of attribute allow_attach values for this policy.
  `boolean`
  `getAllowDemote(int index)`
  Return the attribute allow_demote value at the specified index.
  `int`
  `getAllowDemoteCount()`
  Return the number of attribute allow_demote values for this policy.
  `boolean`
  `getAllowSchedule(int index)`
  Return the attribute allow_schedule value at the specified index.
  `int`
  `getAllowScheduleCount()`
  Return the number of attribute allow_schedule values for this policy.
  `IDfId`
  `getAppValidationId()`
  Return the attribute app_validation_id value for this policy.
  `String`
  `getAppValidationVer()`
  Return the attribute app_validation_ver value for this policy.
  `int`
  `getDefinitionState()`
  Return the attribute r_definition_state value.
  `String`
  `getEntryCriteria(int index)`
  Get the entry criteria specified by the client for the server to generate a dm_func_expr object and save its ID in the entry_criteria_id attribute for the state with the given index.
  `IDfId`
  `getEntryCriteriaId(int index)`
  Return the attribute entry_criteria_id value at the specified index.
  `int`
  `getEntryCriteriaIdCount()`
  Return the number of attribute entry_criteria_id values for this policy.
  `String`
  `getExceptionState(int index)`
  Return the attribute exception_state value at the specified index.
  `int`
  `getExceptionStateCount()`
  Return the number of attribute exception_state values for this policy.
  `IDfId`
  `getExtensionObjectId(int index)`
  Return the IDfId of the extension object for the state indicated by the index proviced.
  `String`
  `getExtensionType()`
  Return the attribute extension_type value.
  `String`
  `getIncludedType(int index)`
  Return the attribute included_type value at the specified index.
  `int`
  `getIncludedTypeCount()`
  Return the number of attribute included_type values for this policy.
  `boolean`
  `getIncludeSubtypes(int index)`
  Return the attribute include_subtypes value at the specified index.
  `int`
  `getIncludeSubtypesCount()`
  Return the number of attribute include_subtypes values for this policy.
  `boolean`
  `getJavaMethods()`
  Return the attribute java_methods value.
  `int`
  `getReturnCondition(int index)`
  Return the attribute return_condition value at the specified index.
  `int`
  `getReturnConditionCount()`
  Return the number of attribute return_condition values for this policy.
  `boolean`
  `getReturnToBase(int index)`
  Return the attribute return_to_base value at the specified index.
  `int`
  `getReturnToBaseCount()`
  Return the number of attribute return_to_base values for this policy.
  `int`
  `getStateClass(int index)`
  Return the attribute state_class value at the specified index.
  `int`
  `getStateClassCount()`
  Return the number of attribute state_class values for this policy.
  `String`
  `getStateDescription(int index)`
  Return the attribute state_description value at the specified index.
  `int`
  `getStateDescriptionCount()`
  Return the number of attribute state_description values for this policy.
  `IDfStateExtension`
  `getStateExtension(int stateNo)`
  Return the IDfStateExtension for the specified state or null if one does not exist.
  `int`
  `getStateIndex(String stateName)`
  Return the index of the attribute state_name value.
  `String`
  `getStateName(int index)`
  Return the attribute state_name value at the specified index.
  `int`
  `getStateNameCount()`
  Return the number of state_name values for this policy.
  `int`
  `getStateNo(int index)`
  Return the attribute i_state_no value at the specified index.
  `int`
  `getStateNoCount()`
  Return the number of attribute i_state_no values for this policy.
  `String`
  `getStateType(int index)`
  Return the attribute state_type value at the specified index.
  `int`
  `getStateTypeCount()`
  Return the number of attribute state_type values for this policy.
  `IDfId`
  `getSystemActions(int index)`
  Return the attribute system_actions value at the specified index.
  `int`
  `getSystemActionsCount()`
  Return the number of attribute system_actions values for this policy.
  `IDfId`
  `getTypeOverrideId(int index)`
  Return the attribute type_override_id value at the specified index.
  `int`
  `getTypeOverrideIdCount()`
  Return the number of attribute type_override_id values for this policy.
  `IDfId`
  `getUserActionId(int index)`
  Return the attribute user_action_id value at the specified index.
  `int`
  `getUserActionIdCount()`
  Return the number of attribute user_action_id values for this policy.
  `String`
  `getUserActionService(int index)`
  Return the attribute user_action_service value at the specified index.
  `int`
  `getUserActionServiceCount()`
  Return the number of user_action_service values for this policy.
  `String`
  `getUserActionVer(int index)`
  Return the attribute user_action_ver value at the specified index.
  `int`
  `getUserActionVerCount()`
  Return the number of attribute user_action_ver values for this policy.
  `IDfId`
  `getUserCriteriaId(int index)`
  Return the attribute user_criteria_id value at the specified index.
  `int`
  `getUserCriteriaIdCount()`
  Return the number of attribute user_criteria_id values for this policy.
  `String`
  `getUserCriteriaService(int index)`
  Return the attribute user_criteria_service value at the specified index.
  `int`
  `getUserCriteriaServiceCount()`
  Return the number of attribute user_criteria_service values for this policy.
  `String`
  `getUserCriteriaVer(int index)`
  Return the attribute user_criteria_ver value at the specified index.
  `int`
  `getUserCriteriaVerCount()`
  Return the number of attribute user_criteria_ver values for this policy.
  `String`
  `getUserPostprocessingService(int index)`
  Return the attribute user_post_processing_service value at the specified index.
  `int`
  `getUserPostprocessingServiceCount()`
  Return the number of attribute user_post_processing_service values for this policy.
  `IDfId`
  `getUserPostprocId(int index)`
  Return the attribute user_postproc_id value at the specified index.
  `int`
  `getUserPostprocIdCount()`
  Return the number of attribute user_postproc_id values for this policy.
  `String`
  `getUserPostprocVer(int index)`
  Return the attribute user_postproc_ver value at the specified index.
  `int`
  `getUserPostprocVerCount()`
  Return the number of attribute user_postproc_ver values for this policy.
  `String`
  `getUserValidationService()`
  Return the attribute user_validation_service value for this policy.
  `void`
  `insertState(int index)`
  Insert a new state with the given index into this lifecycle.
  `void`
  `install(boolean notify)`
  Validate this policy.
  `void`
  `moveState(int oldIndex, int newIndex)`
  Move a state within this policy.
  `IDfStateExtension`
  `newStateExtension(int stateNo)`
  Create and initialize an IDfStateExtension for the specified state.
  `void`
  `removeState(int index)`
  Remove a state from this policy.
  `void`
  `setActionObjectId(int index, IDfId value)`
  Set the attribute action_object_id value at the specified index.
  `void`
  `setAliasSetIds(int index, IDfId value)`
  Set the attribute allias_set_ids value at the specified index.
  `void`
  `setAllowAttach(int index, boolean value)`
  Set the attribute allow_attach value at the specified index.
  `void`
  `setAllowDemote(int index, boolean value)`
  Set the attribute allow_demote value at the specified index.
  `void`
  `setAllowSchedule(int index, boolean value)`
  Set the attribute allow_schedule value at the specified index.
  `void`
  `setAppValidationId(IDfId value)`
  Set the attribute app_validation_id value for this policy.
  `void`
  `setAppValidationVer(String value)`
  Set the attribute app_validation_ver value for this policy.
  `void`
  `setEntryCriteria(int index, String value)`
  Set the entry criteria for the state with the given index.
  `void`
  `setExceptionState(int index, String value)`
  Set the attribute exception_state value at the specified index.
  `void`
  `setExtensionType(String value)`
  Set the attribute extension_type value for this policy.
  `void`
  `setIncludedType(int index, String value)`
  Set the attribute included_typename attribute at the specified index.
  `void`
  `setIncludeSubtypes(int index, boolean value)`
  Set the attribute include_subtypes value at the specified index.
  `void`
  `setJavaMethods(boolean value)`
  Set the attribute java_methods value for this policy.
  `void`
  `setReturnCondition(int index, int value)`
  Set the attribute return_condition value at the specified index.
  `void`
  `setReturnToBase(int index, boolean value)`
  Set the attribute return_to_base value at the specified index.
  `void`
  `setStateClass(int index, int value)`
  Set the attribute state_class at the specified index.
  `void`
  `setStateDescription(int index, String value)`
  Set the attribute state_description value at the specified index.
  `void`
  `setStateName(int index, String value)`
  Set the attribute state_name value at the specified index.
  `void`
  `setStateNo(int index, int value)`
  Set the attribute i_state_no value at the specified index.
  `void`
  `setStateType(int index, String value)`
  Set the attribute state_type value at the specified index.
  `void`
  `setSystemActions(int index, IDfId value)`
  Set the attribute system_actions value at the specified index.
  `void`
  `setTypeOverrideId(int index, IDfId value)`
  Set the attribute type_override_id value at the specified index.
  `void`
  `setUserActionId(int index, IDfId value)`
  Set the attribute user_action_id value at the specified index.
  `void`
  `setUserActionService(int index, String value)`
  Set the attribute user_action_service value at the specified index.
  `void`
  `setUserActionVer(int index, String value)`
  Set the attribute user_action_ver value at the specified index.
  `void`
  `setUserCriteriaId(int index, IDfId value)`
  Set the attribute user_criteria_id value at the specified index.
  `void`
  `setUserCriteriaService(int index, String value)`
  Set the attribute user_criteria_service value at the specified index.
  `void`
  `setUserCriteriaVer(int index, String value)`
  Set the attribute user_criteria_ver value at the specified index.
  `void`
  `setUserPostprocessingService(int index, String value)`
  Set the attribute user_post_processing_service value at the specified index.
  `void`
  `setUserPostprocId(int index, IDfId value)`
  Set the attribute user_postproc_id value at the specified index.
  `void`
  `setUserPostprocVer(int index, String value)`
  Set the attribute user_postproc_ver at the specified index.
  `void`
  `setUserValidationService(String value)`
  Set the attribute user_validation_service value for this policy.
  `void`
  `unInstall(boolean notify)`
  Validate this policy.
  `void`
  `validate()`
  Validate this policy.

  ### Methods inherited from interface com.documentum.fc.client.IDfPersistentObject

  `addChildRelative, addParentRelative, apiExec, apiGet, apiSet, destroy, fetch, fetchWithCaching, getAttrAssistance, getAttrAssistanceWithValues, getAttrAsstDependencies, getChildRelatives, getParentRelatives, getPartition, getType, getValidator, getVStamp, getWidgetType, isDeleted, isDirty, isInstanceOf, isNew, isReplica, lock, lockEx, registerEvent, removeChildRelative, removeParentRelative, revert, save, setPartition, signoff, unRegisterEvent, unRegisterEventEx, validateAllRules, validateAttrRules, validateAttrRulesWithValue, validateAttrRulesWithValues, validateObjRules, validateObjRulesWithValues`

  ### Methods inherited from interface com.documentum.fc.client.IDfSysObject

  `addDigitalSignature, addESignature, addNote, addReference, addRendition, addRenditionEx, addRenditionEx2, addRenditionEx3, appendContent, appendContentEx, appendFile, appendFileEx, appendPart, areAttributesModifiable, assemble, asVirtualDocument, attachPolicy, bindFile, branch, cancelCheckout, cancelCheckoutEx, cancelScheduledDemote, cancelScheduledPromote, cancelScheduledResume, cancelScheduledSuspend, canDemote, canPromote, canResume, canSuspend, checkin, checkinEx, checkout, checkoutEx, demote, destroyAllVersions, detachPolicy, disassemble, freeze, getAccessDate, getAccessorApplicationPermit, getAccessorCount, getAccessorName, getAccessorPermit, getAccessorPermitType, getAccessorXPermit, getAccessorXPermitNames, getACL, getACLDomain, getACLName, getAclRefValid, getAcsRequests, getAliasSet, getAliasSetId, getAntecedentId, getApplicationType, getAssembledFromId, getAuthors, getAuthorsCount, getBranchCount, getCabinetId, getChronicleId, getCollectionForContent, getCollectionForContentEx2, getCollectionForContentEx3, getCollectionForContentEx4, getComponentId, getComponentIdCount, getCompoundArchitecture, getContainId, getContainIdCount, getContent, getContentAvailability, getContentEx, getContentEx2, getContentEx3, getContentsId, getContentSize, getContentSize, getContentState, getContentStateCount, getContentType, getCreationDate, getCreatorName, getCurrentState, getCurrentStateName, getDirectDescendant, getDoubleContentAttr, getExceptionStateName, getFile, getFileEx, getFileEx2, getFolderId, getFolderIdCount, getFormat, getFrozenAssemblyCount, getFullText, getGroupName, getGroupPermit, getHasEvents, getHasFolder, getHasFrozenAssembly, getImplicitVersionLabel, getKeywords, getKeywordsCount, getLatestFlag, getLinkCount, getLinkHighCount, getLocations, getLockDate, getLockMachine, getLockOwner, getLogEntry, getMasterDocbase, getModifier, getModifyDate, getNextStateName, getObjectName, getOtherFileSize, getOwnerName, getOwnerPermit, getPageCount, getPath, getPathEx, getPathEx2, getPermissions, getPermit, getPermitEx, getPolicyId, getPolicyName, getPreviousStateName, getReferenceCount, getRemoteId, getRenditions, getResolutionLabel, getResumeState, getResumeStateName, getRetainerCount, getRetainerId, getRetainUntilDate, getRetentionDate, getRouters, getSpecialApp, getStatus, getStorageType, getStringContentAttr, getSubject, getTimeContentAttr, getTitle, getTypeName, getVdmPath, getVdmPathDQL, getVersionLabel, getVersionLabelCount, getVersionLabels, getVersionPolicy, getVersions, getWorkflows, getWorldPermit, getXPermit, getXPermitList, getXPermitNames, grant, grantPermit, hasPermission, insertContent, insertContentEx, insertFile, insertFileEx, insertPart, isArchived, isCheckedOut, isCheckedOutBy, isContentTransferCapabilityEnabled, isFrozen, isHidden, isImmutable, isLinkResolved, isPublic, isReference, isSuspended, isVirtualDocument, link, mark, mount, print, promote, prune, queue, refreshReference, removeContent, removeNote, removePart, removeRendition, removeRenditionEx, removeRenditionEx2, resolveAlias, resume, revertACL, revoke, revokePermit, saveAsNew, saveLock, scheduleDemote, schedulePromote, scheduleResume, scheduleSuspend, setACL, setACLDomain, setACLName, setApplicationType, setArchived, setAuthors, setCompoundArchitecture, setContent, setContentEx, setContentEx2, setContentType, setDoubleContentAttribute, setFile, setFileEx, setFullText, setGroupName, setGroupPermit, setHidden, setIsVirtualDocument, setKeywords, setLinkResolved, setLogEntry, setObjectName, setOwnerName, setOwnerPermit, setPath, setResolutionLabel, setSpecialApp, setStatus, setStorageType, setStringContentAttribute, setSubject, setTimeContentAttribute, setTitle, setWorldPermit, suspend, unfreeze, unlink, unmark, updatePart, updatePartEx, useACL, verifyESignature`

  ### Methods inherited from interface com.documentum.fc.client.IDfTypedObject

  `appendBoolean, appendDouble, appendId, appendInt, appendString, appendTime, appendValue, dump, enumAttrs, findAttrIndex, findBoolean, findDouble, findId, findInt, findString, findTime, findValue, getAllRepeatingStrings, getAttr, getAttrCount, getAttrDataType, getBoolean, getDouble, getId, getInt, getLong, getObjectId, getObjectSession, getOriginalSession, getRepeatingBoolean, getRepeatingDouble, getRepeatingId, getRepeatingInt, getRepeatingLong, getRepeatingString, getRepeatingTime, getRepeatingValue, getSession, getSessionManager, getString, getTime, getValue, getValueAt, getValueCount, hasAttr, insertBoolean, insertDouble, insertId, insertInt, insertString, insertTime, insertValue, isAttrRepeating, isNull, remove, removeAll, setBoolean, setDouble, setId, setInt, setNull, setRepeatingBoolean, setRepeatingDouble, setRepeatingId, setRepeatingInt, setRepeatingString, setRepeatingTime, setRepeatingValue, setSessionManager, setString, setTime, setValue, truncate`

- ## Method Details

  - ### insertState

    void insertState(int index) throws DfException
    Insert a new state with the given index into this lifecycle. Increment the index for existing states with the index of the inserted state or higher. The inserted state is represented as set of correlated repeating attributes. This will initialize the state with the following default values which may be adjusted after this returns.
    1. ActionObjectId(action_object_id) - DfId.DF_NULLID
    2. AllowAttach(allow_attach) - false
    3. AllowDemote(allow_demote) - false
    4. AllowSchedule(allow_schedule) - true
    5. EntryCriteriaId(entry_criteria_id) - DfId.DF_NULLID
    6. ExceptionState(exception_state) - Empty String
    7. ReturnCondition(return_condition) - `DfPolicyStateReturnCondition.ALL`
    8. ReturnToBase(return_to_base) - false
    9. StateClass(state_class) - `DfPolicyStateReturnCondition.NORMAL`
    10. StateDescription(state_description) - Empty String
    11. StateName(state_name) - Empty String
    12. StateNo(i_state_no) - Computed using an internal sequence number
    13. StateType(state_type) - Empty String
    14. SystemActions(system_actions) - DfId.DF_NULLID
    15. TypeOverrideId(type_override_id) - DfId.DF_NULLID
    16. UserActionId(user_action_id) - DfId.DF_NULLID
    17. UserActionService(user_action_service) - Empty String
    18. UserActionVer(user_action_ver) - Empty String
    19. UserCriteriaId(user_criteria_id) - DfId.DF_NULLID
    20. UserCriteriaService(user_criteria_service) - Empty String
    21. UserCriteriaVer(user_criteria_ver) - Empty String
    22. UserPostprocId(user_postproc_id) - DfId.DF_NULLID
    23. UserPostprocVer(user_postproc_ver) - Empty String
    24. UserPostprocessingService(user_postprocessing_service) - Empty String
    Parameters:
      `index` - index for this states repeating values.
    Throws:
      `DfException` - if an error occurs.

  - ### appendState

    int appendState() throws DfException
    Append a new state to this lifecycle. Please refer to `insertState` for details about the inserted state.
    Returns:
      the 0 based index of correlated attributes which represent the the appended state.
    Throws:
      `DfException` - if an error occurs.

  - ### removeState

    void removeState(int index) throws DfException
    Remove a state from this policy.
    Parameters:
      `index` - the 0 based index of the correlated attributes which represent the removed state.
    Throws:
      `DfException` - if an error occurs.

  - ### moveState

    void moveState(int oldIndex, int newIndex) throws DfException
    Move a state within this policy.
    Parameters:
      `oldIndex` - the original 0 based index of the correlated attributes which represent the moved state.
      `newIndex` - the new 0 based index of the correlated attributes which represent the moved state.
    Throws:
      `DfException` - if an error occurs.

  - ### getExtensionObjectId

    IDfId getExtensionObjectId(int index) throws DfException
    Return the IDfId of the extension object for the state indicated by the index proviced. This may return DfId.NULL_ID.
    Throws:
      `DfException` - if an error occurs.

  - ### getAllIncludedTypes

    IDfList getAllIncludedTypes() throws DfException
    Retun an IDfList that includes the complete list of types for objects that can be attached to this policy.
    Throws:
      `DfException`

  - ### validate

    void validate() throws DfException
    Validate this policy. Upon succesful completion `getDefinitionState` will return DfPolicy.VALIDATED_DEFINITION_STATE(1).
    Throws:
      `DfException`

  - ### install

    void install(boolean notify) throws DfException
    Validate this policy. Upon succesful completion `getDefinitionState` will return DfPolicy.INSTALLED_DEFINITION_STATE(1).
    Throws:
      `DfException`

  - ### unInstall

    void unInstall(boolean notify) throws DfException
    Validate this policy. Upon succesful completion `getDefinitionState` will return DfPolicy.VALIDATED_DEFINITION_STATE(1).
    Throws:
      `DfException`

  - ### getIncludedType

    String getIncludedType(int index) throws DfException
    Return the attribute included_type value at the specified index. This represents a type to which the policy applies.
    Throws:
      `DfException` - if an error occurs.

  - ### getIncludedTypeCount

    int getIncludedTypeCount() throws DfException
    Return the number of attribute included_type values for this policy.
    Throws:
      `DfException` - if a server error occurs.

  - ### setIncludedType

    void setIncludedType(int index, String value) throws DfException
    Set the attribute included_typename attribute at the specified index. Please refer to `getIncludedType` for a description of the attribute.
    Throws:
      `DfException` - if an error occurs.

  - ### getIncludeSubtypes

    boolean getIncludeSubtypes(int index) throws DfException
    Return the attribute include_subtypes value at the specified index. If this value is true, the policy applies to subtypes of the attribute included_type at this index.
    Throws:
      `DfException` - if an error occurs.

  - ### getIncludeSubtypesCount

    int getIncludeSubtypesCount() throws DfException
    Return the number of attribute include_subtypes values for this policy.
    Throws:
      `DfException` - if a server error occurs.

  - ### setIncludeSubtypes

    void setIncludeSubtypes(int index, boolean value) throws DfException
    Set the attribute include_subtypes value at the specified index. Please refer to `getIncludeSubtypes` for a description of the attribute.
    Throws:
      `DfException` - if an error occurs.

  - ### getStateNo

    int getStateNo(int index) throws DfException
    Return the attribute i_state_no value at the specified index. The returned value is a system defined integer that uniquely identifies the state at the specified index in this policy.
    Throws:
      `DfException` - if an error occurs.

  - ### getStateNoCount

    int getStateNoCount() throws DfException
    Return the number of attribute i_state_no values for this policy.
    Throws:
      `DfException` - if a server error occurs.

  - ### setStateNo

    void setStateNo(int index, int value) throws DfException
    Set the attribute i_state_no value at the specified index. Please refer to `getStateNo` for a description of the attribute.
    Throws:
      `DfException` - if an error occurs.

  - ### getStateName

    String getStateName(int index) throws DfException
    Return the attribute state_name value at the specified index. The returned value is the name for the state at the specified index in this policy.
    Throws:
      `DfException` - if an error occurs.

  - ### getStateIndex

    int getStateIndex(String stateName) throws DfException
    Return the index of the attribute state_name value. The returned value is the index for the given state name in this policy.
    Throws:
      `DfException` - if an error occurs.

  - ### getStateNameCount

    int getStateNameCount() throws DfException
    Return the number of state_name values for this policy.
    Throws:
      `DfException` - if a server error occurs.

  - ### setStateName

    void setStateName(int index, String value) throws DfException
    Set the attribute state_name value at the specified index. Please refer to `getStateName` for a description of the attribute.
    Throws:
      `DfException` - if an error occurs.

  - ### getStateDescription

    String getStateDescription(int index) throws DfException
    Return the attribute state_description value at the specified index. The state description is a string that describes the state.
    Throws:
      `DfException` - if an error occurs.

  - ### getStateDescriptionCount

    int getStateDescriptionCount() throws DfException
    Return the number of attribute state_description values for this policy.
    Throws:
      `DfException` - if a server error occurs.

  - ### setStateDescription

    void setStateDescription(int index, String value) throws DfException
    Set the attribute state_description value at the specified index. Please refer to `getStateDescription` for a description of the attribute.
    Throws:
      `DfException` - if an error occurs.

  - ### getStateClass

    int getStateClass(int index) throws DfException
    Return the attribute state_class value at the specified index. The returned value is a `DfPolicyStateClass` enumeration
    Throws:
      `DfException` - if an error occurs.

  - ### getStateClassCount

    int getStateClassCount() throws DfException
    Return the number of attribute state_class values for this policy.
    Throws:
      `DfException` - if a server error occurs.

  - ### setStateClass

    void setStateClass(int index, int value) throws DfException
    Set the attribute state_class at the specified index. Please refer to `getStateClass` for a description of the attribute.
    Throws:
      `DfException` - if an error occurs.

  - ### getEntryCriteriaId

    IDfId getEntryCriteriaId(int index) throws DfException
    Return the attribute entry_criteria_id value at the specified index. The returned value is the ID of the dm_func_expr that implements the indicated state's entry criteria. The returned value can be DfId.NULL_ID.
    Throws:
      `DfException` - if an error occurs.

  - ### getEntryCriteriaIdCount

    int getEntryCriteriaIdCount() throws DfException
    Return the number of attribute entry_criteria_id values for this policy.
    Throws:
      `DfException` - if a server error occurs.

  - ### getUserCriteriaId

    IDfId getUserCriteriaId(int index) throws DfException
    Return the attribute user_criteria_id value at the specified index. The returned value is the ID of the dm_procedure which implements the indicated state's user defined entry criteria. The returned value can be DfId.NULL_ID.
    Throws:
      `DfException` - if an error occurs.

  - ### getUserCriteriaIdCount

    int getUserCriteriaIdCount() throws DfException
    Return the number of attribute user_criteria_id values for this policy.
    Throws:
      `DfException` - if a server error occurs.

  - ### setUserCriteriaId

    void setUserCriteriaId(int index, IDfId value) throws DfException
    Set the attribute user_criteria_id value at the specified index. Please refer to `getUserCriteriaId` for a description of the attribute.
    Throws:
      `DfException` - if an error occurs.

  - ### getUserCriteriaVer

    String getUserCriteriaVer(int index) throws DfException
    Return the attribute user_criteria_ver value at the specified index. The returned value is the version label for the dm_procedure which implements the indicated state's user-defined entry criteria. The returned value can be an empty string.
    Throws:
      `DfException` - if an error occurs.

  - ### getUserCriteriaVerCount

    int getUserCriteriaVerCount() throws DfException
    Return the number of attribute user_criteria_ver values for this policy.
    Throws:
      `DfException` - if a server error occurs.

  - ### setUserCriteriaVer

    void setUserCriteriaVer(int index, String value) throws DfException
    Set the attribute user_criteria_ver value at the specified index. Please refer to `getUserCriteriaVer` for a description of the attribute.
    Throws:
      `DfException` - if an error occurs.

  - ### getActionObjectId

    IDfId getActionObjectId(int index) throws DfException
    Return the attribute action_object_id value at the specified index. The returned value is the ID for the dm_procedure object which implements the indicated state's user actions. The returned value may be DfId.NULL_ID.
    Throws:
      `DfException` - if an error occurs.

  - ### getActionObjectIdCount

    int getActionObjectIdCount() throws DfException
    Return the number of attribute action_object_id values for this policy.
    Throws:
      `DfException` - if a server error occurs.

  - ### setActionObjectId

    void setActionObjectId(int index, IDfId value) throws DfException
    Set the attribute action_object_id value at the specified index. Please refer to `getActionObjectId` for a description of the attribute.
    Throws:
      `DfException` - if an error occurs.

  - ### getUserActionId

    IDfId getUserActionId(int index) throws DfException
    Return the attribute user_action_id value at the specified index. The returned value is the ID for the dm_procedure object which implements the indicated state's user defined actions. The returned value may be DfId.NULL_ID.
    Throws:
      `DfException` - if an error occurs.

  - ### getUserActionIdCount

    int getUserActionIdCount() throws DfException
    Return the number of attribute user_action_id values for this policy.
    Throws:
      `DfException` - if a server error occurs.

  - ### setUserActionId

    void setUserActionId(int index, IDfId value) throws DfException
    Set the attribute user_action_id value at the specified index. Please refer to `getUserActionId` for a description of the attribute.
    Throws:
      `DfException` - if an error occurs.

  - ### getUserActionVer

    String getUserActionVer(int index) throws DfException
    Return the attribute user_action_ver value at the specified index. The returned value is the version label for the dm_procedure which implements the indicated state's user defined defined actions. The returned value may be an empty string.
    Throws:
      `DfException` - if an error occurs.

  - ### getUserActionVerCount

    int getUserActionVerCount() throws DfException
    Return the number of attribute user_action_ver values for this policy.
    Throws:
      `DfException` - if a server error occurs.

  - ### setUserActionVer

    void setUserActionVer(int index, String value) throws DfException
    Set the attribute user_action_ver value at the specified index. Please refer to `getUserActionVer` for a description of the attribute.
    Throws:
      `DfException` - if an error occurs.

  - ### getUserPostprocId

    IDfId getUserPostprocId(int index) throws DfException
    Return the attribute user_postproc_id value at the specified index. The returned value is the ID for the dm_procedure object which implements the indicated state's post entry logic. The returned value may be DfId.NULL_ID.
    Throws:
      `DfException` - if an error occurs.

  - ### getUserPostprocIdCount

    int getUserPostprocIdCount() throws DfException
    Return the number of attribute user_postproc_id values for this policy.
    Throws:
      `DfException` - if a server error occurs.

  - ### setUserPostprocId

    void setUserPostprocId(int index, IDfId value) throws DfException
    Set the attribute user_postproc_id value at the specified index. Please refer to `getUserPostProcId` for a description of the attribute.
    Throws:
      `DfException` - if an error occurs.

  - ### getUserPostprocVer

    String getUserPostprocVer(int index) throws DfException
    Return the attribute user_postproc_ver value at the specified index. The returned value is the version label for the dm_procedure which implements the indicated state's post entry logic. The returned value may be an empty string.
    Throws:
      `DfException` - if an error occurs.

  - ### getUserPostprocVerCount

    int getUserPostprocVerCount() throws DfException
    Return the number of attribute user_postproc_ver values for this policy.
    Throws:
      `DfException` - if a server error occurs.

  - ### setUserPostprocVer

    void setUserPostprocVer(int index, String value) throws DfException
    Set the attribute user_postproc_ver at the specified index. Please refer to `getUserPostProcVer` for a description of the attribute.
    Throws:
      `DfException` - if an error occurs.

  - ### getExceptionState

    String getExceptionState(int index) throws DfException
    Return the attribute exception_state value at the specified index. The returned value is the state_name for the indicated state's exception state. The returned value may be an empty string.
    Throws:
      `DfException` - if an error occurs.

  - ### getExceptionStateCount

    int getExceptionStateCount() throws DfException
    Return the number of attribute exception_state values for this policy.
    Throws:
      `DfException` - if a server error occurs.

  - ### setExceptionState

    void setExceptionState(int index, String value) throws DfException
    Set the attribute exception_state value at the specified index. Please refer to `getExceptionState` for a description of the attribute.
    Throws:
      `DfException` - if an error occurs.

  - ### getAllowAttach

    boolean getAllowAttach(int index) throws DfException
    Return the attribute allow_attach value at the specified index. The returned value is `true` if IDfSysobject.attach can be used to attach a policy to this policy in the indicated state.
    Throws:
      `DfException` - if an error occurs.

  - ### getAllowAttachCount

    int getAllowAttachCount() throws DfException
    Return the number of attribute allow_attach values for this policy.
    Throws:
      `DfException` - if a server error occurs.

  - ### setAllowAttach

    void setAllowAttach(int index, boolean value) throws DfException
    Set the attribute allow_attach value at the specified index. Please refer to `getAllowAttach` for a description of the attribute.
    Throws:
      `DfException` - if an error occurs.

  - ### getAllowSchedule

    boolean getAllowSchedule(int index) throws DfException
    Return the attribute allow_schedule value at the specified index. The returned value is `true` if schedule state transitions are allowed for a sysobject in the indicated state.
    Throws:
      `DfException` - if an error occurs.

  - ### getAllowScheduleCount

    int getAllowScheduleCount() throws DfException
    Return the number of attribute allow_schedule values for this policy.
    Throws:
      `DfException` - if a server error occurs.

  - ### setAllowSchedule

    void setAllowSchedule(int index, boolean value) throws DfException
    Set the attribute allow_schedule value at the specified index. Please refer to `getAllowSchedule` for a description of the attribute.
    Throws:
      `DfException` - if an error occurs.

  - ### getReturnToBase

    boolean getReturnToBase(int index) throws DfException
    Return the attribute return_to_base value at the specified index. The returned value is `true` if operations indictated by the return_condition value for this states index cause an attached sysobject to return to the base state.
    Throws:
      `DfException` - if an error occurs.

  - ### getReturnToBaseCount

    int getReturnToBaseCount() throws DfException
    Return the number of attribute return_to_base values for this policy.
    Throws:
      `DfException` - if a server error occurs.

  - ### setReturnToBase

    void setReturnToBase(int index, boolean value) throws DfException
    Set the attribute return_to_base value at the specified index. Please refer to `getReturnToBase` for a description of the attribute.
    Throws:
      `DfException` - if an error occurs.

  - ### getTypeOverrideId

    IDfId getTypeOverrideId(int index) throws DfException
    Return the attribute type_override_id value at the specified index. The returned value is the ID of the dm_aggr_domain object for the indicated state. The returned value may be DfId.NULL_ID.
    Throws:
      `DfException` - if an error occurs.

  - ### getTypeOverrideIdCount

    int getTypeOverrideIdCount() throws DfException
    Return the number of attribute type_override_id values for this policy.
    Throws:
      `DfException` - if a server error occurs.

  - ### setTypeOverrideId

    void setTypeOverrideId(int index, IDfId value) throws DfException
    Set the attribute type_override_id value at the specified index. Please refer to `getTypeOverrideId` for a description of the attribute.
    Throws:
      `DfException` - if an error occurs.

  - ### getAllowDemote

    boolean getAllowDemote(int index) throws DfException
    Return the attribute allow_demote value at the specified index. The returned value is `true` if demote operations are allowed for a sysobject in the indicated state.
    Throws:
      `DfException` - if an error occurs.

  - ### getAllowDemoteCount

    int getAllowDemoteCount() throws DfException
    Return the number of attribute allow_demote values for this policy.
    Throws:
      `DfException` - if a server error occurs.

  - ### setAllowDemote

    void setAllowDemote(int index, boolean value) throws DfException
    Set the attribute allow_demote value at the specified index. Please refer to `getAllowDemote` for a description of the attribute.
    Throws:
      `DfException` - if an error occurs.

  - ### getAliasSetIds

    IDfId getAliasSetIds(int index) throws DfException
    Return the alias_set_ids value at the specified index. The returned value is an allowed alias set for this policy.
    Throws:
      `DfException` - if an error occurs.

  - ### getAliasSetIdsCount

    int getAliasSetIdsCount() throws DfException
    Return the number of attribute allias_set_ids values for this policy.
    Throws:
      `DfException` - if a server error occurs.

  - ### setAliasSetIds

    void setAliasSetIds(int index, IDfId value) throws DfException
    Set the attribute allias_set_ids value at the specified index. Please refer to `getAlisaSetIds` for a description of the attribute.
    Throws:
      `DfException` - if an error occurs.

  - ### getReturnCondition

    int getReturnCondition(int index) throws DfException
    Return the attribute return_condition value at the specified index. Please refer to `DfPolicyStateReturnCondition` for an explanation of the return value.
    Throws:
      `DfException` - if an error occurs.

  - ### getReturnConditionCount

    int getReturnConditionCount() throws DfException
    Return the number of attribute return_condition values for this policy.
    Throws:
      `DfException` - if a server error occurs.

  - ### setReturnCondition

    void setReturnCondition(int index, int value) throws DfException
    Set the attribute return_condition value at the specified index. Please refer to `getReturnCondition` for a description of the attribute.
    Throws:
      `DfException` - if an error occurs.

  - ### getStateType

    String getStateType(int index) throws DfException
    Return the attribute state_type value at the specified index. The returned value is a user supplied string to catagorize the indicated state. The returned value can be an empty string.
    Throws:
      `DfException` - if an error occurs.

  - ### getStateTypeCount

    int getStateTypeCount() throws DfException
    Return the number of attribute state_type values for this policy.
    Throws:
      `DfException` - if a server error occurs.

  - ### setStateType

    void setStateType(int index, String value) throws DfException
    Set the attribute state_type value at the specified index. Please refer to `getStateType` for a description of the attribute.
    Throws:
      `DfException` - if an error occurs.

  - ### getExtensionType

    String getExtensionType() throws DfException
    Return the attribute extension_type value. The returned value is the name of the type for extension_type for this policy. The returned value can be an empty string.
    Throws:
      `DfException` - if an error occurs.

  - ### setExtensionType

    void setExtensionType(String value) throws DfException
    Set the attribute extension_type value for this policy. Please refer to `getExtensionType` for a description of the attribute.
    Throws:
      `DfException` - if an error occurs.

  - ### getAppValidationId

    IDfId getAppValidationId() throws DfException
    Return the attribute app_validation_id value for this policy. The returned value is the ID of a dm_procedure for validating this policy or DfId.NULL_ID.
    Throws:
      `DfException` - if an error occurs.

  - ### setAppValidationId

    void setAppValidationId(IDfId value) throws DfException
    Set the attribute app_validation_id value for this policy. Please refer to `getAppValidationId` for a description of the attribute.
    Throws:
      `DfException` - if an error occurs.

  - ### getAppValidationVer

    String getAppValidationVer() throws DfException
    Return the attribute app_validation_ver value for this policy. The returned value is the version label for the dm_procedure that validates this policy or an empty string.
    Throws:
      `DfException` - if an error occurs.

  - ### setAppValidationVer

    void setAppValidationVer(String value) throws DfException
    Set the attribute app_validation_ver value for this policy. Please refer to `getAppValidationVer` for a description of the attribute.
    Throws:
      `DfException` - if an error occurs.

  - ### getJavaMethods

    boolean getJavaMethods() throws DfException
    Return the attribute java_methods value. The returned value is true if the policy's entry criteria, actions, and validation methods are implemented in Java.
    Throws:
      `DfException` - if an error occurs.

  - ### setJavaMethods

    void setJavaMethods(boolean value) throws DfException
    Set the attribute java_methods value for this policy. Please refer to `getJavaMethods` for a description of the attribute.
    Throws:
      `DfException` - if an error occurs.

  - ### getUserCriteriaService

    String getUserCriteriaService(int index) throws DfException
    Return the attribute user_criteria_service value at the specified index. The returned value is the service name of the SBO implementing the indicated state's entry criteria.
    Throws:
      `DfException` - if an error occurs.

  - ### getUserCriteriaServiceCount

    int getUserCriteriaServiceCount() throws DfException
    Return the number of attribute user_criteria_service values for this policy.
    Throws:
      `DfException` - if a server error occurs.

  - ### setUserCriteriaService

    void setUserCriteriaService(int index, String value) throws DfException
    Set the attribute user_criteria_service value at the specified index. Please refer to `getUserCriteriaService` for a description of the attribute.
    Throws:
      `DfException` - if an error occurs.

  - ### getUserActionService

    String getUserActionService(int index) throws DfException
    Return the attribute user_action_service value at the specified index. The returned value is the service name of the SBO implementing the indicated state's actions.
    Throws:
      `DfException` - if an error occurs.

  - ### getUserActionServiceCount

    int getUserActionServiceCount() throws DfException
    Return the number of user_action_service values for this policy.
    Throws:
      `DfException` - if a server error occurs.

  - ### setUserActionService

    void setUserActionService(int index, String value) throws DfException
    Set the attribute user_action_service value at the specified index. Please refer to `getUserActionService` for a description of the attribute.
    Throws:
      `DfException` - if an error occurs.

  - ### getUserPostprocessingService

    String getUserPostprocessingService(int index) throws DfException
    Return the attribute user_post_processing_service value at the specified index. The returned value is the service name of the SBO implementing the indicated state's post processing actions.
    Throws:
      `DfException` - if an error occurs.

  - ### getUserPostprocessingServiceCount

    int getUserPostprocessingServiceCount() throws DfException
    Return the number of attribute user_post_processing_service values for this policy.
    Throws:
      `DfException` - if a server error occurs.

  - ### setUserPostprocessingService

    void setUserPostprocessingService(int index, String value) throws DfException
    Set the attribute user_post_processing_service value at the specified index. Please refer to `getUserPostProcessingService` for a description of the attribute.
    Throws:
      `DfException` - if an error occurs.

  - ### getUserValidationService

    String getUserValidationService() throws DfException
    Return the attribute user_validation_service value for this policy. The returned value is the service name of the SBO implementing user validation for the policy. DfId.NULL_ID may be returned.
    Throws:
      `DfException` - if an error occurs.

  - ### setUserValidationService

    void setUserValidationService(String value) throws DfException
    Set the attribute user_validation_service value for this policy. Please refer to `getUserValidationService` for a description of the attribute.
    Throws:
      `DfException` - if an error occurs.

  - ### getSystemActions

    IDfId getSystemActions(int index) throws DfException
    Return the attribute system_actions value at the specified index. The returned value is the ID of tcf activity object describing a sequence of actions through SBOs implementing the IDfLifecycleAction interface for the indicated state. The returned value may be DfId.NULL_ID.
    Throws:
      `DfException` - if an error occurs.

  - ### getSystemActionsCount

    int getSystemActionsCount() throws DfException
    Return the number of attribute system_actions values for this policy.
    Throws:
      `DfException` - if a server error occurs.

  - ### setSystemActions

    void setSystemActions(int index, IDfId value) throws DfException
    Set the attribute system_actions value at the specified index. Please refer to `getSystemActions` for a description of the attribute.
    Throws:
      `DfException` - if an error occurs.

  - ### getDefinitionState

    int getDefinitionState() throws DfException
    Return the attribute r_definition_state value. The returned value for this policy. will be an `DfPolicyDefinitionState`
    Throws:
      `DfException` - if an error occurs.

  - ### newStateExtension

    IDfStateExtension newStateExtension(int stateNo) throws DfException
    Create and initialize an IDfStateExtension for the specified state. The returned object's repository type will match the type returned by getExtensionType. It is an error to call this function before calling setExtensionType to set the extension type for this policy. The returned state extension will have its parentId, childId, relationName and stateNo attributes set.
    Parameters:
      `stateNo` - the state number (@link #getStateNo(int) getStateNo) for the returned extension object. It is an error to pass in a value that does not correspond to a state of this policy.
    Throws:
      `DfException`

  - ### getStateExtension

    IDfStateExtension getStateExtension(int stateNo) throws DfException
    Return the IDfStateExtension for the specified state or null if one does not exist.
    Throws:
      `DfException`

  - ### setEntryCriteria

    void setEntryCriteria(int index, String value) throws DfException
    Set the entry criteria for the state with the given index. At save time, the server generates a dm_func_expr object for the expression and saves its ID in the entry_criteria_id attribute. After a save, this value is reset. To delete an existing dm_func_expr object for an entry criteria for a state provided, set the value to null.
    Throws:
      `DfException`

  - ### getEntryCriteria

    String getEntryCriteria(int index) throws DfException
    Get the entry criteria specified by the client for the server to generate a dm_func_expr object and save its ID in the entry_criteria_id attribute for the state with the given index. After a save, this value is reset.
    Throws:
      `DfException`