Interface TransitionRequestManager
- All Known Implementing Classes:
DefaultTransitionRequestManager
ChangeSummary,
ChangeSummaryGroup, and ChangeDeploy state, as well as sending out
TransitionRequests to the various other microservices in order to cause
them to update the sandbox workflow status of any Trackable entities under
their purview related to the changes.
Note: if vendor processing is enabled, results should be filtered by the current authentication's vendor restrictions. This also means vendor-related fields should be initialized on domains.
- Author:
- Jeff Fischer
-
Method Summary
Modifier and TypeMethodDescriptionvoidapprove(ChangeSummaryGroups approveGroups, String sandbox) Deprecated.voidapprove(ChangeSummaryGroups approveGroups, String sandbox, com.broadleafcommerce.data.tracking.core.context.ContextInfo contextInfo) Moves theChangeSummaryGroupinstances identified by the approveGroups param into theChangeState.APPROVEDstate.voidclearDeployment(String changeDeployId, com.broadleafcommerce.data.tracking.core.context.ContextInfo contextInfo) Accepts an ID for aChangeDeploythat previously failed and starts the process of clearing the error state of the deployment.voiddeploy(ChangeSummaryGroups scheduleGroups, com.broadleafcommerce.data.tracking.core.context.ContextInfo context, String sandbox, int level) Moves theChangeSummaryGroupinstances identified by the scheduleGroups param into theChangeStatusType.DEPLOYINGstatus.findExistingChangeGroup(List<ChangeSummary> changeSummaries) Deprecated.since 1.3, replaced byfindExistingChangeGroup(List, ContextInfo)findExistingChangeGroup(List<ChangeSummary> changeSummaries, com.broadleafcommerce.data.tracking.core.context.ContextInfo contextInfo) Retrieve the common ChangeSummaryGroup for a list of summariesvoidpromote(PromoteSummaries summaries, com.broadleafcommerce.data.tracking.core.context.ContextInfo context, String sandbox) Moves theChangeSummariesidentified by thePromoteSummaries.getChangeSummaries()into thePROMOTING statusand notifies all interested microservices managing matchingTrackable entitiesthat they should perform a promotion for each of said entities.voidpromoteDeploy(PromoteSummaries summaries, com.broadleafcommerce.data.tracking.core.context.ContextInfo context, String sandbox) Moves theChangeSummariesidentified by thePromoteSummaries.getChangeSummaries()into theDeploying statusand notifies all interested microservices managing matchingTrackable entitiesthat they should perform a deployment for each of said entities.voidrebase(ChangeSummaries summaries, com.broadleafcommerce.data.tracking.core.context.ContextInfo context, String sandbox) Moves theChangeSummariesidentified by theChangeSummaries.getChangeSummaryIds()into theREBASING statusand notifies all interested microservices that manage matchingTrackable entitiesthat they should perform a rebase for each of the said entities.voidreject(ChangeSummaryGroups changeSummaryGroups, com.broadleafcommerce.data.tracking.core.context.ContextInfo context, String sandbox) Moves theChangeSummariesidentified as part of theChangeSummaryGroupsidentified byChangeSummaryGroups.getChangeSummaryGroupIds()into theREJECTING statusand notifies all interested microservices that manage matchingTrackable entitiesthat they should perform a rejection for each of the said entities.voidrejectApproved(ChangeSummaryGroups changeSummaryGroups, com.broadleafcommerce.data.tracking.core.context.ContextInfo context, String sandbox) Moves theChangeSummariesidentified as part of theChangeSummaryGroupsidentified byChangeSummaryGroups.getChangeSummaryGroupIds()into theREJECTING statusand notifies all interested microservices that manage matchingTrackable entitiesthat they should perform a rejection for each of the said entities.voidrejectPromoted(ChangeSummaryGroups changeSummaryGroups, com.broadleafcommerce.data.tracking.core.context.ContextInfo context, String sandbox) Moves theChangeSummariesidentified as part of theChangeSummaryGroupsidentified byChangeSummaryGroups.getChangeSummaryGroupIds()into theREJECTING statusand notifies all interested microservices that manage matchingTrackable entitiesthat they should perform a rejection for each of the said entities.remove(ChangeSummaryRemovalRequest changeSummaryRemovalRequest) Deprecated.since 1.3, replaced byremove(ChangeSummaryRemovalRequest, ContextInfo)remove(ChangeSummaryRemovalRequest changeSummaryRemovalRequest, com.broadleafcommerce.data.tracking.core.context.ContextInfo contextInfo) Remove theChangeSummariesof the provided ids from theirChangeSummaryGroupand add them to a new one.voidrevert(ChangeSummaries summaries, com.broadleafcommerce.data.tracking.core.context.ContextInfo context, String sandbox) Moves theChangeSummariesidentified by theChangeSummaries.getChangeSummaryIds()into theREVERTING statusand notifies all interested microservices that manage matchingTrackable entitiesthat they should perform a reversion for each of the said entities.voidscheduleDeployment(ChangeSummaryGroups scheduleGroups, com.broadleafcommerce.data.tracking.core.context.ContextInfo context, String sandbox, Instant deployTime, int level) Moves theChangeSummaryGroupinstances identified by the scheduleGroups param into theChangeStatusType.SCHEDULINGstatus.voidunscheduleDeployment(String changeDeployId) Deprecated.since 1.3, replaced byunscheduleDeployment(String, ContextInfo)voidunscheduleDeployment(String changeDeployId, com.broadleafcommerce.data.tracking.core.context.ContextInfo contextInfo) Accepts an ID for aChangeDeploythat was previously scheduled and starts the process of unscheduling the deployment.
-
Method Details
-
approve
Deprecated.since 1.3, replaced byapprove(ChangeSummaryGroups, String, ContextInfo)Moves theChangeSummaryGroupinstances identified by the approveGroups param into theChangeState.APPROVEDstate. Also, moves anyChangeSummaryinstances identified byChangeSummaryGroup.getChangeSummaryIds()into theChangeState.APPROVEDstate as well.This transition should be performed in a multi-user safe way so that multiple requests for transitions on the same ChangeSummaryGroup instances cannot happen concurrently.
A QualifiedStateException can be thrown for any id values determined to be in an incorrect state from that expected to perform a transition operation. For example, if a
ChangeSummaryGroupwas in an APPROVED state, but a reject was requested on it, this exception would be thrown because the expected state for a reject is PROMOTED.- Parameters:
approveGroups- Construct that identifies one or moreChangeSummaryGroupinstancessandbox- the sandbox to filter the search on- Throws:
QualifiedStateException- Thrown for any id values determined to be in an incorrect state from that expected to perform a transition operation
-
approve
void approve(@NonNull ChangeSummaryGroups approveGroups, @NonNull String sandbox, @Nullable com.broadleafcommerce.data.tracking.core.context.ContextInfo contextInfo) Moves theChangeSummaryGroupinstances identified by the approveGroups param into theChangeState.APPROVEDstate. Also, moves anyChangeSummaryinstances identified byChangeSummaryGroup.getChangeSummaryIds()into theChangeState.APPROVEDstate as well.This transition should be performed in a multi-user safe way so that multiple requests for transitions on the same ChangeSummaryGroup instances cannot happen concurrently.
A QualifiedStateException can be thrown for any id values determined to be in an incorrect state from that expected to perform a transition operation. For example, if a
ChangeSummaryGroupwas in an APPROVED state, but a reject was requested on it, this exception would be thrown because the expected state for a reject is PROMOTED.- Parameters:
approveGroups- Construct that identifies one or moreChangeSummaryGroupinstancessandbox- the sandbox to filter the search oncontextInfo- context information surrounding sandboxing and multitenant state- Throws:
QualifiedStateException- Thrown for any id values determined to be in an incorrect state from that expected to perform a transition operation
-
promote
void promote(@NonNull PromoteSummaries summaries, @NonNull com.broadleafcommerce.data.tracking.core.context.ContextInfo context, @NonNull String sandbox) Moves theChangeSummariesidentified by thePromoteSummaries.getChangeSummaries()into thePROMOTING statusand notifies all interested microservices managing matchingTrackable entitiesthat they should perform a promotion for each of said entities. This notification is performed via aWorkflowPromoteRequest.When
ChangeSummaries.isAllChangeSummaries()is true, this operation will promote all items owned by the current user in theUSER state. IfChangeSummaries.isAllChangeSummaries()is false, then only the items specified inChangeSummaries.getChangeSummaryIds()are promoted.ChangeSummaries.isAllChangeSummaries()is false by default.Finally, if any of the requested change summaries are diverged, then this promotion is cancelled and a
DivergedChangeExceptionis thrown. A summary can be diverged when it has not absorbed allChangeDetail entriesproduced by another ChangeSummary for the same entity but promoted by another author. Meaning, the current ChangeSummary is unaware of some changes already promoted in advance and, thus, is considered diverged. Diverged ChangeSummaries must be rebased before they are allowed to promote (seerebase(ChangeSummaries, ContextInfo, String)).- Parameters:
summaries- Construct that identifies one or moreChangeSummaryinstances.context- Request context information identifying the usersandbox- the sandbox to filter the search on- Throws:
com.broadleafcommerce.data.tracking.core.exception.EntityMissingException- Thrown when any of the items specified inChangeSummaries.getChangeSummaryIds()are not owned by the author identified inContextInfo.getAuthor()DivergedChangeException- Thrown when any of the requested ChangeSummaries are diverged. A summary can be diverged when it has not absorbed allChangeDetail entriesproduced by another ChangeSummary for the same entity but promoted by another author. Meaning, the current ChangeSummary is unaware of some changes already promoted in advance and, thus, is considered diverged. Diverged ChangeSummaries must be rebased before they are allowed to promote (seerebase(ChangeSummaries, ContextInfo, String)).QualifiedStateException- Thrown for any id values determined to be in an incorrect state from that expected to perform a transition operationChangeSummariesNotFoundException- Thrown if the change summaries cannot be found
-
promoteDeploy
void promoteDeploy(@NonNull PromoteSummaries summaries, @NonNull com.broadleafcommerce.data.tracking.core.context.ContextInfo context, @NonNull String sandbox) Moves theChangeSummariesidentified by thePromoteSummaries.getChangeSummaries()into theDeploying statusand notifies all interested microservices managing matchingTrackable entitiesthat they should perform a deployment for each of said entities. This notification is performed via aWorkflowDeployRequest.When
ChangeSummaries.isAllChangeSummaries()is true, this operation will deploy all items owned by the current user in theUSER state. IfChangeSummaries.isAllChangeSummaries()is false, then only the items specified inChangeSummaries.getChangeSummaryIds()are deployed.ChangeSummaries.isAllChangeSummaries()is false by default.Finally, if any of the requested change summaries are diverged, then this promotion is cancelled and a
DivergedChangeExceptionis thrown. A summary can be diverged when it has not absorbed allChangeDetail entriesproduced by another ChangeSummary for the same entity but promoted by another author. Meaning, the current ChangeSummary is unaware of some changes already promoted in advance and, thus, is considered diverged. Diverged ChangeSummaries must be rebased before they are allowed to promote (seerebase(ChangeSummaries, ContextInfo, String)).- Parameters:
summaries- Construct that identifies on or moreChangeSummaryinstances.context- Request context information identifying the usersandbox- the sandbox to filter the search on- Throws:
com.broadleafcommerce.data.tracking.core.exception.EntityMissingException- Thrown when any of the items specified inChangeSummaries.getChangeSummaryIds()are not owned by the author identified inContextInfo.getAuthor()DivergedChangeException- Thrown when any of the requested ChangeSummaries are diverged. A summary can be diverged when it has not absorbed allChangeDetail entriesproduced by another ChangeSummary for the same entity but promoted by another author. Meaning, the current ChangeSummary is unaware of some changes already promoted in advance and, thus, is considered diverged. Diverged ChangeSummaries must be rebased before they are allowed to promote (seerebase(ChangeSummaries, ContextInfo, String)).QualifiedStateException- Thrown for any id values determined to be in an incorrect state from that expected to perform a transition operationChangeSummariesNotFoundException- Thrown if the change summaries cannot be found
-
rebase
void rebase(@NonNull ChangeSummaries summaries, @NonNull com.broadleafcommerce.data.tracking.core.context.ContextInfo context, @NonNull String sandbox) Moves theChangeSummariesidentified by theChangeSummaries.getChangeSummaryIds()into theREBASING statusand notifies all interested microservices that manage matchingTrackable entitiesthat they should perform a rebase for each of the said entities. This notification is performed via aWorkflowRebaseRequest.When
ChangeSummaries.isAllChangeSummaries()is true, this operation will rebase all items owned by the current user in theUSER state. IfChangeSummaries.isAllChangeSummaries()is false, then only the items specified inChangeSummaries.getChangeSummaryIds()are rebased.ChangeSummaries.isAllChangeSummaries()is false by default.If any of the items contained by a
ChangeSummaryidentified in theChangeSummariesare not owned by the author identified byContextInfo.getAuthor(), then anEntityMissingExceptionis thrown.- Parameters:
summaries- Construct that identifies on or moreChangeSummaryinstances.context- Request context information identifying user, sandbox, etc...sandbox- the sandbox to filter the search on- Throws:
com.broadleafcommerce.data.tracking.core.exception.EntityMissingException- Thrown when any of the items specified inChangeSummaries.getChangeSummaryIds()are not owned by the author identified inContextInfo.getAuthor()QualifiedStateException- Thrown for any id values determined to be in an incorrect state from that expected to perform a transition operationChangeSummariesNotFoundException- Thrown if the change summaries cannot be found
-
reject
void reject(@NonNull ChangeSummaryGroups changeSummaryGroups, @NonNull com.broadleafcommerce.data.tracking.core.context.ContextInfo context, @NonNull String sandbox) Moves theChangeSummariesidentified as part of theChangeSummaryGroupsidentified byChangeSummaryGroups.getChangeSummaryGroupIds()into theREJECTING statusand notifies all interested microservices that manage matchingTrackable entitiesthat they should perform a rejection for each of the said entities. This notification is performed via aWorkflowRejectRequest. A reason message for the rejection is also saved to the ChangeSummaries.If any of the items contained by a
ChangeSummaryidentified in theChangeSummaryGroupsare not owned by the author identified byContextInfo.getAuthor(), then anEntityMissingExceptionis thrown.This operation will only work if the summaries and summary groups currently have a state of
ChangeState.PROMOTEDand a status inChangeStatusType.restingPromoted(ChangeStatusType...).- Parameters:
changeSummaryGroups- Construct that identifies on or moreChangeSummaryGroupinstances for rejection.context- Request context information identifying user, sandbox, etc...sandbox- theSandbox.getId()on which to filter the search- Throws:
com.broadleafcommerce.data.tracking.core.exception.EntityMissingException- Thrown when any of the items specified inChangeSummaryGroups.getChangeSummaryGroupIds()()} are not owned by the author identified inContextInfo.getAuthor()QualifiedStateException- Thrown for any id values determined to be in an incorrect state from that expected to perform a transition operationChangeSummariesNotFoundException- Thrown if the change summaries cannot be found
-
rejectPromoted
void rejectPromoted(@NonNull ChangeSummaryGroups changeSummaryGroups, @NonNull com.broadleafcommerce.data.tracking.core.context.ContextInfo context, @NonNull String sandbox) Moves theChangeSummariesidentified as part of theChangeSummaryGroupsidentified byChangeSummaryGroups.getChangeSummaryGroupIds()into theREJECTING statusand notifies all interested microservices that manage matchingTrackable entitiesthat they should perform a rejection for each of the said entities. This notification is performed via aWorkflowRejectRequest. A reason message for the rejection is also saved to the ChangeSummaries.If any of the items contained by a
ChangeSummaryidentified in theChangeSummaryGroupsare not owned by the author identified byContextInfo.getAuthor(), then anEntityMissingExceptionis thrown.This operation will only work if the summaries and summary groups currently have a state of
ChangeState.PROMOTEDand a status inChangeStatusType.restingPromoted(ChangeStatusType...).- Parameters:
changeSummaryGroups- Construct that identifies on or moreChangeSummaryGroupinstances for rejection.context- Request context information identifying user, sandbox, etc...sandbox- theSandbox.getId()on which to filter the search- Throws:
com.broadleafcommerce.data.tracking.core.exception.EntityMissingException- Thrown when any of the items specified inChangeSummaryGroups.getChangeSummaryGroupIds()()} are not owned by the author identified inContextInfo.getAuthor()QualifiedStateException- Thrown for any id values determined to be in an incorrect state from that expected to perform a transition operationChangeSummariesNotFoundException- Thrown if the change summaries cannot be found
-
rejectApproved
void rejectApproved(@NonNull ChangeSummaryGroups changeSummaryGroups, @NonNull com.broadleafcommerce.data.tracking.core.context.ContextInfo context, @NonNull String sandbox) Moves theChangeSummariesidentified as part of theChangeSummaryGroupsidentified byChangeSummaryGroups.getChangeSummaryGroupIds()into theREJECTING statusand notifies all interested microservices that manage matchingTrackable entitiesthat they should perform a rejection for each of the said entities. This notification is performed via aWorkflowRejectRequest. A reason message for the rejection is also saved to the ChangeSummaries.If any of the items contained by a
ChangeSummaryidentified in theChangeSummaryGroupsare not owned by the author identified byContextInfo.getAuthor(), then anEntityMissingExceptionis thrown.This operation will only work if the summaries and summary groups currently have a state of
ChangeState.APPROVEDand a status inChangeStatusType.restingApproved(ChangeStatusType...).- Parameters:
changeSummaryGroups- Construct that identifies on or moreChangeSummaryGroupinstances for rejection.context- Request context information identifying user, sandbox, etc...sandbox- theSandbox.getId()on which to filter the search- Throws:
com.broadleafcommerce.data.tracking.core.exception.EntityMissingException- Thrown when any of the items specified inChangeSummaryGroups.getChangeSummaryGroupIds()()} are not owned by the author identified inContextInfo.getAuthor()QualifiedStateException- Thrown for any id values determined to be in an incorrect state from that expected to perform a transition operationChangeSummariesNotFoundException- Thrown if the change summaries cannot be found
-
revert
void revert(@NonNull ChangeSummaries summaries, @NonNull com.broadleafcommerce.data.tracking.core.context.ContextInfo context, @NonNull String sandbox) Moves theChangeSummariesidentified by theChangeSummaries.getChangeSummaryIds()into theREVERTING statusand notifies all interested microservices that manage matchingTrackable entitiesthat they should perform a reversion for each of the said entities. This notification is performed via aWorkflowRevertRequest.When
ChangeSummaries.isAllChangeSummaries()is true, this operation will rebase all items owned by the current user in theUSER state. IfChangeSummaries.isAllChangeSummaries()is false, then only the items specified inChangeSummaries.getChangeSummaryIds()are rebased.ChangeSummaries.isAllChangeSummaries()is false by default.If any of the items contained by a
ChangeSummaryidentified in theChangeSummariesare not owned by the author identified byContextInfo.getAuthor(), then anEntityMissingExceptionis thrown.- Parameters:
summaries- Construct that identifies on or moreChangeSummaryinstances.context- Request context information identifying user, sandbox, etc...sandbox- theSandbox.getId()on which to filter the search- Throws:
com.broadleafcommerce.data.tracking.core.exception.EntityMissingException- Thrown when any of the items specified inChangeSummaries.getChangeSummaryIds()are not owned by the author identified inContextInfo.getAuthor()QualifiedStateException- Thrown for any id values determined to be in an incorrect state from that expected to perform a transition operationChangeSummariesNotFoundException- Thrown if the change summaries cannot be found
-
deploy
void deploy(@NonNull ChangeSummaryGroups scheduleGroups, @NonNull com.broadleafcommerce.data.tracking.core.context.ContextInfo context, @NonNull String sandbox, int level) Moves theChangeSummaryGroupinstances identified by the scheduleGroups param into theChangeStatusType.DEPLOYINGstatus. Also, moves anyChangeSummaryinstances identified byChangeSummaryGroup.getChangeSummaryIds()into the same status. Finally, this will create a newChangeDeploythat is scheduled to deploy immediately.When
ChangeSummaryGroups.isAllChangeSummaryGroups()is true, this operation will deploy all groups owned by the current user in theAPPROVED state. Otherwise, only the items specified inChangeSummaryGroups.getChangeSummaryGroupIds()are deployed.ChangeSummaryGroups.isAllChangeSummaryGroups()is false by default.A QualifiedStateException can be thrown for any id values determined to be in an incorrect state from that expected to perform a transition operation. For example, if a
ChangeSummaryGroupwas in a DEPLOYED state already, but a deployment was requested for it, this exception would be thrown because the expected state for a deployment is APPROVED.- Parameters:
scheduleGroups- Construct that identifies one or moreChangeSummaryGroupinstances to be scheduled for a future deployment.context- Information about the deploy request containing the ID of the request's author.sandbox- The sandbox ID upon which to filter searches on when retrieving the group instances and their summaries.level- The tracking level from which to perform the deployment (seeTrackingLevel)- Throws:
QualifiedStateException- Thrown for any id values determined to be in an incorrect state from that expected to perform a transition operationChangeSummariesNotFoundException- Thrown if the change summaries cannot be found
-
scheduleDeployment
void scheduleDeployment(@NonNull ChangeSummaryGroups scheduleGroups, @NonNull com.broadleafcommerce.data.tracking.core.context.ContextInfo context, @NonNull String sandbox, @NonNull Instant deployTime, int level) Moves theChangeSummaryGroupinstances identified by the scheduleGroups param into theChangeStatusType.SCHEDULINGstatus. Also, moves anyChangeSummaryinstances identified byChangeSummaryGroup.getChangeSummaryIds()into the same status. Finally, this will create a newChangeDeploythat is scheduled to deploy at the specifieddeployTime.When
ChangeSummaryGroups.isAllChangeSummaryGroups()is true, this operation will schedule all groups owned by the current user in theAPPROVED state. Otherwise, only the items specified inChangeSummaryGroups.getChangeSummaryGroupIds()are deployed.ChangeSummaryGroups.isAllChangeSummaryGroups()is false by default.A QualifiedStateException can be thrown for any id values determined to be in an incorrect state from that expected to perform a transition operation. For example, if a
ChangeSummaryGroupwas in a DEPLOYED state already, but a scheduling was requested for it, this exception would be thrown because the expected state for a scheduling is APPROVED.- Parameters:
scheduleGroups- Construct that identifies one or moreChangeSummaryGroupinstances to be scheduled for a future deployment.context- Information about the deploy request containing the ID of the request's author.sandbox- The sandbox ID upon which to filter searches on when retrieving the group instances and their summaries.level- The tracking level from which to perform the deployment (seeTrackingLevel)- Throws:
QualifiedStateException- Thrown for any id values determined to be in an incorrect state from that expected to perform a transition operation
-
unscheduleDeployment
Deprecated.since 1.3, replaced byunscheduleDeployment(String, ContextInfo)Accepts an ID for aChangeDeploythat was previously scheduled and starts the process of unscheduling the deployment. The deployment, its groups, and their associated summaries have their statuses updated toChangeStatusType.UNSCHEDULING, and aWorkflowJobUnschedulingRequestis published to actually unschedule the job.- Parameters:
changeDeployId- the ID of the previously scheduledChangeDeploywhich should be unscheduled- Throws:
QualifiedStateException- for any values determined to be in an incorrect state from what is expected to perform an unschedule operation- See Also:
-
unscheduleDeployment
void unscheduleDeployment(@NonNull String changeDeployId, @Nullable com.broadleafcommerce.data.tracking.core.context.ContextInfo contextInfo) Accepts an ID for aChangeDeploythat was previously scheduled and starts the process of unscheduling the deployment. The deployment, its groups, and their associated summaries have their statuses updated toChangeStatusType.UNSCHEDULING, and aWorkflowJobUnschedulingRequestis published to actually unschedule the job.- Parameters:
changeDeployId- the ID of the previously scheduledChangeDeploywhich should be unscheduledcontextInfo- context information about sandboxing and multitenant state- Throws:
QualifiedStateException- for any values determined to be in an incorrect state from what is expected to perform an unschedule operation- See Also:
-
clearDeployment
void clearDeployment(@NonNull String changeDeployId, @NonNull com.broadleafcommerce.data.tracking.core.context.ContextInfo contextInfo) Accepts an ID for aChangeDeploythat previously failed and starts the process of clearing the error state of the deployment. This includes notifying (via special deployment case) all resource tier services with impacted entities. The resource tier service is responsible for rectifying theChangeDetailstate to obsolete for deployment version matches in the tracking information for affected entities.- Parameters:
changeDeployId- The ID of the previously failed deploymentcontextInfo- context information about sandboxing and multitenant state
-
remove
@NonNull @Deprecated ChangeSummaryRemovalResponse remove(@NonNull ChangeSummaryRemovalRequest changeSummaryRemovalRequest) Deprecated.since 1.3, replaced byremove(ChangeSummaryRemovalRequest, ContextInfo)Remove theChangeSummariesof the provided ids from theirChangeSummaryGroupand add them to a new one.- Parameters:
changeSummaryRemovalRequest- Construct that indicates whichChangeSummariesto remove, given their ids. Also indicates what the name of the newChangeSummaryGroupshould be.- Returns:
- Remove the
ChangeSummariesof the provided ids from theirChangeSummaryGroupand into a new one - Throws:
ChangeSummaryRemovalException- Thrown after creating the newChangeSummaryGroupwhen all provided summary ids fail during transfer from the old group to the new one
-
remove
@NonNull ChangeSummaryRemovalResponse remove(@NonNull ChangeSummaryRemovalRequest changeSummaryRemovalRequest, @Nullable com.broadleafcommerce.data.tracking.core.context.ContextInfo contextInfo) Remove theChangeSummariesof the provided ids from theirChangeSummaryGroupand add them to a new one.- Parameters:
changeSummaryRemovalRequest- Construct that indicates whichChangeSummariesto remove, given their ids. Also indicates what the name of the newChangeSummaryGroupshould be.contextInfo- context information about sandboxing and multitenant state- Returns:
- Remove the
ChangeSummariesof the provided ids from theirChangeSummaryGroupand into a new one - Throws:
ChangeSummaryRemovalException- Thrown after creating the newChangeSummaryGroupwhen all provided summary ids fail during transfer from the old group to the new one
-
findExistingChangeGroup
@Nullable @Deprecated ChangeSummaryGroup findExistingChangeGroup(@NonNull List<ChangeSummary> changeSummaries) Deprecated.since 1.3, replaced byfindExistingChangeGroup(List, ContextInfo)Retrieve the common ChangeSummaryGroup for a list of summaries- Parameters:
changeSummaries- The summaries sharing a common group- Returns:
- The group containing the requested summaries
-
findExistingChangeGroup
@Nullable ChangeSummaryGroup findExistingChangeGroup(@NonNull List<ChangeSummary> changeSummaries, @Nullable com.broadleafcommerce.data.tracking.core.context.ContextInfo contextInfo) Retrieve the common ChangeSummaryGroup for a list of summaries- Parameters:
changeSummaries- The summaries sharing a common groupcontextInfo- context information about sandboxing and multitenant state- Returns:
- The group containing the requested summaries
-
approve(ChangeSummaryGroups, String, ContextInfo)