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:
AccessControlList,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 Privilege[] privileges, boolean isAllow, @Nullable Map<String,Value> restrictions)booleanaddEntry(@NotNull Principal principal, @NotNull Privilege[] privileges, boolean isAllow, @Nullable Map<String,Value> restrictions, @Nullable Map<String,Value[]> mvRestrictions)booleanequals(Object obj)@NotNull List<org.apache.jackrabbit.api.security.JackrabbitAccessControlEntry>getEntries()@NotNull RestrictionProvidergetRestrictionProvider()inthashCode()voidorderBefore(@NotNull AccessControlEntry srcEntry, @Nullable AccessControlEntry destEntry)voidremoveAccessControlEntry(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(AccessControlEntry ace) throws AccessControlException
- Throws:
AccessControlException
-
addEntry
public boolean addEntry(@NotNull @NotNull Principal principal, @NotNull @NotNull Privilege[] privileges, boolean isAllow, @Nullable @Nullable Map<String,Value> restrictions) throws AccessControlException- Specified by:
addEntryin interfaceorg.apache.jackrabbit.api.security.JackrabbitAccessControlList- Overrides:
addEntryin classAbstractAccessControlList- Throws:
AccessControlException
-
addEntry
public boolean addEntry(@NotNull @NotNull Principal principal, @NotNull @NotNull Privilege[] privileges, boolean isAllow, @Nullable @Nullable Map<String,Value> restrictions, @Nullable @Nullable Map<String,Value[]> mvRestrictions) throws AccessControlException- Throws:
AccessControlException
-
orderBefore
public void orderBefore(@NotNull @NotNull AccessControlEntry srcEntry, @Nullable @Nullable AccessControlEntry destEntry) throws AccessControlException- Throws:
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
-
-