Class AuthorizableResourceProvider
java.lang.Object
org.apache.sling.spi.resource.provider.ResourceProvider<Object>
org.apache.sling.jackrabbit.usermanager.impl.resource.AuthorizableResourceProvider
- All Implemented Interfaces:
SystemUserManagerPaths
public class AuthorizableResourceProvider
extends org.apache.sling.spi.resource.provider.ResourceProvider<Object>
implements SystemUserManagerPaths
Resource Provider implementation for jackrabbit UserManager resources.
-
Nested Class Summary
Nested ClassesModifier and TypeClassDescriptionprotected static interface
Interface for lambda expressions to do work on a resolved authorizable + optional relative pathstatic @interface
protected static interface
Interface for lambda expressions to do work on a resolved principal -
Field Summary
FieldsModifier and TypeFieldDescriptionstatic final String
static final String
Deprecated.no longer used.static final String
Deprecated.no longer used.static final String
Deprecated.no longer used.static final String
Deprecated.no longer used.static final String
Deprecated.no longer used.Fields inherited from class org.apache.sling.spi.resource.provider.ResourceProvider
AUTH_ADMIN, AUTH_CLONE, AUTH_SERVICE_BUNDLE, AUTHENTICATE_LAZY, AUTHENTICATE_NO, AUTHENTICATE_REQUIRED, MODE_OVERLAY, MODE_PASSTHROUGH, PROPERTY_ADAPTABLE, PROPERTY_ATTRIBUTABLE, PROPERTY_AUTHENTICATE, PROPERTY_MODE, PROPERTY_MODIFIABLE, PROPERTY_NAME, PROPERTY_REFRESHABLE, PROPERTY_ROOT, PROPERTY_USE_RESOURCE_ACCESS_SECURITY, RESOURCE_TYPE_SYNTHETIC
-
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionprotected void
protected List<org.apache.sling.api.resource.Resource>
filterPropertyContainers
(String relPath, org.apache.jackrabbit.api.security.user.Authorizable authorizable, org.apache.sling.api.resource.Resource r) Filter the resource children to return only the resources that are nested property containersThe path prefix (before the id) for groupsThe root path for all group resourcesgetPropertyNames
(String relPath, org.apache.jackrabbit.api.security.user.Authorizable authorizable) org.apache.sling.api.resource.Resource
getResource
(org.apache.sling.spi.resource.provider.ResolveContext<Object> ctx, String path, org.apache.sling.spi.resource.provider.ResourceContext resourceContext, org.apache.sling.api.resource.Resource parent) The root path for usermanager resourcesThe path prefix (before the id) for usersThe root path for all user resourcesIterator<org.apache.sling.api.resource.Resource>
listChildren
(org.apache.sling.spi.resource.provider.ResolveContext<Object> ctx, org.apache.sling.api.resource.Resource parent) protected <T> T
maybeDoAuthorizableWork
(@NotNull org.apache.sling.spi.resource.provider.ResolveContext<Object> ctx, @NotNull String path, @NotNull AuthorizableResourceProvider.AuthorizableWorker<T> authorizableWorker, @Nullable AuthorizableResourceProvider.PrincipalWorker<T> principalWorker) If the path resolves to a user or group (with optional relPath suffix) then invoke the worker to do some work.Methods inherited from class org.apache.sling.spi.resource.provider.ResourceProvider
adaptTo, authenticate, commit, copy, create, delete, getAttribute, getAttributeNames, getParent, getProviderContext, getQueryLanguageProvider, hasChanges, isLive, logout, move, orderBefore, refresh, revert, start, stop, update
-
Field Details
-
DEFAULT_SYSTEM_USER_MANAGER_PATH
- See Also:
-
SYSTEM_USER_MANAGER_PATH
Deprecated.no longer used. UseSystemUserManagerPaths
service instead.- See Also:
-
SYSTEM_USER_MANAGER_USER_PATH
Deprecated.no longer used. UseSystemUserManagerPaths
service instead.- See Also:
-
SYSTEM_USER_MANAGER_GROUP_PATH
Deprecated.no longer used. UseSystemUserManagerPaths
service instead.- See Also:
-
SYSTEM_USER_MANAGER_USER_PREFIX
Deprecated.no longer used. UseSystemUserManagerPaths
service instead.- See Also:
-
SYSTEM_USER_MANAGER_GROUP_PREFIX
Deprecated.no longer used. UseSystemUserManagerPaths
service instead.- See Also:
-
-
Constructor Details
-
AuthorizableResourceProvider
public AuthorizableResourceProvider()
-
-
Method Details
-
activate
-
getRootPath
Description copied from interface:SystemUserManagerPaths
The root path for usermanager resources- Specified by:
getRootPath
in interfaceSystemUserManagerPaths
-
getUsersPath
Description copied from interface:SystemUserManagerPaths
The root path for all user resources- Specified by:
getUsersPath
in interfaceSystemUserManagerPaths
-
getUserPrefix
Description copied from interface:SystemUserManagerPaths
The path prefix (before the id) for users- Specified by:
getUserPrefix
in interfaceSystemUserManagerPaths
-
getGroupsPath
Description copied from interface:SystemUserManagerPaths
The root path for all group resources- Specified by:
getGroupsPath
in interfaceSystemUserManagerPaths
-
getGroupPrefix
Description copied from interface:SystemUserManagerPaths
The path prefix (before the id) for groups- Specified by:
getGroupPrefix
in interfaceSystemUserManagerPaths
-
getResource
public org.apache.sling.api.resource.Resource getResource(org.apache.sling.spi.resource.provider.ResolveContext<Object> ctx, String path, org.apache.sling.spi.resource.provider.ResourceContext resourceContext, org.apache.sling.api.resource.Resource parent) - Specified by:
getResource
in classorg.apache.sling.spi.resource.provider.ResourceProvider<Object>
-
maybeDoAuthorizableWork
protected <T> T maybeDoAuthorizableWork(@NotNull @NotNull org.apache.sling.spi.resource.provider.ResolveContext<Object> ctx, @NotNull @NotNull String path, @NotNull @NotNull AuthorizableResourceProvider.AuthorizableWorker<T> authorizableWorker, @Nullable @Nullable AuthorizableResourceProvider.PrincipalWorker<T> principalWorker) If the path resolves to a user or group (with optional relPath suffix) then invoke the worker to do some work. -
getPropertyNames
-
listChildren
public Iterator<org.apache.sling.api.resource.Resource> listChildren(org.apache.sling.spi.resource.provider.ResolveContext<Object> ctx, org.apache.sling.api.resource.Resource parent) - Specified by:
listChildren
in classorg.apache.sling.spi.resource.provider.ResourceProvider<Object>
-
filterPropertyContainers
protected List<org.apache.sling.api.resource.Resource> filterPropertyContainers(String relPath, org.apache.jackrabbit.api.security.user.Authorizable authorizable, org.apache.sling.api.resource.Resource r) Filter the resource children to return only the resources that are nested property containers- Parameters:
relPath
- the relative path to start fromauthorizable
- the user or groupr
- the resource to filter the children of- Returns:
- list of resources that are property containers
-