Interface CatalogTrackable

All Superinterfaces:
com.broadleafcommerce.data.tracking.core.ContextStateAware

public interface CatalogTrackable extends com.broadleafcommerce.data.tracking.core.ContextStateAware
Interface for objects which are trackable by catalog.
  • Method Details

    • getCatalogOverrides

      Set<String> getCatalogOverrides()
      Get any catalog contexts where this trackable has been overridden.
      Returns:
      Catalog contexts where this trackable has been overridden
    • setCatalogOverrides

      void setCatalogOverrides(Set<String> catalogOverrides)
      Set any catalog contexts where this trackable has been overridden.
      Parameters:
      catalogOverrides - Catalog contexts where this trackable has been overridden
    • getSandboxAwareCatalogOverrides

      default Set<String> getSandboxAwareCatalogOverrides()

      This is similar to getCatalogOverrides(), except the values within are encoded with additional information about the sandbox state of the override.

      This is only useful for entities that are both TrackableBehavior.CATALOG and TrackableBehavior.SANDBOX discriminated.

      • If there is an override of this record at a production level, it will follow the format: catalogId, where catalogId is the ID of the descendant catalog containing the override
      • If there is an override of this record at a higher-than-user (ex: promoted) sandbox level, it will follow the format: catalogId;sandboxId, where catalogId is the ID of the descendant catalog containing the override, and sandboxId is the ID of the sandbox containing the override
      • If there is an override of this record at a user sandbox level, it will follow the format: catalogId;sandboxId;sandboxOwner, where catalogId is the ID of the descendant catalog containing the override, sandboxId is the ID of the sandbox containing the override, and sandboxOwner is the author of the user-level change

      This special encoding makes it possible for consumers to more clearly distinguish the contexts in which the current record has been overridden.

      Returns:
      encoded values representing the catalog in which this trackable has been overridden
      Since:
      SearchServices 2.2.1, Release Train 2.2.1, SearchServices 2.1.5, Release Train 2.1.5
    • setSandboxAwareCatalogOverrides

      default void setSandboxAwareCatalogOverrides(Set<String> sandboxOverrides)
      Parameters:
      sandboxOverrides - encoded values representing the catalog in which this trackable has been overridden
      Since:
      SearchServices 2.2.1, Release Train 2.2.1, SearchServices 2.1.5, Release Train 2.1.5
    • getCreatingApplicationId

      @Nullable default String getCreatingApplicationId()
      The Tracking.getCreatingApplicationId() of the entity.
      Since:
      SearchServices 2.2.1, Release Train 2.2.1, SearchServices 2.1.5, Release Train 2.1.5
    • setCreatingApplicationId

      default void setCreatingApplicationId(String creatingApplicationId)
      Since:
      SearchServices 2.2.1, Release Train 2.2.1, SearchServices 2.1.5, Release Train 2.1.5
    • getCatalogOmissions

      Set<String> getCatalogOmissions()
      The IDs of descendant catalogs in which this context version of the product has been omitted as a result of one or more filters.

      e.g. if this product is in catalog A, and catalog B inherits this product from catalog A but contains a filter that removes it from the view of catalog B, then the catalog A version product will contain "B" in its catalogOmissions.

      Returns:
      the IDs of any descendant catalogs in which this product has been omitted.
    • setCatalogOmissions

      void setCatalogOmissions(Set<String> catalogOmissions)
      The IDs of descendant catalogs in which this context version of the product has been omitted as a result of one or more filters.

      e.g. if this product is in catalog A, and catalog B inherits this product from catalog A but contains a filter that removes it from the view of catalog B, then the catalog A version product will contain "B" in its catalogOmissions.

    • getMarketplaceApplications

      Set<String> getMarketplaceApplications()
      All of the IDs of marketplace applications where this product could appear in, based on the catalog hierarchy and online status.
    • getPendingMarketplaceApplications

      Set<String> getPendingMarketplaceApplications()
      All of the IDs of marketplace applications where this product could appear in, based on the catalog hierarchy and pending status.
    • setMarketplaceApplications

      void setMarketplaceApplications(Set<String> marketplaceApplications)
      All of the IDs of marketplace applications where this product could appear in, based on the catalog hierarchy and online status.
    • setPendingMarketplaceApplications

      void setPendingMarketplaceApplications(Set<String> pendingMarketplaceApplications)
      All of the IDs of marketplace applications where this product could appear in, based on the catalog hierarchy and pending status.