Interface ContentPolicyManager


@ProviderType public interface ContentPolicyManager
Content Policy Manager API.
  • Method Details

    • getPolicy

      @Nullable ContentPolicy getPolicy(@Nonnull ComponentContext componentContext)
      Get the ContentPolicy for the given ComponentContext.
      Parameters:
      componentContext - The mandatory component context to get the content policy for.
      Returns:
      The content policy for the given component context or null if none is configured.
      Throws:
      IllegalArgumentException - This exception is thrown, if the given component context is null.
    • getPolicy

      @Nullable ContentPolicy getPolicy(@Nonnull Resource contentResource)
      Get the ContentPolicy for the given Resource.
      Parameters:
      contentResource - The mandatory resource to get the content policy for.
      Returns:
      The content policy for the given resource or null if none is configured.
      Throws:
      IllegalArgumentException - This exception is thrown, if the given resource is null.
    • getPolicy

      @Nullable ContentPolicy getPolicy(@Nonnull Resource contentResource, @Nullable SlingHttpServletRequest request)
      Get the ContentPolicy for the given Resource.
      Parameters:
      contentResource - The mandatory resource to get the content policy for.
      request - Request from which to read specific attributes and parameters. Allows to resolve delegated policy resources
      Returns:
      The content policy for the given resource or null if none is configured.
      Throws:
      IllegalArgumentException - This exception is thrown, if the given resource is null.
    • getPolicies

      List<ContentPolicy> getPolicies(String path)
      Get the list of policies for the given path
      Parameters:
      path - Path from where to start searching for policies
      Returns:
      the list of policies for the given path.
    • getPolicies

      List<ContentPolicy> getPolicies(String path, String policyResourceType)
      Get the list of policies for the given path. Here you can limit search to the given policy resource type Policy Resource Types are relative
      Parameters:
      path - Path from where to start searching for policies
      policyResourceType - Sling resource type associated with the policies
      Returns:
      the list of policies for the given path.
    • copyPolicy

      ContentPolicy copyPolicy(ContentPolicy originalPolicy, String newTitle, String newDescription)
      Parameters:
      originalPolicy - policy to be copied
      newTitle - The title of the target policy
      newDescription - The Description o the target policy
      Returns:
      The policy with new Description.
    • getPolicyMapping

      ContentPolicyMapping getPolicyMapping(Resource resource)
      Parameters:
      resource - The resource for which policy mapping to be fetched
      Returns:
      ContentPolicyMapping
    • getPolicyMappings

      List<ContentPolicyMapping> getPolicyMappings(ContentPolicy contentPolicy)
      Parameters:
      contentPolicy - Policy for which policy mapping to be fetched.
      Returns:
      The List of ContentPolicyMapping
    • getPolicyLocation

      String getPolicyLocation(Resource resource)
      Returns the policy location for the given resource Policies are located following their respective component path location under the settings/wcm/policies directory The returned string is an absolute path to the directory that should contain policies for the given resource This function only returns a path if the given resource is contained in a page making use of the editable template If this requirement is not meet the returned string is null
      Parameters:
      resource - Resource contained in a page making use of an editable template
      Returns:
      The path to the directory that contains the policies for the given resource
    • getTemplates

      List<Template> getTemplates(String policyAbsolutePath)
      Get the templates a policy is used in
      Parameters:
      policyAbsolutePath - absolute path to policy
      Returns:
      list of templates where the policy is used in
    • getTemplates

      @Deprecated List<Template> getTemplates(String policyAbsolutePath, @Nullable Predicate filter)
      Get a filtered list of templates a policy is used in
      Parameters:
      policyAbsolutePath - absolute path to policy
      filter - for the templates
      Returns:
      list of templates where the policy is used in
    • getTemplates

      List<Template> getTemplates(String policyAbsolutePath, @Nullable Predicate filter)
      Get a filtered list of templates a policy is used in
      Parameters:
      policyAbsolutePath - absolute path to policy
      filter - for the templates
      Returns:
      list of templates where the policy is used in
    • isPolicyUsed

      boolean isPolicyUsed(String policyAbsolutePath, @Nullable Predicate filter)
      Verifies if there is any Template matching the given predicate and using the policy with given path
      Parameters:
      policyAbsolutePath - a String absolute path to policy
      filter - a Predicate used to filter the templates on which lookup is performed; if the filter is null, no filtering will be performed
      Returns:
      true if there is any Template using the Policy with policyAbsolutePath path and is matching the filter, if provided.
    • isPolicyUsed

      @Deprecated boolean isPolicyUsed(String policyAbsolutePath, @Nullable Predicate filter)
      Verifies if there is any Template matching the given predicate and using the policy with given path
      Parameters:
      policyAbsolutePath - a String absolute path to policy
      filter - a Predicate used to filter the templates on which lookup is performed; if the filter is null, no filtering will be performed
      Returns:
      true if there is any Template using the Policy with policyAbsolutePath path and is matching the filter, if provided.
      Since:
      1.7