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
An implementation of the
JackrabbitAccessControlList interface that only
allows for reading. The write methods throw an AccessControlException.-
Constructor Summary
ConstructorsConstructorDescriptionImmutableACL(@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
Modifier and TypeMethodDescriptionbooleanaddEntry(@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) boolean@NotNull List<org.apache.jackrabbit.api.security.JackrabbitAccessControlEntry>@NotNull RestrictionProviderinthashCode()voidorderBefore(@NotNull AccessControlEntry srcEntry, @Nullable AccessControlEntry destEntry) voidMethods inherited from class org.apache.jackrabbit.oak.spi.security.authorization.accesscontrol.AbstractAccessControlList
addAccessControlEntry, addEntry, getAccessControlEntries, getNamePathMapper, getOakPath, getPath, getRestrictionNames, getRestrictionType, isEmpty, isMultiValueRestriction, size
-
Constructor Details
-
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
Construct a newImmutableACLfrom the givenAbstractAccessControlList.- Parameters:
accessControlList- The base list
-
-
Method Details
-
removeAccessControlEntry
- 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, throws AccessControlExceptionValue[]> mvRestrictions) - 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
- Specified by:
getRestrictionProviderin classAbstractAccessControlList
-
hashCode
public int hashCode() -
equals
-