Interface CustomizedDataFeedProcessExecutionRepository<D extends com.broadleafcommerce.data.tracking.core.Trackable>
- All Known Subinterfaces:
DataFeedProcessExecutionRepository<D>,JpaDataFeedProcessExecutionRepository<D>
- All Known Implementing Classes:
JpaCustomizedDataFeedProcessExecutionRepository
public interface CustomizedDataFeedProcessExecutionRepository<D extends com.broadleafcommerce.data.tracking.core.Trackable>
Advanced repository methods for
DataFeedProcessExecutionRepository.-
Method Summary
Modifier and TypeMethodDescriptioninitializeNotificationState(String id, String messageType, com.broadleafcommerce.data.tracking.core.context.ContextInfo contextInfo) Atomically finds theDataFeedProcessExecutionfor the givenid, and initializes itsNotificationStateformessageType.setQueriedDataFileLocation(String id, String queriedDataFileLocation, String whereCurrentStatus, com.broadleafcommerce.data.tracking.core.context.ContextInfo contextInfo) Atomically setsDataFeedProcessExecution.getQueriedDataFileLocation()on the specified execution.setStatus(String id, String newStatus, String whereCurrentStatus, com.broadleafcommerce.data.tracking.core.context.ContextInfo contextInfo) Atomically sets a newDataFeedProcessExecution.getStatus()on the specified execution.setStatusAndCompletionDetails(String id, String newStatus, Instant endTime, boolean containsErrors, List<String> errorDetails, String whereCurrentStatus, com.broadleafcommerce.data.tracking.core.context.ContextInfo contextInfo) Atomically sets a newDataFeedProcessExecution.getStatus()and completion details on the specified execution.setStatusAndStartTime(String id, String newStatus, Instant startTime, String whereCurrentStatus, com.broadleafcommerce.data.tracking.core.context.ContextInfo contextInfo) Atomically sets a newDataFeedProcessExecution.getStatus()andDataFeedProcessExecution.getStartTime()on the specified execution.
-
Method Details
-
initializeNotificationState
@Nullable @Policy(operationTypes=UPDATE) D initializeNotificationState(String id, String messageType, @Nullable com.broadleafcommerce.data.tracking.core.context.ContextInfo contextInfo) Atomically finds theDataFeedProcessExecutionfor the givenid, and initializes itsNotificationStateformessageType.- Parameters:
id- theDataFeedProcessExecution.getId()for which to initialize the notification statemessageType- the message type (ex:NotificationState.getName()contextInfo- context information around multitenant state- Returns:
- the updated
DataFeedProcessExecutionif successfully found and updated,nullotherwise
-
setStatus
@Nullable @Policy(operationTypes=UPDATE) D setStatus(String id, String newStatus, @Nullable String whereCurrentStatus, @Nullable com.broadleafcommerce.data.tracking.core.context.ContextInfo contextInfo) Atomically sets a newDataFeedProcessExecution.getStatus()on the specified execution.- Parameters:
id- the ID of the execution to updatenewStatus- the new value to set forDataFeedProcessExecution.getStatus()whereCurrentStatus- (optional) if provided, the update will only be applied if the execution currently has this value for itsDataFeedProcessExecution.getStatus()contextInfo- context information around multitenant state- Returns:
- the updated execution if successfully updated, else
null
-
setStatusAndStartTime
@Nullable @Policy(operationTypes=UPDATE) D setStatusAndStartTime(String id, String newStatus, Instant startTime, @Nullable String whereCurrentStatus, @Nullable com.broadleafcommerce.data.tracking.core.context.ContextInfo contextInfo) Atomically sets a newDataFeedProcessExecution.getStatus()andDataFeedProcessExecution.getStartTime()on the specified execution.- Parameters:
id- the ID of the execution to updatenewStatus- the new value to set forDataFeedProcessExecution.getStatus()startTime- the value to set forDataFeedProcessExecution.getStartTime()whereCurrentStatus- (optional) if provided, the update will only be applied if the execution currently has this value for itsDataFeedProcessExecution.getStatus()contextInfo- context information around multitenant state- Returns:
- the updated execution if successfully updated, else
null
-
setStatusAndCompletionDetails
@Nullable @Policy(operationTypes=UPDATE) D setStatusAndCompletionDetails(String id, String newStatus, Instant endTime, boolean containsErrors, @Nullable List<String> errorDetails, @Nullable String whereCurrentStatus, @Nullable com.broadleafcommerce.data.tracking.core.context.ContextInfo contextInfo) Atomically sets a newDataFeedProcessExecution.getStatus()and completion details on the specified execution.- Parameters:
id- the ID of the execution to updatenewStatus- the new value to set forDataFeedProcessExecution.getStatus()endTime- the value to set forDataFeedProcessExecution.getEndTime()containsErrors- the value to set forDataFeedProcessExecution.isContainsErrors()errorDetails- (optional) the value to set forDataFeedProcessExecution.getErrorDetails()whereCurrentStatus- (optional) if provided, the update will only be applied if the execution currently has this value for itsDataFeedProcessExecution.getStatus()contextInfo- context information around multitenant state- Returns:
- the updated execution if successfully updated, else
null
-
setQueriedDataFileLocation
@Nullable @Policy(operationTypes=UPDATE) D setQueriedDataFileLocation(String id, String queriedDataFileLocation, @Nullable String whereCurrentStatus, @Nullable com.broadleafcommerce.data.tracking.core.context.ContextInfo contextInfo) Atomically setsDataFeedProcessExecution.getQueriedDataFileLocation()on the specified execution.- Parameters:
id- the ID of the execution to updatequeriedDataFileLocation- the value to set forDataFeedProcessExecution.getQueriedDataFileLocation()whereCurrentStatus- (optional) if provided, the update will only be applied if the execution currently has this value for itsDataFeedProcessExecution.getStatus()contextInfo- context information around multitenant state- Returns:
- the updated execution if successfully updated, else
null
-