java.lang.Object
org.exoplatform.services.jcr.webdav.command.acl.ACLProperties

public class ACLProperties extends Object
Created by The eXo Platform SAS. Utility class to simplify operations with ACL properties of JCR nodes for PROPFIND method.
Version:
$
Author:
Vitaliy Gulyy - gavrikvetal@gmail.com
  • Field Summary

    Fields
    Modifier and Type
    Field
    Description
    static final QName
    Defines the name of the element corresponding to a property that the set of privileges to be either granted or denied to a single principal.
    static final QName
    Defines the name of the element corresponding to a protected property that specifies the list of access control entries.
    static final QName
    Defines the name of the element corresponding to a property that can be either an aggregate privilege that contains the entire set of privileges that can be applied to the resource or an aggregate principal that contains the entire set of principals.
    static final QName
    Defines the name of the element containing privileges to be denied.
    static final QName
    Defines the name of the element containing privileges to be granted.
    static final QName
    Defines the name of the element corresponding to a property which is used to uniquely identify a principal.
    static final QName
    Defines the name of the element corresponding to a property which identifies the principal to which this ACE applies.
    static final QName
    Defines the name of the element containing privilege's name.
    static final QName
    Defines the name of the element corresponding to read privilege which in current implementation aggregate: READ permission.
    static final QName
    Defines the name of the element corresponding to write privilege which in current implementation aggregate: ADD_NODE, SET_PROPERTY, REMOVE permissions.
  • Constructor Summary

    Constructors
    Constructor
    Description
     
  • Method Summary

    Modifier and Type
    Method
    Description
    static org.exoplatform.common.util.HierarchicalProperty
    getACL(org.exoplatform.services.jcr.impl.core.NodeImpl node)
    Gets AccessControlList and transform it to DAV:acl property view represented by a HierarchicalProperty instance.
    static org.exoplatform.common.util.HierarchicalProperty
    getOwner(org.exoplatform.services.jcr.impl.core.NodeImpl node)
    Transform owner got from node's AccessControlList to tree like HierarchicalProperty instance to use in PROPFIND response body

    Methods inherited from class java.lang.Object

    clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
  • Field Details

    • ACL

      public static final QName ACL
      Defines the name of the element corresponding to a protected property that specifies the list of access control entries. More details can be found here.
    • ACE

      public static final QName ACE
      Defines the name of the element corresponding to a property that the set of privileges to be either granted or denied to a single principal. More details can be found here.
    • PRINCIPAL

      public static final QName PRINCIPAL
      Defines the name of the element corresponding to a property which identifies the principal to which this ACE applies. More details can be found here and here.
    • ALL

      public static final QName ALL
      Defines the name of the element corresponding to a property that can be either an aggregate privilege that contains the entire set of privileges that can be applied to the resource or an aggregate principal that contains the entire set of principals. More details can be found here.
    • HREF

      public static final QName HREF
      Defines the name of the element corresponding to a property which is used to uniquely identify a principal. More details can be found here.
    • PRIVILEGE

      public static final QName PRIVILEGE
      Defines the name of the element containing privilege's name. More details can be found here.
    • GRANT

      public static final QName GRANT
      Defines the name of the element containing privileges to be granted. More details can be found here.
    • DENY

      public static final QName DENY
      Defines the name of the element containing privileges to be denied. More details can be found here.
    • WRITE

      public static final QName WRITE
      Defines the name of the element corresponding to write privilege which in current implementation aggregate: ADD_NODE, SET_PROPERTY, REMOVE permissions. More details can be found here.
    • READ

      public static final QName READ
      Defines the name of the element corresponding to read privilege which in current implementation aggregate: READ permission. More details can be found here.
  • Constructor Details

    • ACLProperties

      public ACLProperties()
  • Method Details

    • getACL

      public static org.exoplatform.common.util.HierarchicalProperty getACL(org.exoplatform.services.jcr.impl.core.NodeImpl node) throws javax.jcr.RepositoryException
      Gets AccessControlList and transform it to DAV:acl property view represented by a HierarchicalProperty instance.
      Parameters:
      node - - NodeImpl from which we are to get an ACL
      Returns:
      HierarchicalProperty - tree like structure corresponding to an DAV:acl property
      Throws:
      javax.jcr.RepositoryException
    • getOwner

      public static org.exoplatform.common.util.HierarchicalProperty getOwner(org.exoplatform.services.jcr.impl.core.NodeImpl node) throws javax.jcr.RepositoryException
      Transform owner got from node's AccessControlList to tree like HierarchicalProperty instance to use in PROPFIND response body
      Parameters:
      node -
      Returns:
      HierarchicalProperty representation of node owner
      Throws:
      javax.jcr.RepositoryException