Package com.emc.documentum.rest.dfc

# Interface AclManager

public interface AclManager
The Access Control List manager.

- ## Method Summary

  Modifier and Type
  Method
  Description
  `AclObject`
  `createAcl(AclObject object, boolean validateUnknown, AttributeView attributeView)`
  Create ACL object with type and attributes.
  `void`
  `deleteAcl(String objectId, boolean forceDelete)`
  Delete an ACL
  `AclObject`
  `getAclById(String objectId, AttributeView attributeView)`
  Get ACL by object id.
  `AclObject`
  `getAclByName(String aclDomain, String aclName, AttributeView attributeView)`
  Get ACL by acl_domain and acl_name
  `PermissionSetObject`
  `getPermissionSet(String objectId, AttributeView attributeView)`
  Get the permission set of an specified sysobject.
  `AccessorPermission`
  `getUserPermission(String objectId, String accessor)`
  Get the grant permissions to an specified sysobject for some user or group
  `AclObject`
  `updateAcl(AclObject object, boolean validateUnknown, boolean ignoreUnmodified)`
  Update ACL object with attributes.
  `PermissionSetObject`
  `updatePermissionSet(String objectId, PermissionSetObject permissionSetObject)`
  Update the object permission set.

- ## Method Details

  - ### getAclById

    AclObject getAclById(String objectId, AttributeView attributeView) throws com.documentum.fc.common.DfException
    Get ACL by object id.
    Parameters:
      `objectId` - the acl object id
      `attributeView` - the attribute view on the result
    Returns:
      the AclObject
    Throws:
      `com.documentum.fc.common.DfException` - dfc exception during operation

  - ### getAclByName

    AclObject getAclByName(String aclDomain, String aclName, AttributeView attributeView) throws com.documentum.fc.common.DfException
    Get ACL by acl_domain and acl_name
    Parameters:
      `aclDomain` - the ACL owner name
      `aclName` - the ACL object name
      `attributeView` - the attribute view on the result
    Returns:
      the ACL object
    Throws:
      `com.documentum.fc.common.DfException` - This method is only for internal test usage

  - ### createAcl

    AclObject createAcl(AclObject object, boolean validateUnknown, AttributeView attributeView) throws com.documentum.fc.common.DfException
    Create ACL object with type and attributes.
    Parameters:
      `object` - The ACL object with type and attributes
      `validateUnknown` - Indicate if to validate unknown attribute names; TRUE to validate and error occurs if there are unresolved attribute names; FALSE to ignore unresolved attribute names;
      `attributeView` - the attribute view on te result
    Returns:
      The ACL object with ID and type only
    Throws:
      `com.documentum.fc.common.DfException` - dfc exception during operation

  - ### updateAcl

    AclObject updateAcl(AclObject object, boolean validateUnknown, boolean ignoreUnmodified) throws com.documentum.fc.common.DfException
    Update ACL object with attributes.
    Parameters:
      `object` - The ACL object with attributes
      `validateUnknown` - Indicate if to validate unknown attribute names; TRUE to validate and error occurs if there are unresolved attribute names; FALSE to ignore unresolved attribute names;
      `ignoreUnmodified` - Indicate if to ignore value-not-modified attributes; if TRUE, server compare all attribute values and ignores attributes that their values are not changed; if FALSE, server enforces to update all attributes in the request body regardless of their values;
    Returns:
      The ACL object
    Throws:
      `com.documentum.fc.common.DfException` - dfc exception during operation

  - ### updatePermissionSet

    PermissionSetObject updatePermissionSet(String objectId, PermissionSetObject permissionSetObject) throws com.documentum.fc.common.DfException
    Update the object permission set.
    Parameters:
      `objectId` - The object id of sysobejct
      `permissionSetObject` - The object of permission set
    Returns:
      the updated permission set object
    Throws:
      `com.documentum.fc.common.DfException` - dfc exception during operation

  - ### getPermissionSet

    PermissionSetObject getPermissionSet(String objectId, AttributeView attributeView) throws com.documentum.fc.common.DfException
    Get the permission set of an specified sysobject.
    Parameters:
      `objectId` - the object id of the specified sysobject
      `attributeView` - the attribute view on the result
    Returns:
      the permissions the permission set object
    Throws:
      `com.documentum.fc.common.DfException` - dfc exception during operation

  - ### getUserPermission

    AccessorPermission getUserPermission(String objectId, String accessor) throws com.documentum.fc.common.DfException
    Get the grant permissions to an specified sysobject for some user or group
    Parameters:
      `objectId` - the object id of a specified sysobject
      `accessor` - the user or group name
    Returns:
      user permissions
    Throws:
      `com.documentum.fc.common.DfException` - dfc exception during operation

  - ### deleteAcl

    void deleteAcl(String objectId, boolean forceDelete) throws com.documentum.fc.common.DfException
    Delete an ACL
    Parameters:
      `objectId` - The object id of acl
      `forceDelete` - Indicates whether to destroy the ACL object even if it is referenced by other objects in the repository. TRUE - destroy the ACL object even if it is referenced, and only the super user has the permission to do force delete on an ACL; FALSE - do not destroy the ACL object if it is referenced by other objects; The default value is FALSE, and an exception will be thrown if the ACL is referenced by other objects.
    Throws:
      `com.documentum.fc.common.DfException` - dfc exception during operation