Class ImmutableACL
- java.lang.Object
-
- org.apache.jackrabbit.oak.spi.security.authorization.accesscontrol.AbstractAccessControlList
-
- org.apache.jackrabbit.oak.spi.security.authorization.accesscontrol.ImmutableACL
-
- All Implemented Interfaces:
javax.jcr.security.AccessControlList,javax.jcr.security.AccessControlPolicy,org.apache.jackrabbit.api.security.JackrabbitAccessControlList,org.apache.jackrabbit.api.security.JackrabbitAccessControlPolicy
public class ImmutableACL extends AbstractAccessControlList
An implementation of theJackrabbitAccessControlListinterface that only allows for reading. The write methods throw anAccessControlException.
-
-
Constructor Summary
Constructors Constructor Description ImmutableACL(@NotNull AbstractAccessControlList accessControlList)Construct a newImmutableACLfrom the givenAbstractAccessControlList.ImmutableACL(@Nullable String oakPath, @NotNull List<? extends org.apache.jackrabbit.api.security.JackrabbitAccessControlEntry> entries, @NotNull RestrictionProvider restrictionProvider, @NotNull org.apache.jackrabbit.oak.namepath.NamePathMapper namePathMapper)Construct a newImmutableACL
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description booleanaddEntry(@NotNull Principal principal, @NotNull javax.jcr.security.Privilege[] privileges, boolean isAllow, @Nullable Map<String,javax.jcr.Value> restrictions)booleanaddEntry(@NotNull Principal principal, @NotNull javax.jcr.security.Privilege[] privileges, boolean isAllow, @Nullable Map<String,javax.jcr.Value> restrictions, @Nullable Map<String,javax.jcr.Value[]> mvRestrictions)booleanequals(Object obj)@NotNull List<org.apache.jackrabbit.api.security.JackrabbitAccessControlEntry>getEntries()@NotNull RestrictionProvidergetRestrictionProvider()inthashCode()voidorderBefore(@NotNull javax.jcr.security.AccessControlEntry srcEntry, @Nullable javax.jcr.security.AccessControlEntry destEntry)voidremoveAccessControlEntry(javax.jcr.security.AccessControlEntry ace)-
Methods inherited from class org.apache.jackrabbit.oak.spi.security.authorization.accesscontrol.AbstractAccessControlList
addAccessControlEntry, addEntry, getAccessControlEntries, getNamePathMapper, getOakPath, getPath, getRestrictionNames, getRestrictionType, isEmpty, isMultiValueRestriction, size
-
-
-
-
Constructor Detail
-
ImmutableACL
public ImmutableACL(@Nullable @Nullable String oakPath, @NotNull @NotNull List<? extends org.apache.jackrabbit.api.security.JackrabbitAccessControlEntry> entries, @NotNull @NotNull RestrictionProvider restrictionProvider, @NotNull @NotNull org.apache.jackrabbit.oak.namepath.NamePathMapper namePathMapper)Construct a newImmutableACL- Parameters:
oakPath- The Oak path of this policy ornull.entries- The access control entries contained in this policy.restrictionProvider- The restriction provider.namePathMapper- TheNamePathMapperused for conversion.
-
ImmutableACL
public ImmutableACL(@NotNull @NotNull AbstractAccessControlList accessControlList)Construct a newImmutableACLfrom the givenAbstractAccessControlList.- Parameters:
accessControlList- The base list
-
-
Method Detail
-
removeAccessControlEntry
public void removeAccessControlEntry(javax.jcr.security.AccessControlEntry ace) throws javax.jcr.security.AccessControlException- Throws:
javax.jcr.security.AccessControlException
-
addEntry
public boolean addEntry(@NotNull @NotNull Principal principal, @NotNull @NotNull javax.jcr.security.Privilege[] privileges, boolean isAllow, @Nullable @Nullable Map<String,javax.jcr.Value> restrictions) throws javax.jcr.security.AccessControlException- Specified by:
addEntryin interfaceorg.apache.jackrabbit.api.security.JackrabbitAccessControlList- Overrides:
addEntryin classAbstractAccessControlList- Throws:
javax.jcr.security.AccessControlException
-
addEntry
public boolean addEntry(@NotNull @NotNull Principal principal, @NotNull @NotNull javax.jcr.security.Privilege[] privileges, boolean isAllow, @Nullable @Nullable Map<String,javax.jcr.Value> restrictions, @Nullable @Nullable Map<String,javax.jcr.Value[]> mvRestrictions) throws javax.jcr.security.AccessControlException- Throws:
javax.jcr.security.AccessControlException
-
orderBefore
public void orderBefore(@NotNull @NotNull javax.jcr.security.AccessControlEntry srcEntry, @Nullable @Nullable javax.jcr.security.AccessControlEntry destEntry) throws javax.jcr.security.AccessControlException- Throws:
javax.jcr.security.AccessControlException
-
getEntries
@NotNull public @NotNull List<org.apache.jackrabbit.api.security.JackrabbitAccessControlEntry> getEntries()
- Specified by:
getEntriesin classAbstractAccessControlList
-
getRestrictionProvider
@NotNull public @NotNull RestrictionProvider getRestrictionProvider()
- Specified by:
getRestrictionProviderin classAbstractAccessControlList
-
-