Interface ChangeSummaryService<P extends ChangeSummary>
- All Superinterfaces:
com.broadleafcommerce.data.tracking.core.service.MappableCrudEntityService<P>,com.broadleafcommerce.data.tracking.core.service.RsqlMappableCrudEntityService<P>
- All Known Implementing Classes:
DefaultChangeSummaryService
public interface ChangeSummaryService<P extends ChangeSummary>
extends com.broadleafcommerce.data.tracking.core.service.RsqlMappableCrudEntityService<P>
Service for working with
instances. Primarily involves CRUD operations
going through ChangeSummaryRepository.- Author:
- Chad Harchar (charchar)
-
Method Summary
Modifier and TypeMethodDescriptionvoidarchiveNotActiveChangeSummariesForSandbox(String sandboxId) Archives theChangeSummaryfor the specified sandbox id.voidbatchTransition(StateChangeOnlyBatchFlushContext flushContext) UpdateChangeSummaryinstances in bulk (identified bySummaryBasedFlushContext.getSummaryUpdates()) in order to mutate state (such asChangeSummary.getState()).voidbatchTransition(SummaryBasedFlushContext flushContext) Given aPromoteBatchFlushContextcontainingChangeSummarytransition information, update the state of all change summaries in a batch transaction.booleanchangesOwnedByAuthor(String author, List<String> changeSummaryIds) Whether or not all the ChangeSummary instances identified by the changeSummaryIds are owned by the requesting author.findArchivedBySandbox(String sandboxId) Find all archivedChangeSummaryfor the provided sandbox id.findCompletedTempSandboxByExample(String changeSummaryId) Based on the example change summary id, check if the change summary refers to a temporary sandbox.org.springframework.data.domain.Page<P>readAllByAuthorAndSandbox(String author, String sandbox, String[] statuses, cz.jirutka.rsql.parser.ast.Node filters, org.springframework.data.domain.Pageable page) Deprecated.org.springframework.data.domain.Page<P>readAllByAuthorAndSandbox(String author, String sandbox, String[] statuses, cz.jirutka.rsql.parser.ast.Node filters, org.springframework.data.domain.Pageable page, boolean vendorNarrowing, com.broadleafcommerce.data.tracking.core.context.ContextInfo contextInfo) Find allChangeSummariesfor the provided author and sandbox.org.springframework.data.domain.Page<P>readAllByAuthorAndSandboxWithDivergenceDetection(String author, String sandbox, String[] statuses, cz.jirutka.rsql.parser.ast.Node filters, org.springframework.data.domain.Pageable page) Deprecated.org.springframework.data.domain.Page<P>readAllByAuthorAndSandboxWithDivergenceDetection(String author, String sandbox, String[] statuses, cz.jirutka.rsql.parser.ast.Node filters, org.springframework.data.domain.Pageable page, boolean vendorNarrowing, com.broadleafcommerce.data.tracking.core.context.ContextInfo contextInfo) Find allChangeSummariesfor the provided author and sandbox.readAllByChangeInfoRequest(ChangeInfoRequest changeInfoRequest) Deprecated.since 1.3, replaced byreadAllByChangeInfoRequest(ChangeInfoRequest, boolean, ContextInfo)readAllByChangeInfoRequest(ChangeInfoRequest changeInfoRequest, boolean vendorNarrowing, com.broadleafcommerce.data.tracking.core.context.ContextInfo contextInfo) RetrievesChangeSummariesfor bothChangeState.USERandChangeState.PROMOTEDstates against the providedChangeInfoRequest.TakesChangeSummary.getArchived()into account when retrieving a summary with the given ID.readByIdAndNotArchived(String id, boolean vendorNarrowing, com.broadleafcommerce.data.tracking.core.context.ContextInfo contextInfo) TakesChangeSummary.getArchived()into account when retrieving a summary with the given ID.Deprecated.since 1.3, replaced byreadByIdAndNotArchivedWithDivergenceDetection(String, boolean, ContextInfo)readByIdAndNotArchivedWithDivergenceDetection(String id, boolean vendorNarrowing, com.broadleafcommerce.data.tracking.core.context.ContextInfo contextInfo) TakesChangeSummary.getArchived()into account when retrieving a summary with the given ID.Deprecated.since 1.3, replaced byreadChangeSummariesByAuthor(String, String, String, List, boolean, ContextInfo)readChangeSummariesByAuthor(String author, String sandbox, String state, List<String> status, boolean vendorNarrowing, com.broadleafcommerce.data.tracking.core.context.ContextInfo contextInfo) Find all records belonging to the current author, sandbox andChangeStatereadChangeSummariesByAuthor(String author, String sandbox, String state, List<String> status, List<String> ids) Deprecated.since 1.3, replaced byreadChangeSummariesByAuthor(String, String, String, List, List, boolean, ContextInfo)readChangeSummariesByAuthor(String author, String sandbox, String state, List<String> status, List<String> ids, boolean vendorNarrowing, com.broadleafcommerce.data.tracking.core.context.ContextInfo contextInfo) Find all records belonging to the current author, sandbox andChangeStatereadChangeSummariesByIds(List<String> changeSummaryIds) Deprecated.since 1.3, replaced byreadChangeSummariesByIds(List, boolean, ContextInfo)readChangeSummariesByIds(List<String> changeSummaryIds, boolean vendorNarrowing, com.broadleafcommerce.data.tracking.core.context.ContextInfo contextInfo) Find all records for the provided list of ids.readChangeSummariesByIds(List<String> changeSummaryIds, List<String> states, List<String> statuses, String sandbox) Find all records in the list of ids that also have the requested state.readChangeSummariesByIds(List<String> changeSummaryIds, List<String> states, List<String> statuses, String sandbox, boolean vendorNarrowing, com.broadleafcommerce.data.tracking.core.context.ContextInfo contextInfo) Find all records in the list of ids that also have the requested state.readChangeSummariesByIdsCount(List<String> changeSummaryIds, List<String> states, List<String> statuses, String sandbox) Find the count of all records in the list of ids that also have the requested state.readChangeSummary(ChangeSummaryRequest changeSummaryRequest) Find an existing record with the corresponding matching values that determine uniqueness.Find all record ids belonging to the current author, sandbox andChangeStatereadDeployFailedChangeSummaries(String deployId, boolean vendorNarrowing, com.broadleafcommerce.data.tracking.core.context.ContextInfo contextInfo) Find all records marked with statusERROR_DEPLOYfor the requesteddeployId.readDivergedChangeSummariesByAuthor(String author, String sandbox) Find all records belonging to the current author and sandbox containing one or moreChangeDetailvalues which has become diverged due to another change already promoted by another user.readDivergedChangeSummariesByIds(List<String> changeSummaryIds, String sandbox) Find all identified records belonging to the current sandbox containing one or moreChangeDetailvalues which has become diverged due to another change already promoted by another user.readMatchingChangeSummary(P changeSummary) Find a matching change summary using the provided instance.readSandboxChangeSummaries(ChangeInfoRequest changeInfoRequest) Deprecated.since 1.3, replaced byreadSandboxChangeSummaries(ChangeInfoRequest, boolean, ContextInfo)readSandboxChangeSummaries(ChangeInfoRequest changeInfoRequest, boolean vendorNarrowing, com.broadleafcommerce.data.tracking.core.context.ContextInfo contextInfo) Find allChangeSummarieswith corresponding matching values to the providedChangeInfoRequestthat are in theChangeState.PROMOTED,ChangeState.APPROVED, orChangeState.SCHEDULEDstate.readUserChangeSummaries(ChangeInfoRequest changeInfoRequest, boolean scheduled) Deprecated.since 1.3, replaced byreadUserChangeSummaries(ChangeInfoRequest, boolean, boolean, ContextInfo)readUserChangeSummaries(ChangeInfoRequest changeInfoRequest, boolean scheduled, boolean vendorNarrowing, com.broadleafcommerce.data.tracking.core.context.ContextInfo contextInfo) booleanupdateVals(String changeSummaryId, List<String> whereStates, List<String> whereStatuses, String messageType, Map<String, Object> vals) Update the fields for a record matching the idbooleanupdateVals(String changeSummaryId, List<String> whereStates, List<String> whereStatuses, String messageType, Map<String, Object> vals, boolean insertNotificationStateIfMissing) Update the fields for a record matching the idvoidupdateVals(List<String> changeSummaryIds, String whereState, List<String> whereStatus, Map<String, Object> vals) Update the fields for all non-archived records matching the idsMethods inherited from interface com.broadleafcommerce.data.tracking.core.service.MappableCrudEntityService
create, createAll, createAllAllowingPartialSuccess, delete, readAll, readAll, readAll, readAllByIds, readById, replace, replaceAll, replaceAllAllowingPartialSuccess, update, updateAll, updateAllAllowingPartialSuccessMethods inherited from interface com.broadleafcommerce.data.tracking.core.service.RsqlMappableCrudEntityService
readAll, readAll, readAll, readAll
-
Method Details
-
readByIdAndNotArchived
TakesChangeSummary.getArchived()into account when retrieving a summary with the given ID.- Parameters:
id- ID of the summary to retrieve- Returns:
- A
ChangeSummarymatching the given ID and not archived
-
readByIdAndNotArchived
P readByIdAndNotArchived(@NonNull String id, boolean vendorNarrowing, @Nullable com.broadleafcommerce.data.tracking.core.context.ContextInfo contextInfo) TakesChangeSummary.getArchived()into account when retrieving a summary with the given ID.- Parameters:
id- ID of the summary to retrievevendorNarrowing- whether or not to filter results based on the current authentication's vendor restrictions if vendor processing is enabledcontextInfo- context information about sandboxing and multitenant state- Returns:
- A
ChangeSummarymatching the given ID and not archived
-
readByIdAndNotArchivedWithDivergenceDetection
Deprecated.since 1.3, replaced byreadByIdAndNotArchivedWithDivergenceDetection(String, boolean, ContextInfo)TakesChangeSummary.getArchived()into account when retrieving a summary with the given ID. Also will populate theChangeSummary.getDivergentStatus()field.- Parameters:
id- ID of the summary to retrieve- Returns:
- A
ChangeSummarymatching the given ID and not archived
-
readByIdAndNotArchivedWithDivergenceDetection
P readByIdAndNotArchivedWithDivergenceDetection(@NonNull String id, boolean vendorNarrowing, @Nullable com.broadleafcommerce.data.tracking.core.context.ContextInfo contextInfo) TakesChangeSummary.getArchived()into account when retrieving a summary with the given ID. Also will populate theChangeSummary.getDivergentStatus()field.- Parameters:
id- ID of the summary to retrievevendorNarrowing- whether or not to filter results based on the current authentication's vendor restrictions if vendor processing is enabledcontextInfo- context information about sandboxing and multitenant state- Returns:
- A
ChangeSummarymatching the given ID and not archived
-
readChangeSummary
Find an existing record with the corresponding matching values that determine uniqueness.- Parameters:
changeSummaryRequest- Request DTO to find a matching change summary- Returns:
- an optional matching record
-
readMatchingChangeSummary
Find a matching change summary using the provided instance. Default implementation will check against the five fields that determine uniqueness for a change summary.- Parameters:
changeSummary- The change summary to use when looking for an existing match- Returns:
- The existing matching change summary to the one provided
-
readChangeSummariesByAuthor
@Deprecated @NonNull Stream<P> readChangeSummariesByAuthor(@NonNull String author, @NonNull String sandbox, @NonNull String state, @Nullable List<String> status) Deprecated.since 1.3, replaced byreadChangeSummariesByAuthor(String, String, String, List, boolean, ContextInfo)Find all records belonging to the current author, sandbox andChangeState- Parameters:
author-ChangeSummary.getAuthor()sandbox-ChangeSummary.getSandbox()state-ChangeSummary.getState()status- OptionalChangeSummary.getStatus()- Returns:
- A Stream that can be iterated, possibly containing a large number or records
-
readChangeSummariesByAuthor
@NonNull Stream<P> readChangeSummariesByAuthor(@NonNull String author, @NonNull String sandbox, @NonNull String state, @Nullable List<String> status, boolean vendorNarrowing, @Nullable com.broadleafcommerce.data.tracking.core.context.ContextInfo contextInfo) Find all records belonging to the current author, sandbox andChangeState- Parameters:
author-ChangeSummary.getAuthor()sandbox-ChangeSummary.getSandbox()state-ChangeSummary.getState()status- OptionalChangeSummary.getStatus()vendorNarrowing- whether or not to filter results based on the current authentication's vendor restrictions if vendor processing is enabledcontextInfo- context information about sandboxing and multitenant state- Returns:
- A Stream that can be iterated, possibly containing a large number or records
-
readChangeSummariesByAuthor
@Deprecated @NonNull Stream<P> readChangeSummariesByAuthor(@NonNull String author, @NonNull String sandbox, @NonNull String state, @Nullable List<String> status, @NonNull List<String> ids) Deprecated.since 1.3, replaced byreadChangeSummariesByAuthor(String, String, String, List, List, boolean, ContextInfo)Find all records belonging to the current author, sandbox andChangeState- Parameters:
author-ChangeSummary.getAuthor()sandbox-ChangeSummary.getSandbox()state-ChangeSummary.getState()status- OptionalChangeSummary.getStatus()ids- The list of ids to which the fetch should be limited- Returns:
- A Stream that can be iterated, possibly containing a large number or records
-
readChangeSummariesByAuthor
@NonNull Stream<P> readChangeSummariesByAuthor(@NonNull String author, @NonNull String sandbox, @NonNull String state, @Nullable List<String> status, @NonNull List<String> ids, boolean vendorNarrowing, @Nullable com.broadleafcommerce.data.tracking.core.context.ContextInfo contextInfo) Find all records belonging to the current author, sandbox andChangeState- Parameters:
author-ChangeSummary.getAuthor()sandbox-ChangeSummary.getSandbox()state-ChangeSummary.getState()status- OptionalChangeSummary.getStatus()ids- The list of ids to which the fetch should be limitedvendorNarrowing- whether or not to filter results based on the current authentication's vendor restrictions if vendor processing is enabledcontextInfo- context information about sandboxing and multitenant state- Returns:
- A Stream that can be iterated, possibly containing a large number or records
-
readChangeSummaryIdsByAuthor
@NonNull List<String> readChangeSummaryIdsByAuthor(@NonNull String author, @NonNull String sandbox, @NonNull String state, List<String> status) Find all record ids belonging to the current author, sandbox andChangeState- Parameters:
author-ChangeSummary.getAuthor()sandbox-ChangeSummary.getSandbox()state-ChangeSummary.getState()status- OptionalChangeSummary.getStatus()- Returns:
- A Stream that can be iterated, possibly containing a large number or records
-
readDeployFailedChangeSummaries
@NonNull Stream<P> readDeployFailedChangeSummaries(@NonNull String deployId, boolean vendorNarrowing, @Nullable com.broadleafcommerce.data.tracking.core.context.ContextInfo contextInfo) Find all records marked with statusERROR_DEPLOYfor the requesteddeployId.- Parameters:
deployId- The deployment to which the records are associatedvendorNarrowing- Whether to filter results based on the current authentication's vendor restrictions if vendor processing is enabledcontextInfo- Context information about sandboxing and multitenant state- Returns:
- All records marked with status
ERROR_DEPLOYfor the requesteddeployIdas a stream
-
readChangeSummariesByIds
@NonNull Stream<P> readChangeSummariesByIds(List<String> changeSummaryIds, List<String> states, List<String> statuses, @NonNull String sandbox) Find all records in the list of ids that also have the requested state.- Parameters:
changeSummaryIds- The requested list ofChangeSummary.getId()states- The required matching stateChangeSummary.getState(), cannot be emptystatuses- OptionalChangeSummary.getStatus()sandbox- The sandbox to filter records by- Returns:
- A Stream that can be iterated, possibly containing a large number or records
- Throws:
IllegalArgumentException- if nostatesto filter by
-
readChangeSummariesByIds
@NonNull Stream<P> readChangeSummariesByIds(List<String> changeSummaryIds, List<String> states, List<String> statuses, @NonNull String sandbox, boolean vendorNarrowing, @Nullable com.broadleafcommerce.data.tracking.core.context.ContextInfo contextInfo) Find all records in the list of ids that also have the requested state.- Parameters:
changeSummaryIds- The requested list ofChangeSummary.getId()states- The required matching stateChangeSummary.getState(), cannot be emptystatuses- OptionalChangeSummary.getStatus()sandbox- The sandbox to filter records byvendorNarrowing- whether or not to filter results based on the current authentication's vendor restrictions if vendor processing is enabledcontextInfo- context information about sandboxing and multitenant state- Returns:
- A Stream that can be iterated, possibly containing a large number or records
- Throws:
IllegalArgumentException- if nostatesto filter by
-
readChangeSummariesByIdsCount
@NonNull Long readChangeSummariesByIdsCount(@NonNull List<String> changeSummaryIds, List<String> states, List<String> statuses, @NonNull String sandbox) Find the count of all records in the list of ids that also have the requested state.- Parameters:
changeSummaryIds- The requested list ofChangeSummary.getId()states- The required matching stateChangeSummary.getState(), cannot be emptystatuses- OptionalChangeSummary.getStatus()sandbox- The sandbox to filter records by- Returns:
- A Stream that can be iterated, possibly containing a large number or records
- Throws:
IllegalArgumentException- if nostatesto filter by
-
readChangeSummariesByIds
Deprecated.since 1.3, replaced byreadChangeSummariesByIds(List, boolean, ContextInfo)Find all records for the provided list of ids.- Parameters:
changeSummaryIds- the ids to find Change Summaries against- Returns:
- all matching Change Summaries for the provided ids
-
readChangeSummariesByIds
@NonNull Stream<P> readChangeSummariesByIds(@NonNull List<String> changeSummaryIds, boolean vendorNarrowing, @Nullable com.broadleafcommerce.data.tracking.core.context.ContextInfo contextInfo) Find all records for the provided list of ids.- Parameters:
changeSummaryIds- the ids to find Change Summaries againstvendorNarrowing- whether or not to filter results based on the current authentication's vendor restrictions if vendor processing is enabledcontextInfo- context information about sandboxing and multitenant state- Returns:
- all matching Change Summaries for the provided ids
-
batchTransition
Given aPromoteBatchFlushContextcontainingChangeSummarytransition information, update the state of all change summaries in a batch transaction. This includes updating notification states for durable messaging.- Parameters:
flushContext- Context object containing all change summary transition to batch commit
-
batchTransition
UpdateChangeSummaryinstances in bulk (identified bySummaryBasedFlushContext.getSummaryUpdates()) in order to mutate state (such asChangeSummary.getState()).- Parameters:
flushContext- Context object containing the change summary transition information to commit
-
updateVals
boolean updateVals(@NonNull String changeSummaryId, List<String> whereStates, List<String> whereStatuses, @Nullable String messageType, Map<String, Object> vals) Update the fields for a record matching the id
Calling this method is effectively the same as calling
updateVals(String, List, List, String, Map, boolean), but with theinsertNotificationStateIfMissingparameter set tofalse.- Parameters:
changeSummaryId- The id requested to mutatewhereStates- The current state of the ChangeSummary to match. Optional.whereStatuses- list of status values that a ChangeSummary should match one or more of. Optional.messageType- if some of thevalstarget a notification state of a certain message type, this value should be supplied to filter to that state. Optional.vals- Map of field to value changes to make to the ChangeSummary instance- Returns:
- Whether or not an update was performed. If no record found matching the id and state, will return false.
- Throws:
IllegalArgumentException- if there were no vals to update
-
updateVals
boolean updateVals(@NonNull String changeSummaryId, List<String> whereStates, List<String> whereStatuses, @Nullable String messageType, Map<String, Object> vals, boolean insertNotificationStateIfMissing) Update the fields for a record matching the id- Parameters:
changeSummaryId- The id requested to mutatewhereStates- The current state of the ChangeSummary to match. Optional.whereStatuses- list of status values that a ChangeSummary should match one or more of. Optional.messageType- if some of thevalstarget a notification state of a certain message type, this value should be supplied to filter to that state. Optional.vals- Map of field to value changes to make to the ChangeSummary instanceinsertNotificationStateIfMissing- ifvalstarget a notification state andmessageTypeis provided, this flag determines whether the flow will newly insert the notification state if it does not already exist in the datastore. In other words, when this flag is false, the flow will only try to update an existing notification state with the provided details invals. When this flag istrue, if the update attempt is unsuccessful because the notification state is missing, the flow will attempt to newly insert that state into the datastore.- Returns:
- Whether or not an update was performed. If no record found matching the id and state, will return false.
- Throws:
IllegalArgumentException- if there were no vals to update- Since:
- Sandbox Service 2.0.6, Sandbox Service 2.1.3, Release Train 2.1.4, Release Train 2.2.0
- See Also:
-
updateVals
void updateVals(@NonNull List<String> changeSummaryIds, @Nullable String whereState, @Nullable List<String> whereStatus, @NonNull Map<String, Object> vals) Update the fields for all non-archived records matching the ids- Parameters:
changeSummaryIds- The ids requested to mutatewhereState- The current state of the ChangeSummary to match. Optional.whereStatus- list of status values that a ChangeSummary should match one or more of. Optional.vals- Map of field to value changes to make to the ChangeSummary instance
-
changesOwnedByAuthor
Whether or not all the ChangeSummary instances identified by the changeSummaryIds are owned by the requesting author.- Parameters:
author- The author making the request.ContextInfo.getAuthor()changeSummaryIds- The ids requested to mutate- Returns:
- Whether or not all the requested ids belong to ChangeSummary instances owned by the author
-
readDivergedChangeSummariesByAuthor
@NonNull List<String> readDivergedChangeSummariesByAuthor(@NonNull String author, @NonNull String sandbox) Find all records belonging to the current author and sandbox containing one or moreChangeDetailvalues which has become diverged due to another change already promoted by another user.- Parameters:
author-ChangeSummary.getAuthor()sandbox-ChangeSummary.getSandbox()- Returns:
- The list of diverged
ChangeSummary.getId()values
-
readDivergedChangeSummariesByIds
@NonNull List<String> readDivergedChangeSummariesByIds(@NonNull List<String> changeSummaryIds, @NonNull String sandbox) Find all identified records belonging to the current sandbox containing one or moreChangeDetailvalues which has become diverged due to another change already promoted by another user.- Parameters:
changeSummaryIds- The requested list ofChangeSummary.getId()sandbox- The sandbox for which change summaries should be filtered- Returns:
- The list of diverged
ChangeSummary.getId()values
-
readAllByAuthorAndSandbox
@Deprecated @NonNull org.springframework.data.domain.Page<P> readAllByAuthorAndSandbox(@NonNull String author, @NonNull String sandbox, @Nullable String[] statuses, @Nullable cz.jirutka.rsql.parser.ast.Node filters, @NonNull org.springframework.data.domain.Pageable page) Deprecated.since 1.3, replaced byreadAllByAuthorAndSandbox(String, String, String[], Node, Pageable, boolean, ContextInfo)Find allChangeSummariesfor the provided author and sandbox.- Parameters:
author- the author of the change summaries to returnsandbox- the sandbox associated to the change summaries to returnstatuses- the list ofChangeStatusTypevalues for which aChangeSummary.getStatus()should match one of. Optional.filters- the RSQLNodeused to restrict resultpage- pagination information- Returns:
- all Change Summaries for the author and sandbox provided
-
readAllByAuthorAndSandbox
@NonNull org.springframework.data.domain.Page<P> readAllByAuthorAndSandbox(@NonNull String author, @NonNull String sandbox, @Nullable String[] statuses, @Nullable cz.jirutka.rsql.parser.ast.Node filters, @NonNull org.springframework.data.domain.Pageable page, boolean vendorNarrowing, @Nullable com.broadleafcommerce.data.tracking.core.context.ContextInfo contextInfo) Find allChangeSummariesfor the provided author and sandbox.- Parameters:
author- the author of the change summaries to returnsandbox- the sandbox associated to the change summaries to returnstatuses- the list ofChangeStatusTypevalues for which aChangeSummary.getStatus()should match one of. Optional.filters- the RSQLNodeused to restrict resultpage- pagination informationvendorNarrowing- whether or not to filter results based on the current authentication's vendor restrictions if vendor processing is enabledcontextInfo- context information about sandboxing and multitenant state- Returns:
- all Change Summaries for the author and sandbox provided
-
readAllByAuthorAndSandboxWithDivergenceDetection
@Deprecated @NonNull org.springframework.data.domain.Page<P> readAllByAuthorAndSandboxWithDivergenceDetection(@NonNull String author, @NonNull String sandbox, @Nullable String[] statuses, @Nullable cz.jirutka.rsql.parser.ast.Node filters, @NonNull org.springframework.data.domain.Pageable page) Deprecated.Find allChangeSummariesfor the provided author and sandbox. Also will populate theChangeSummary.getDivergentStatus()field.- Parameters:
author- the author of the change summaries to returnsandbox- the sandbox associated to the change summaries to returnstatuses- the list ofChangeStatusTypevalues for which aChangeSummary.getStatus()should match one of. Optional.filters- the RSQLNodeused to restrict resultpage- pagination information- Returns:
- all Change Summaries for the author and sandbox provided
-
readAllByAuthorAndSandboxWithDivergenceDetection
@NonNull org.springframework.data.domain.Page<P> readAllByAuthorAndSandboxWithDivergenceDetection(@NonNull String author, @NonNull String sandbox, @Nullable String[] statuses, @Nullable cz.jirutka.rsql.parser.ast.Node filters, @NonNull org.springframework.data.domain.Pageable page, boolean vendorNarrowing, @Nullable com.broadleafcommerce.data.tracking.core.context.ContextInfo contextInfo) Find allChangeSummariesfor the provided author and sandbox. Also will populate theChangeSummary.getDivergentStatus()field.- Parameters:
author- the author of the change summaries to returnsandbox- the sandbox associated to the change summaries to returnstatuses- the list ofChangeStatusTypevalues for which aChangeSummary.getStatus()should match one of. Optional.filters- the RSQLNodeused to restrict resultpage- pagination informationvendorNarrowing- whether or not to filter results based on the current authentication's vendor restrictions if vendor processing is enabledcontextInfo- context information about sandboxing and multitenant state- Returns:
- all Change Summaries for the author and sandbox provided
-
readSandboxChangeSummaries
@Deprecated @NonNull List<P> readSandboxChangeSummaries(@NonNull ChangeInfoRequest changeInfoRequest) Deprecated.since 1.3, replaced byreadSandboxChangeSummaries(ChangeInfoRequest, boolean, ContextInfo)Find allChangeSummarieswith corresponding matching values to the providedChangeInfoRequestthat are in theChangeState.PROMOTED,ChangeState.APPROVED, orChangeState.SCHEDULEDstate.- Parameters:
changeInfoRequest- the request data for retrievingChangeSummaries- Returns:
- all records with the corresponding matching values in the
ChangeState.PROMOTED,ChangeState.APPROVED, orChangeState.SCHEDULEDstate
-
readSandboxChangeSummaries
@NonNull List<P> readSandboxChangeSummaries(@NonNull ChangeInfoRequest changeInfoRequest, boolean vendorNarrowing, @Nullable com.broadleafcommerce.data.tracking.core.context.ContextInfo contextInfo) Find allChangeSummarieswith corresponding matching values to the providedChangeInfoRequestthat are in theChangeState.PROMOTED,ChangeState.APPROVED, orChangeState.SCHEDULEDstate.- Parameters:
changeInfoRequest- the request data for retrievingChangeSummariesvendorNarrowing- whether or not to filter results based on the current authentication's vendor restrictions if vendor processing is enabledcontextInfo- context information about sandboxing and multitenant state- Returns:
- all records with the corresponding matching values in the
ChangeState.PROMOTED,ChangeState.APPROVED, orChangeState.SCHEDULEDstate
-
readUserChangeSummaries
@Deprecated @NonNull List<P> readUserChangeSummaries(@NonNull ChangeInfoRequest changeInfoRequest, boolean scheduled) Deprecated.since 1.3, replaced byreadUserChangeSummaries(ChangeInfoRequest, boolean, boolean, ContextInfo)- Parameters:
changeInfoRequest- the request data for retrievingChangeSummariesscheduled- Applies to a user change summary that is in a scheduled for deploy stateChangeState.SCHEDULED. This state can occur during aTransitionRequestManager#promoteDeploy(PromoteSummaries, ContextInfo, String, boolean)flow (espcially when there was an error during the deployment).- Returns:
- the
ChangeState.USERChangeSummariesthat match the provided criteria
-
readUserChangeSummaries
@NonNull List<P> readUserChangeSummaries(@NonNull ChangeInfoRequest changeInfoRequest, boolean scheduled, boolean vendorNarrowing, @Nullable com.broadleafcommerce.data.tracking.core.context.ContextInfo contextInfo) - Parameters:
changeInfoRequest- the request data for retrievingChangeSummariesscheduled- Applies to a user change summary that is in a scheduled for deploy stateChangeState.SCHEDULED. This state can occur during aTransitionRequestManager#promoteDeploy(PromoteSummaries, ContextInfo, String, boolean)flow (espcially when there was an error during the deployment).vendorNarrowing- whether or not to filter results based on the current authentication's vendor restrictions if vendor processing is enabledcontextInfo- context information about sandboxing and multitenant state- Returns:
- the
ChangeState.USERChangeSummariesthat match the provided criteria
-
readAllByChangeInfoRequest
@Deprecated @NonNull List<P> readAllByChangeInfoRequest(@NonNull ChangeInfoRequest changeInfoRequest) Deprecated.since 1.3, replaced byreadAllByChangeInfoRequest(ChangeInfoRequest, boolean, ContextInfo)RetrievesChangeSummariesfor bothChangeState.USERandChangeState.PROMOTEDstates against the providedChangeInfoRequest.- Parameters:
changeInfoRequest- the request data for retrievingChangeSummaries- Returns:
ChangeSummariesretrieved from the providedChangeInfoRequest
-
readAllByChangeInfoRequest
@NonNull List<P> readAllByChangeInfoRequest(@NonNull ChangeInfoRequest changeInfoRequest, boolean vendorNarrowing, @Nullable com.broadleafcommerce.data.tracking.core.context.ContextInfo contextInfo) RetrievesChangeSummariesfor bothChangeState.USERandChangeState.PROMOTEDstates against the providedChangeInfoRequest.- Parameters:
changeInfoRequest- the request data for retrievingChangeSummariesvendorNarrowing- whether or not to filter results based on the current authentication's vendor restrictions if vendor processing is enabledcontextInfo- context information about sandboxing and multitenant state- Returns:
ChangeSummariesretrieved from the providedChangeInfoRequest
-
findCompletedTempSandboxByExample
Based on the example change summary id, check if the change summary refers to a temporary sandbox. Return null if not. If so, find the count of remaining active ChangeSummary instances that also refer to that sandbox. A returned sandbox id indicates all ChangeSummary instances have completed their lifecycle and the sandbox can be archived. If there are still active ChangeSummary instances for the sandbox, null is returned. SeeChangeSummary#isTemporarySandbox().- Parameters:
changeSummaryId- The id of the ChangeSummary to check for temporary sandbox status.- Returns:
- null if not associated with a temporary sandbox, or some ChangeSummaries are still active against the sandbox. Otherwise, the sandbox id of the Sandbox that can be archived.
-
archiveNotActiveChangeSummariesForSandbox
@Transactional("sandboxTransactionManager") void archiveNotActiveChangeSummariesForSandbox(String sandboxId) Archives theChangeSummaryfor the specified sandbox id.- Parameters:
sandboxId- the sandbox id associated to the change summaries- Throws:
ArchiveChangeSummaryException- if there areChangeSummaryin active state.- See Also:
-
findArchivedBySandbox
Find all archivedChangeSummaryfor the provided sandbox id.- Parameters:
sandboxId- he sandbox id associated to the change summaries- Returns:
- the list of archived
ChangeSummary
-
readAllByAuthorAndSandbox(String, String, String[], Node, Pageable, boolean, ContextInfo)