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 theJackrabbitAccessControlList
interface that only allows for reading. The write methods throw anAccessControlException
.
-
-
Constructor Summary
Constructors Constructor Description ImmutableACL(@NotNull AbstractAccessControlList accessControlList)
Construct a newImmutableACL
from the givenAbstractAccessControlList
.ImmutableACL(@Nullable java.lang.String oakPath, @NotNull java.util.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 boolean
addEntry(@NotNull java.security.Principal principal, @NotNull javax.jcr.security.Privilege[] privileges, boolean isAllow, @Nullable java.util.Map<java.lang.String,javax.jcr.Value> restrictions)
boolean
addEntry(@NotNull java.security.Principal principal, @NotNull javax.jcr.security.Privilege[] privileges, boolean isAllow, @Nullable java.util.Map<java.lang.String,javax.jcr.Value> restrictions, @Nullable java.util.Map<java.lang.String,javax.jcr.Value[]> mvRestrictions)
boolean
equals(java.lang.Object obj)
@NotNull java.util.List<org.apache.jackrabbit.api.security.JackrabbitAccessControlEntry>
getEntries()
@NotNull RestrictionProvider
getRestrictionProvider()
int
hashCode()
void
orderBefore(@NotNull javax.jcr.security.AccessControlEntry srcEntry, @Nullable javax.jcr.security.AccessControlEntry destEntry)
void
removeAccessControlEntry(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 java.lang.String oakPath, @NotNull @NotNull java.util.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
- TheNamePathMapper
used for conversion.
-
ImmutableACL
public ImmutableACL(@NotNull @NotNull AbstractAccessControlList accessControlList)
Construct a newImmutableACL
from 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 java.security.Principal principal, @NotNull @NotNull javax.jcr.security.Privilege[] privileges, boolean isAllow, @Nullable @Nullable java.util.Map<java.lang.String,javax.jcr.Value> restrictions) throws javax.jcr.security.AccessControlException
- Specified by:
addEntry
in interfaceorg.apache.jackrabbit.api.security.JackrabbitAccessControlList
- Overrides:
addEntry
in classAbstractAccessControlList
- Throws:
javax.jcr.security.AccessControlException
-
addEntry
public boolean addEntry(@NotNull @NotNull java.security.Principal principal, @NotNull @NotNull javax.jcr.security.Privilege[] privileges, boolean isAllow, @Nullable @Nullable java.util.Map<java.lang.String,javax.jcr.Value> restrictions, @Nullable @Nullable java.util.Map<java.lang.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 java.util.List<org.apache.jackrabbit.api.security.JackrabbitAccessControlEntry> getEntries()
- Specified by:
getEntries
in classAbstractAccessControlList
-
getRestrictionProvider
@NotNull public @NotNull RestrictionProvider getRestrictionProvider()
- Specified by:
getRestrictionProvider
in classAbstractAccessControlList
-
hashCode
public int hashCode()
- Overrides:
hashCode
in classjava.lang.Object
-
equals
public boolean equals(java.lang.Object obj)
- Overrides:
equals
in classjava.lang.Object
-
-