java.lang.Object
com.broadleafcommerce.data.tracking.core.messaging.domain.ChangeEvent
All Implemented Interfaces:
Serializable

public class ChangeEvent extends Object implements Serializable
Detailed summary information of a change made to an instance of a sandboxable entity.
Author:
Chad Harchar (charchar)
See Also:
  • Constructor Details

    • ChangeEvent

      public ChangeEvent()
  • Method Details

    • getDomainContextId

      public String getDomainContextId()
      The contextId of the domain object that underwent the change.
      Returns:
      The contextId of the domain object that underwent the change
    • getDomainAlias

      public String getDomainAlias()
      The projection domain alias for this change, represented as the class simple name, i.e., Product.
      Returns:
      The projection domain alias for this change
    • getEntityType

      public String getEntityType()
      The entity type for this change, represented as the fully qualified classname.
      Returns:
      The entity type for this change
    • getAuthor

      public String getAuthor()
      The author responsible for the change.
      Returns:
      The author responsible for this change
    • getSandbox

      public String getSandbox()
      The sandbox that contains the change.
      Returns:
      The sandbox that contains the change
    • getSandboxName

      public String getSandboxName()
      The sandbox name to use if creating a sandbox.

      This is generally only used if isCreateSandboxIfDoesNotExist() is true.

      Returns:
      The sandbox name to use if creating a sandbox
    • getChangeTracking

      public Tracking getChangeTracking()
      All of the information contained within Tracking for the record of this change.
      Returns:
      All of the information contained within Tracking for the record of this change
    • getDisplayName

      public String getDisplayName()
      The name to display to the user that represents this change summary. Typically retrieved from Trackable.getDisplay().
      Returns:
      The name to display to the user that represents this change summary
    • getIndexableType

      public String getIndexableType()
      If the change implements Indexable and is a member of BatchIndexableType, reference the string value of BatchIndexableType here for the target item to be indexed. Note, this may not be the entity actually being changed here. If, for example, this change is for a CatalogProduct, the target item to be indexed is actually the referenced product.
    • getIndexableTargetId

      public String getIndexableTargetId()
      If the change implements Indexable and is a member of BatchIndexableType, reference the id of the target item to be indexed. Note, this may not be the entity actually being changed here. If, for example, this change is for a CatalogProduct, the target item to be indexed is actually the referenced product.
    • isPromoted

      public boolean isPromoted()
      Whether or not the resulting state in the sandbox service represents a promoted item. Note, the related entity in the resource tier must be persisted in the appropriate promoted state as well.
    • getPromotionId

      public String getPromotionId()
      The promotion id to associate with this change event when isPromoted() is true.
    • isCreateSandboxIfDoesNotExist

      public boolean isCreateSandboxIfDoesNotExist()
      Whether or not the sandbox denoted with getSandbox() should be created if it does not already exist. The information supplied in getSandboxName() and isTemporarySandbox() will be used to populate the corresponding fields on the sandbox.
    • isTemporarySandbox

      public boolean isTemporarySandbox()
      Whether or not the sandbox denoted at getSandbox() is temporary and should be removed at the end of the sandbox transition lifecycle.

      This will only be used if isCreateSandboxIfDoesNotExist() is true.

    • isRemoveTemporaryOverride

      public boolean isRemoveTemporaryOverride()
      Whether or not to remove temporary application catalog override state at the edges of sandbox transition. This includes revert or deploy. Temporary application override state can occur during parent catalog deployment propagation. See VendorSandboxPropagationHandler for more information.
    • getVendorRef

      @Nullable public String getVendorRef()
      The vendor code or vendor ID associated to the changed entity.

      If the entity is not vendor-discriminated or simply doesn't have an associated vendor, this will be null.

    • setDomainContextId

      public void setDomainContextId(String domainContextId)
      The contextId of the domain object that underwent the change.
      Parameters:
      domainContextId - The contextId of the domain object that underwent the change
    • setDomainAlias

      public void setDomainAlias(String domainAlias)
      The projection domain alias for this change, represented as the class simple name, i.e., Product.
      Parameters:
      domainAlias - The projection domain alias for this change
    • setEntityType

      public void setEntityType(String entityType)
      The entity type for this change, represented as the fully qualified classname.
      Parameters:
      entityType - The entity type for this change
    • setAuthor

      public void setAuthor(String author)
      The author responsible for the change.
      Parameters:
      author - The author responsible for this change
    • setSandbox

      public void setSandbox(String sandbox)
      The sandbox that contains the change.
      Parameters:
      sandbox - The sandbox that contains the change
    • setSandboxName

      public void setSandboxName(String sandboxName)
      The sandbox name to use if creating a sandbox.

      This is generally only used if isCreateSandboxIfDoesNotExist() is true.

      Parameters:
      The - sandbox name to use if creating a sandbox
    • setChangeTracking

      public void setChangeTracking(Tracking changeTracking)
      All of the information contained within Tracking for the record of this change.
      Parameters:
      changeTracking - All of the information contained within Tracking for the record of this change
    • setDisplayName

      public void setDisplayName(String displayName)
      The name to display to the user that represents this change summary. Typically retrieved from Trackable.getDisplay().
      Parameters:
      displayName - The name to display to the user that represents this change summary
    • setIndexableType

      public void setIndexableType(String indexableType)
      If the change implements Indexable and is a member of BatchIndexableType, reference the string value of BatchIndexableType here for the target item to be indexed. Note, this may not be the entity actually being changed here. If, for example, this change is for a CatalogProduct, the target item to be indexed is actually the referenced product.
    • setIndexableTargetId

      public void setIndexableTargetId(String indexableTargetId)
      If the change implements Indexable and is a member of BatchIndexableType, reference the id of the target item to be indexed. Note, this may not be the entity actually being changed here. If, for example, this change is for a CatalogProduct, the target item to be indexed is actually the referenced product.
    • setPromoted

      public void setPromoted(boolean isPromoted)
      Whether or not the resulting state in the sandbox service represents a promoted item. Note, the related entity in the resource tier must be persisted in the appropriate promoted state as well.
    • setPromotionId

      public void setPromotionId(String promotionId)
      The promotion id to associate with this change event when isPromoted() is true.
    • setCreateSandboxIfDoesNotExist

      public void setCreateSandboxIfDoesNotExist(boolean createSandboxIfDoesNotExist)
      Whether or not the sandbox denoted with getSandbox() should be created if it does not already exist. The information supplied in getSandboxName() and isTemporarySandbox() will be used to populate the corresponding fields on the sandbox.
    • setTemporarySandbox

      public void setTemporarySandbox(boolean isTemporarySandbox)
      Whether or not the sandbox denoted at getSandbox() is temporary and should be removed at the end of the sandbox transition lifecycle.

      This will only be used if isCreateSandboxIfDoesNotExist() is true.

    • setRemoveTemporaryOverride

      public void setRemoveTemporaryOverride(boolean isRemoveTemporaryOverride)
      Whether or not to remove temporary application catalog override state at the edges of sandbox transition. This includes revert or deploy. Temporary application override state can occur during parent catalog deployment propagation. See VendorSandboxPropagationHandler for more information.
    • setVendorRef

      public void setVendorRef(@Nullable String vendorRef)
      The vendor code or vendor ID associated to the changed entity.

      If the entity is not vendor-discriminated or simply doesn't have an associated vendor, this will be null.

    • 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