Class ChangeSummaryGroup

java.lang.Object
com.broadleafcommerce.sandbox.domain.ChangeSummaryGroup
All Implemented Interfaces:
Serializable

public class ChangeSummaryGroup extends Object implements Serializable
A group of ChangeSummary instances. A ChangeSummaryGroup is used to move all contained ChangeSummary instances through the sandbox workflow lifecycle. For example, ChangeSummaryGroups are approved, rejected. In the final steps of the workflow lifecycle, ChangeSummaryGroups are combined into a ChangeDeploy and scheduled for deployment.
Author:
Jeff Fischer
See Also:
  • Constructor Details

    • ChangeSummaryGroup

      public ChangeSummaryGroup()
  • Method Details

    • getId

      public String getId()
      Unique identifier for this change summary group.
      Returns:
      Unique identifier for this change summary group
    • getState

      public String getState()
      The current state of this group. This will change only when the status changes to a completed type, i.e., ChangeStatusType.REJECTED, ChangeStatusType.FINISHED, or an error status.
      Returns:
      The current state of this group
    • getStatusChangeTime

      public Instant getStatusChangeTime()
      The time that the status last changed.
      Returns:
      The time that the status last changed
    • getStatus

      public String getStatus()
      The current status of this group
      Returns:
      The current status of this group
    • getDisplayName

      public String getDisplayName()
      The name to display to the user that represents this group. This should be provided as part of a promote request, along with optional promoteMessage.
      Returns:
      The name to display to the user that represents this group
    • getException

      public String getException()
      Any exceptions that result from a workflow related request on this group
      Returns:
      Any exceptions that result from this group
    • getPromoteMessage

      public String getPromoteMessage()
      The message given to this group during promotion.
      Returns:
      The message given to this group during promotion
    • getChangeSummaryIds

      public List<String> getChangeSummaryIds()
      This list of ChangeSummary.getId() values contained in this group
      Returns:
      This list of ChangeSummary.getId() values contained in this group
    • getSandbox

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

      public String getAuthor()
      The user (as defined by the Spring security principal) responsible for creating this group. See ContextInfo.getAuthor()
      Returns:
      The user that was responsible for creating this group
    • getArchived

      public Boolean getArchived()
      The archival state. Archived records are generally filtered from fetch results. Records are often archived at this level as a result of a completed rejection.
      Returns:
      The archival state
    • getDeploymentDate

      public Instant getDeploymentDate()
      If there is a ChangeDeploy for this change summary group, this will hold a copy of its ChangeDeploy.dateScheduled. This should be synchronized to match with that value whenever it is updated (for example, when scheduling/unscheduling occurs).

      The purpose of this field is to enable users to see the deployment date for this group in views other than the "Deployments" page.

      Returns:
      the date/time the associated deployment (if any) occurred or will occur
    • getAffectedVendorRefs

      public Set<String> getAffectedVendorRefs()
      Contains all of the vendor-refs that are affected by change summaries within this group.

      If vendor processing is enabled, this enables queries to quickly filter out change summary groups which a vendor-restricted user cannot access.

      Note that if the member summaries within this group change, this set should also be updated accordingly.

      See Also:
    • isAffectsNonVendorData

      public boolean isAffectsNonVendorData()
      If this group contains getChangeSummaryIds() which affect non-vendor data, then this field should be true.

      If vendor processing is enabled, this enables queries to quickly filter out change summary groups which a vendor-restricted user cannot access.

      Note that if the member summaries within this group change, this value should also be updated accordingly.

      See Also:
    • setId

      public void setId(String id)
      Unique identifier for this change summary group.
      Parameters:
      id - Unique identifier for this change summary group
    • setState

      public void setState(String state)
      The current state of this group. This will change only when the status changes to a completed type, i.e., ChangeStatusType.REJECTED, ChangeStatusType.FINISHED, or an error status.
      Parameters:
      state - The current state of this group
    • setStatusChangeTime

      public void setStatusChangeTime(Instant statusChangeTime)
      The time that the status last changed.
      Parameters:
      statusChangeTime - The time that the status last changed.
    • setStatus

      public void setStatus(String status)
      The current status of this group
      Parameters:
      state - The current status of this group
    • setDisplayName

      public void setDisplayName(String displayName)
      The name to display to the user that represents this group. This should be provided as part of a promote request, along with optional promoteMessage.
      Parameters:
      displayName - The name to display to the user that represents this group
    • setException

      public void setException(String exception)
      Any exceptions that result from a workflow related request on this group
      Parameters:
      exception - Any exceptions that result from this group
    • setPromoteMessage

      public void setPromoteMessage(String promoteMessage)
      The message given to this group during promotion.
      Parameters:
      promoteMessage - The message given to this group during promotion
    • setChangeSummaryIds

      public void setChangeSummaryIds(List<String> changeSummaryIds)
      This list of ChangeSummary.getId() values contained in this group
      Parameters:
      changeSummaryIds - This list of ChangeSummary.getId() values contained in this group
    • setSandbox

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

      public void setAuthor(String author)
      The user (as defined by the Spring security principal) responsible for creating this group. See ContextInfo.getAuthor()
      Parameters:
      author - The user that was responsible for creating this group
    • setArchived

      public void setArchived(Boolean archived)
      The archival state. Archived records are generally filtered from fetch results. Records are often archived at this level as a result of a completed rejection.
      Parameters:
      archived - Whether this group should be filtered from fetch results
    • setDeploymentDate

      public void setDeploymentDate(Instant deploymentDate)
      If there is a ChangeDeploy for this change summary group, this will hold a copy of its ChangeDeploy.dateScheduled. This should be synchronized to match with that value whenever it is updated (for example, when scheduling/unscheduling occurs).

      The purpose of this field is to enable users to see the deployment date for this group in views other than the "Deployments" page.

      Parameters:
      deploymentDate - the date/time the associated deployment (if any) occurred or will occur
    • setAffectedVendorRefs

      public void setAffectedVendorRefs(Set<String> affectedVendorRefs)
      Contains all of the vendor-refs that are affected by change summaries within this group.

      If vendor processing is enabled, this enables queries to quickly filter out change summary groups which a vendor-restricted user cannot access.

      Note that if the member summaries within this group change, this set should also be updated accordingly.

      See Also:
    • setAffectsNonVendorData

      public void setAffectsNonVendorData(boolean affectsNonVendorData)
      If this group contains getChangeSummaryIds() which affect non-vendor data, then this field should be true.

      If vendor processing is enabled, this enables queries to quickly filter out change summary groups which a vendor-restricted user cannot access.

      Note that if the member summaries within this group change, this value should also be updated accordingly.

      See Also:
    • 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