Class SearchCatalogAccessPolicy

java.lang.Object
com.broadleafcommerce.search.api.domain.accesspolicy.SearchCatalogAccessPolicy
All Implemented Interfaces:
com.broadleafcommerce.data.tracking.core.ContextStateAware, Serializable

public class SearchCatalogAccessPolicy extends Object implements com.broadleafcommerce.data.tracking.core.ContextStateAware, Serializable
Represents a set of rules concerning what Catalog entities can be accessed by the specified users. This will cause entities within the related catalog to be filtered for requests besides the normal data tracking filtration.
Author:
Nathan Moore (nathandmoore)
See Also:
  • Constructor Details

    • SearchCatalogAccessPolicy

      public SearchCatalogAccessPolicy()
  • Method Details

    • getId

      public String getId()
      Id for the policy.
      Returns:
      Id for the policy.
    • getName

      public String getName()
      Name of the policy.
      Returns:
      Name of the policy.
    • getActiveStartDate

      public Instant getActiveStartDate()
      The date from which the policy should be active.
      Returns:
      The date from which the policy should be active.
    • getActiveEndDate

      public Instant getActiveEndDate()
      The date until which the policy should be active. Must be after activeStartDate. null indicates the policy will not stop being active after activeStartDate.
      Returns:
      The date until which the policy should be active.
    • getTargetType

      public String getTargetType()
      The target type denoting how to restrict this catalog access policy.
      Returns:
      the target type of the catalog access policy.
      See Also:
    • getTargetCatalogIds

      public List<String> getTargetCatalogIds()
      List of the target Catalog.getId() that this catalog access policy applies to. This is only used when getTargetType() is DefaultCatalogAccessPolicyTargetType.CATALOG.
      Returns:
      the list of catalog ids to target.
    • getMatchRule

      public String getMatchRule()
      Match rule to evaluate against a context object containing user and request data. This rule is a SpEL expression.
      Returns:
      the match rule to evaluate.
    • getContextState

      public com.broadleafcommerce.data.tracking.core.filtering.business.domain.ContextState getContextState()
      A subset of Tracking information to expose the context state for this object.
      Specified by:
      getContextState in interface com.broadleafcommerce.data.tracking.core.ContextStateAware
      Returns:
      a subset of Tracking information to expose the context state for this object
    • getFilterRules

      public Map<String,String> getFilterRules()
      Filters that should be applied to catalog requests. They key specifies the type, e.g, PRODUCT or CATEGORY. The rule value for each entry should be a valid RSQL string.
      Returns:
      Rules that should be applied to cause the inclusion of items.
    • setId

      public void setId(String id)
      Id for the policy.
      Parameters:
      id - Id for the policy.
    • setName

      public void setName(String name)
      Name of the policy.
      Parameters:
      name - Name of the policy.
    • setActiveStartDate

      public void setActiveStartDate(Instant activeStartDate)
      The date from which the policy should be active.
      Parameters:
      activeStartDate - The date from which the policy should be active.
    • setActiveEndDate

      public void setActiveEndDate(Instant activeEndDate)
      The date until which the policy should be active. Must be after activeStartDate. null indicates the policy will not stop being active after activeStartDate.
      Parameters:
      activeEndDate - The date until which the policy should be active.
    • setTargetType

      public void setTargetType(String targetType)
      The target type denoting how to restrict this catalog access policy.
      Parameters:
      targetType - the target type of the catalog access policy.
      See Also:
    • setTargetCatalogIds

      public void setTargetCatalogIds(List<String> targetCatalogIds)
      List of the target Catalog.getId() that this catalog access policy applies to. This is only used when getTargetType() is DefaultCatalogAccessPolicyTargetType.CATALOG.
      Parameters:
      targetCatalogIds - the list of catalog ids to target.
    • setMatchRule

      public void setMatchRule(String matchRule)
      Match rule to evaluate against a context object containing user and request data. This rule is a SpEL expression.
      Parameters:
      matchRule - the match rule to evaluate.
    • setContextState

      public void setContextState(com.broadleafcommerce.data.tracking.core.filtering.business.domain.ContextState contextState)
      A subset of Tracking information to expose the context state for this object.
      Specified by:
      setContextState in interface com.broadleafcommerce.data.tracking.core.ContextStateAware
      Parameters:
      contextState - a subset of Tracking information to expose the context state for this object
    • setFilterRules

      public void setFilterRules(Map<String,String> filterRules)
      Filters that should be applied to catalog requests. They key specifies the type, e.g, PRODUCT or CATEGORY. The rule value for each entry should be a valid RSQL string.
      Parameters:
      inclusionFilters - Rules that should be applied to cause the inclusion of items.
    • equals

      public boolean equals(Object o)
      Overrides:
      equals in class Object
    • canEqual

      protected boolean canEqual(Object other)
    • hashCode

      public int hashCode()
      Overrides:
      hashCode in class Object
    • toString

      public String toString()
      Overrides:
      toString in class Object