java.lang.Object
com.broadleafcommerce.data.tracking.core.filtering.business.domain.FieldChange
All Implemented Interfaces:
Serializable

public class FieldChange extends Object implements Serializable
Represents a field-level override across catalogs, or a field-level change in a sandbox version of an entity.
Author:
Jeff Fischer
See Also:
  • Constructor Details

    • FieldChange

      public FieldChange()
  • Method Details

    • getFieldName

      public String getFieldName()
      The name of the field on the repository domain class instance that was changed
      Returns:
      The name of the field that was changed
    • getSandboxId

      public String getSandboxId()
      A soft reference to the sandbox id. Sandboxes are maintained separately in the sandbox microservice.
      Returns:
      The sandbox id
    • getSandboxName

      public String getSandboxName()
      Friendly name for this sandbox
      Returns:
      Friendly name for this sandbox
    • getStage

      public String getStage()
      Arbitrary labelling concept. Can be leveraged to identify entity state belonging to a step in a multi-step approval workflow.
      Returns:
      Label describing position in a multi-step promotion flow
    • getAuthor

      public String getAuthor()
      The user that engaged the change
      Returns:
      The user that engaged the change
    • getChangeType

      public String getChangeType()
      The CRUD type for the change. See OperationType
      Returns:
      The CRUD type for the change
    • getTimestamp

      public Instant getTimestamp()
      When this field change occurred. This is usually initialized as LocalDateTime.now() when the original FieldChange tracking was created.
      Returns:
      the timestamp of when the change occurred
    • getLevel

      public Integer getLevel()
      Used to determine whether or not a change is a user sandbox change, a higher level sandbox change, or a production change. See TrackingLevel. This value is often used to determine the origin of a change after a rebase operation. A level equal to TrackingLevel.PRODUCTION indicates the change is a production catalog override of the same entity from a higher catalog.
      Returns:
      The current state of an change as it relates to sandbox or production status
    • setFieldName

      public void setFieldName(String fieldName)
      The name of the field on the repository domain class instance that was changed
      Parameters:
      fieldName - The name of the field that was changed
    • setSandboxId

      public void setSandboxId(String sandboxId)
      A soft reference to the sandbox id. Sandboxes are maintained separately in the sandbox microservice.
      Parameters:
      sandboxId - The sandbox id
    • setSandboxName

      public void setSandboxName(String sandboxName)
      Friendly name for this sandbox
      Parameters:
      sandboxName - Friendly name for this sandbox
    • setStage

      public void setStage(String stage)
      Arbitrary labelling concept. Can be leveraged to identify entity state belonging to a step in a multi-step approval workflow.
      Parameters:
      stage - Label describing position in a multi-step promotion flow
    • setAuthor

      public void setAuthor(String author)
      The user that engaged the change
      Parameters:
      owner - The user that engaged the change
    • setChangeType

      public void setChangeType(String changeType)
      The CRUD type for the change. See OperationType
      Parameters:
      operationType - The CRUD type for the change
    • setTimestamp

      public void setTimestamp(Instant timestamp)
      When this field change occurred. This is usually initialized as LocalDateTime.now() when the original FieldChange tracking was created.
      Parameters:
      timestamp - when this field change happened
    • setLevel

      public void setLevel(Integer level)
      Used to determine whether or not a change is a user sandbox change, a higher level sandbox change, or a production change. See TrackingLevel. This value is often used to determine the origin of a change after a rebase operation. A level equal to TrackingLevel.PRODUCTION indicates the change is a production catalog override of the same entity from a higher catalog.
      Parameters:
      level - The current state of an change as it relates to sandbox or production status
    • toString

      public String toString()
      Overrides:
      toString in class Object
    • 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