Index: jackrabbit-core/src/main/java/org/apache/jackrabbit/core/security/authorization/principalbased/ACLTemplate.java IDEA additional info: Subsystem: com.intellij.openapi.diff.impl.patch.CharsetEP <+>UTF-8 =================================================================== --- jackrabbit-core/src/main/java/org/apache/jackrabbit/core/security/authorization/principalbased/ACLTemplate.java (revision 1798476) +++ jackrabbit-core/src/main/java/org/apache/jackrabbit/core/security/authorization/principalbased/ACLTemplate.java (revision ) @@ -217,6 +217,11 @@ } } + @Override + public boolean isMultiValueRestriction(String restrictionName) throws RepositoryException { + return false; + } + /** * Known restrictions are: *
\ No newline at end of file
Index: jackrabbit-core/src/main/java/org/apache/jackrabbit/core/security/authorization/UnmodifiableAccessControlList.java
IDEA additional info:
Subsystem: com.intellij.openapi.diff.impl.patch.CharsetEP
<+>UTF-8
===================================================================
--- jackrabbit-core/src/main/java/org/apache/jackrabbit/core/security/authorization/UnmodifiableAccessControlList.java	(revision 1798476)
+++ jackrabbit-core/src/main/java/org/apache/jackrabbit/core/security/authorization/UnmodifiableAccessControlList.java	(revision )
@@ -143,6 +143,11 @@
         }
     }
 
+    @Override
+    public boolean isMultiValueRestriction(String restrictionName) throws RepositoryException {
+        return false;
+    }
+
     /**
      * @see org.apache.jackrabbit.api.security.JackrabbitAccessControlList#isEmpty()
      */
\ No newline at end of file
Index: jackrabbit-core/src/main/java/org/apache/jackrabbit/core/security/authorization/acl/ACLTemplate.java
IDEA additional info:
Subsystem: com.intellij.openapi.diff.impl.patch.CharsetEP
<+>UTF-8
===================================================================
--- jackrabbit-core/src/main/java/org/apache/jackrabbit/core/security/authorization/acl/ACLTemplate.java	(revision 1798476)
+++ jackrabbit-core/src/main/java/org/apache/jackrabbit/core/security/authorization/acl/ACLTemplate.java	(revision )
@@ -354,6 +354,11 @@
         }
     }
 
+    @Override
+    public boolean isMultiValueRestriction(String restrictionName) throws RepositoryException {
+        return false;
+    }
+
     /**
      * The only known restriction is:
      * 
Index: jackrabbit-jcr2spi/src/main/java/org/apache/jackrabbit/jcr2spi/security/authorization/jackrabbit/acl/AccessControlListImpl.java
IDEA additional info:
Subsystem: com.intellij.openapi.diff.impl.patch.CharsetEP
<+>UTF-8
===================================================================
--- jackrabbit-jcr2spi/src/main/java/org/apache/jackrabbit/jcr2spi/security/authorization/jackrabbit/acl/AccessControlListImpl.java	(revision 1798476)
+++ jackrabbit-jcr2spi/src/main/java/org/apache/jackrabbit/jcr2spi/security/authorization/jackrabbit/acl/AccessControlListImpl.java	(revision )
@@ -201,6 +201,11 @@
     }
 
     @Override
+    public boolean isMultiValueRestriction(String restrictionName) throws RepositoryException {
+        return false;
+    }
+
+    @Override
     public void orderBefore(AccessControlEntry srcEntry,
                             AccessControlEntry destEntry) throws AccessControlException,
             UnsupportedRepositoryOperationException, RepositoryException {
Index: jackrabbit-api/src/main/java/org/apache/jackrabbit/api/security/JackrabbitAccessControlList.java
IDEA additional info:
Subsystem: com.intellij.openapi.diff.impl.patch.CharsetEP
<+>UTF-8
===================================================================
--- jackrabbit-api/src/main/java/org/apache/jackrabbit/api/security/JackrabbitAccessControlList.java	(revision 1798476)
+++ jackrabbit-api/src/main/java/org/apache/jackrabbit/api/security/JackrabbitAccessControlList.java	(revision )
@@ -57,6 +57,21 @@
     int getRestrictionType(String restrictionName) throws RepositoryException;
 
     /**
+     * Returns true if the restriction is multivalued; false
+     * otherwise. If an given implementation doesn't support multivalued restrictions,
+     * this method always returns false.
+     *
+     * @param restrictionName Any of the restriction names retrieved from
+     * {@link #getRestrictionNames()}.
+     * @return true if the restriction is multivalued; false
+     * if the restriction with the given name is single value or if the implementation
+     * doesn't support multivalued restrictions, this method always returns false.
+     * @throws RepositoryException If an error occurs.
+     * @see #addEntry(Principal, Privilege[], boolean, Map, Map)
+     */
+    boolean isMultiValueRestriction(String restrictionName) throws RepositoryException;
+
+    /**
      * Returns true if this policy does not yet define any
      * entries.
      *