Class AbstractResourceCollector
- java.lang.Object
-
- org.apache.sling.servlets.resolver.internal.helper.AbstractResourceCollector
-
- Direct Known Subclasses:
NamedScriptResourceCollector,ResourceCollector
public abstract class AbstractResourceCollector extends Object
TheResourceCollectorclass provides a single public method -#getServlets(ResourceResolver,List- which is used to find an ordered collection of) Resourceinstances which may be used to find a servlet or script to handle a request to the given resource.
-
-
Field Summary
Fields Modifier and Type Field Description protected StringbaseResourceTypeprotected static StringCACHE_KEY_CHILDREN_LISTprotected static StringCACHE_KEY_RESOURCESprotected String[]executionPathsprotected Stringextensionprotected inthashCodeprotected StringresourceSuperTypeprotected StringresourceTypeprotected booleanuseResourceCaching
-
Method Summary
All Methods Static Methods Instance Methods Abstract Methods Concrete Methods Modifier and Type Method Description protected voidaddWeightedResource(Set<org.apache.sling.servlets.resolver.internal.helper.WeightedResource> resources, org.apache.sling.api.resource.Resource resource, int numSelectors, int methodPrefixWeight)Creates aWeightedResourceand adds it to the set of resources.static voidclearCache(@NotNull org.apache.sling.api.resource.ResourceResolver resolver)booleanequals(Object obj)protected @NotNull org.apache.sling.api.resource.ResourcegetResource(@NotNull org.apache.sling.api.resource.ResourceResolver resolver, @NotNull String path, boolean useCaching)Returns a resource for the givenpath.static @Nullable org.apache.sling.api.resource.ResourcegetResourceOrNull(@NotNull org.apache.sling.api.resource.ResourceResolver resolver, @NotNull String path, boolean useCaching)Resolvers a resource or null if there is no resource resolved from the given path.Collection<org.apache.sling.api.resource.Resource>getServlets(org.apache.sling.api.resource.ResourceResolver resolver, List<String> scriptExtensions)protected abstract voidgetWeightedResources(Set<org.apache.sling.servlets.resolver.internal.helper.WeightedResource> resources, org.apache.sling.api.resource.Resource location)inthashCode()protected booleanstringEquals(String s1, String s2)Helper method to compare two strings which can possibly benull
-
-
-
Field Detail
-
CACHE_KEY_CHILDREN_LIST
protected static final String CACHE_KEY_CHILDREN_LIST
-
CACHE_KEY_RESOURCES
protected static final String CACHE_KEY_RESOURCES
-
baseResourceType
protected final String baseResourceType
-
extension
protected final String extension
-
hashCode
protected int hashCode
-
resourceType
protected final String resourceType
-
resourceSuperType
protected final String resourceSuperType
-
executionPaths
protected final String[] executionPaths
-
useResourceCaching
protected boolean useResourceCaching
-
-
Method Detail
-
getServlets
public final Collection<org.apache.sling.api.resource.Resource> getServlets(org.apache.sling.api.resource.ResourceResolver resolver, List<String> scriptExtensions)
-
getWeightedResources
protected abstract void getWeightedResources(Set<org.apache.sling.servlets.resolver.internal.helper.WeightedResource> resources, org.apache.sling.api.resource.Resource location)
-
addWeightedResource
protected final void addWeightedResource(Set<org.apache.sling.servlets.resolver.internal.helper.WeightedResource> resources, org.apache.sling.api.resource.Resource resource, int numSelectors, int methodPrefixWeight)
Creates aWeightedResourceand adds it to the set of resources. The number of resources already present in the set is used as the ordinal number for the newly created resource.- Parameters:
resources- The set of resource to which theWeightedResourceis added.resource- TheResourceon which theWeightedResourceis based.numSelectors- The number of request selectors which are matched by the name of the resource.methodPrefixWeight- The method/prefix weight assigned to the resource according to the resource name.
-
getResource
@NotNull protected final @NotNull org.apache.sling.api.resource.Resource getResource(@NotNull @NotNull org.apache.sling.api.resource.ResourceResolver resolver, @NotNull @NotNull String path, boolean useCaching)Returns a resource for the givenpath. If no resource exists at the given path aSyntheticResourceis returned.- Parameters:
resolver- TheResourceResolverused to access the resource.path- The absolute path of the resource to return.- Returns:
- The actual resource at the given
pathor a synthetic resource representing the path location.
-
stringEquals
protected boolean stringEquals(String s1, String s2)
Helper method to compare two strings which can possibly benull
-
clearCache
public static void clearCache(@NotNull @NotNull org.apache.sling.api.resource.ResourceResolver resolver)
-
getResourceOrNull
@Nullable public static @Nullable org.apache.sling.api.resource.Resource getResourceOrNull(@NotNull @NotNull org.apache.sling.api.resource.ResourceResolver resolver, @NotNull @NotNull String path, boolean useCaching)Resolvers a resource or null if there is no resource resolved from the given path.- Parameters:
resolver- the resourceResolver to usepath- the path to the resourceuseCaching- indicates if caching should be used- Returns:
- a resource or null if no resource can be resolved
-
-