Interface BasePriceableTarget

All Known Implementing Classes:
PriceableTarget, PriceableTargetRef

public interface BasePriceableTarget
Defines the essential properties of a priceable target to make comparisons and shared logic easier between PriceableTarget and PriceableTargetRef.
Since:
Pricing Client 2.0.3
Author:
Nathan Moore (nathandmoore)
See Also:
  • Method Details

    • getTargetId

      String getTargetId()
      Gets the identifier of the target.
      Returns:
      the identifier of the target.
    • setTargetId

      void setTargetId(String id)
      Sets the identifier of the target.
      Parameters:
      id - the identifier of the target.
    • getTargetType

      String getTargetType()
      Gets the type of the target, e.g., SKU or PRICING_KEY.
      Returns:
      the identifier of the target.
    • setTargetType

      void setTargetType(String type)
      Sets the type of the target, e.g., SKU or PRICING_KEY.
      Parameters:
      type - the type of the target.
    • getVendorRef

      String getVendorRef()
      Key to external system indicating that this PriceableTarget is specific to a vendor. This can be populated to support security controls based on a vendor based claim.
      Returns:
      a reference to a vendor (e.g. vendorId or vendorCode)
    • setVendorRef

      void setVendorRef(@Nullable String vendorRef)
      Key to external system indicating that this PriceableTarget is specific to a vendor.
      Parameters:
      vendorRef - a reference to a vendor (e.g. vendorId or vendorCode)
    • getTermDurationLength

      Integer getTermDurationLength()
      Gets the term duration length of the target, e.g., 12, 24, 36. This indicates that the caller wants a specific price for the given term length and prices should be filtered accordingly.
      Returns:
      the term duration length of the price desired for the target.
    • setTermDurationLength

      void setTermDurationLength(@Nullable Integer durationLength)
      Sets the term duration length of the target, e.g., 12, 24, 36.
      Parameters:
      durationLength - the term duration length of the price desired for the target.
    • getTermDurationType

      String getTermDurationType()
      Gets the term duration type of the target, e.g., DAYS, MONTHS, YEARS. This indicates that the caller wants a specific price for the given term type and prices should be filtered accordingly.
      Returns:
      the term duration type of the price desired for the target
    • setTermDurationType

      void setTermDurationType(@Nullable String type)
      Sets the term duration type of the target, e.g., DAYS, MONTHS, YEARS.
      Parameters:
      type - the term duration type of the price desired for the target
    • getCharacteristics

      Map<String,String> getCharacteristics()
      Gets the characteristics of the target, e.g., capacity:128GB. This indicates that the caller wants a specific price targeting these characteristics not just a base or default price for the target item. This is useful when the target is a flattened Product with no variations but still has configurable options that could drive pricing.
      Returns:
      the characteristics of the target
    • setCharacteristics

      void setCharacteristics(Map<String,String> characteristics)
      Sets the characteristics of the target, e.g., size: red, capacity: 128GB.
      Parameters:
      characteristics - the characteristics of the target