Class UserTargetFilterInfo

java.lang.Object
com.broadleafcommerce.pricing.domain.UserTargetFilterInfo

public class UserTargetFilterInfo extends Object
This class is used by BasicUserTargetFilterService to allow fine grained control of the user targets an implementation wishes to allow for pricing via configuration. This can be significant for
See Also:
  • Constructor Details

    • UserTargetFilterInfo

      public UserTargetFilterInfo()
  • Method Details

    • isExcludeAllTargetTypes

      public boolean isExcludeAllTargetTypes()
      Setting this property to true will result in no user targeting price lists being considered. It should only be used for installations that do not use user targeted PriceLists (e.g. including typical usages of Account based pricing or CustomerSegment driven sales.
      Returns:
      the list of target types to exclude
    • getIncludedTargetTypes

      public List<String> getIncludedTargetTypes()
      List of included target types. If set, only target types in this list are considered. This list should not be consulted if isExcludeAllTargetTypes() is true.
      Returns:
      the list of target types to exclude
    • getExcludedTargetTypes

      public List<String> getExcludedTargetTypes()
      List of excluded target types. This list is only consulted if the getIncludedTargetTypes() is empty.
      Returns:
      the list of target types to exclude
    • getIncludedTargetValues

      public Map<String,List<String>> getIncludedTargetValues()
      For each type that exists after considering the included and excluded parameters, this property allows fine grained control of applicable values. If the value is empty, all values will be considered valid. This call is especially useful for implementations that use a large number of CustomerSegments but only a few of them apply to Pricing. In this case, they would create an inclusion list for the specific segments.
      Returns:
    • setExcludeAllTargetTypes

      public void setExcludeAllTargetTypes(boolean excludeAllTargetTypes)
      Setting this property to true will result in no user targeting price lists being considered. It should only be used for installations that do not use user targeted PriceLists (e.g. including typical usages of Account based pricing or CustomerSegment driven sales.
      Parameters:
      excludedTargetTypes - the list of types to exclude
    • setIncludedTargetTypes

      public void setIncludedTargetTypes(List<String> includedTargetTypes)
      List of included target types. If set, only target types in this list are considered. This list should not be consulted if isExcludeAllTargetTypes() is true.
      Parameters:
      excludedTargetTypes - the list of types to exclude
    • setExcludedTargetTypes

      public void setExcludedTargetTypes(List<String> excludedTargetTypes)
      List of excluded target types. This list is only consulted if the getIncludedTargetTypes() is empty.
      Parameters:
      excludedTargetTypes - the list of types to exclude
    • setIncludedTargetValues

      public void setIncludedTargetValues(Map<String,List<String>> includedTargetValues)
      For each type that exists after considering the included and excluded parameters, this property allows fine grained control of applicable values. If the value is empty, all values will be considered valid. This call is especially useful for implementations that use a large number of CustomerSegments but only a few of them apply to Pricing. In this case, they would create an inclusion list for the specific segments.
      Parameters:
      includedTargetValues - a map of type to values
    • 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