Class IncrementalDataFeedEntityUpdateRecord
java.lang.Object
com.broadleafcommerce.datafeed.domain.IncrementalDataFeedEntityUpdateRecord
- All Implemented Interfaces:
com.broadleafcommerce.data.tracking.core.ContextStateAware
,Serializable
public class IncrementalDataFeedEntityUpdateRecord
extends Object
implements Serializable, com.broadleafcommerce.data.tracking.core.ContextStateAware
For each
IncrementalDataFeedEntityUpdateEvent
that is received, an
IncrementalDataFeedEntityUpdateRecord
record will be created for each
DataFeedProcess
of type DefaultDataFeedProcessTypes.PARTIAL_UPDATE
who may be
interested in processing it. This means each DataFeedProcess
will effectively
have its own 'queue' of update events that it can process whenever it is executed.
Generally speaking, the expectation is for the DataFeedProcess
to be executed at some
regular interval and handle any queued IncrementalDataFeedEntityUpdateRecord
s in bulk.
Admin users should almost never be responsible for making direct CRUD requests on this entity. The system should be in charge of managing these records.
-
Constructor Summary
-
Method Summary
Modifier and TypeMethodDescriptionprotected boolean
boolean
Should contain a value fromDefaultIncrementalEventProductReferenceTypes
describing the type of product reference ingetAffectedProductReferenceValue()
.The reference key value of the product affected by this entity update event record.com.broadleafcommerce.data.tracking.core.filtering.business.domain.ContextState
A subset ofTracking
information to expose the context state for this object.This will benull
until aDataFeedProcessExecution
is started for the parentgetDataFeedProcessId()
and this event record is marked as part of that execution.TheDataFeedProcess.getId()
of theDataFeedProcess
which this event record was created for.The timestamp when the entity update notification message was actually received by data feed services.getId()
The context ID of this event record.Notification events from other services should include timestamps describing when the actual update occurred, and we record it here.int
hashCode()
void
setAffectedProductReferenceType
(String affectedProductReferenceType) Should contain a value fromDefaultIncrementalEventProductReferenceTypes
describing the type of product reference ingetAffectedProductReferenceValue()
.void
setAffectedProductReferenceValue
(String affectedProductReferenceValue) The reference key value of the product affected by this entity update event record.void
setContextState
(com.broadleafcommerce.data.tracking.core.filtering.business.domain.ContextState contextState) A subset ofTracking
information to expose the context state for this object.void
setDataFeedProcessExecutionId
(String dataFeedProcessExecutionId) This will benull
until aDataFeedProcessExecution
is started for the parentgetDataFeedProcessId()
and this event record is marked as part of that execution.void
setDataFeedProcessId
(String dataFeedProcessId) TheDataFeedProcess.getId()
of theDataFeedProcess
which this event record was created for.void
setEventReceivedTime
(Instant eventReceivedTime) The timestamp when the entity update notification message was actually received by data feed services.void
The context ID of this event record.void
setOriginalEventTime
(Instant originalEventTime) Notification events from other services should include timestamps describing when the actual update occurred, and we record it here.toString()
-
Constructor Details
-
IncrementalDataFeedEntityUpdateRecord
public IncrementalDataFeedEntityUpdateRecord()
-
-
Method Details
-
getId
The context ID of this event record.- Returns:
- the id of this event record
-
getDataFeedProcessId
TheDataFeedProcess.getId()
of theDataFeedProcess
which this event record was created for.- Returns:
- the ID of the data feed process this event record is for
-
getDataFeedProcessExecutionId
This will benull
until aDataFeedProcessExecution
is started for the parentgetDataFeedProcessId()
and this event record is marked as part of that execution.- Returns:
- the
DataFeedProcessExecution.getId()
of the execution that is processing this event record, elsenull
if this event record is still pending processing
-
getAffectedProductReferenceType
Should contain a value fromDefaultIncrementalEventProductReferenceTypes
describing the type of product reference ingetAffectedProductReferenceValue()
.Different services may use different mechanisms to reference products, which is why this is necessary.
- Returns:
- the type of product reference in
getAffectedProductReferenceValue()
- See Also:
-
getAffectedProductReferenceValue
The reference key value of the product affected by this entity update event record.- Returns:
- the reference key value of the product affected by this entity update event record
- See Also:
-
getOriginalEventTime
Notification events from other services should include timestamps describing when the actual update occurred, and we record it here.- Returns:
- the timestamp describing when the actual update event occurred
- See Also:
-
getEventReceivedTime
The timestamp when the entity update notification message was actually received by data feed services.- Returns:
- the timestamp when the entity update notification message was actually received by data feed services
-
getContextState
public com.broadleafcommerce.data.tracking.core.filtering.business.domain.ContextState getContextState()A subset ofTracking
information to expose the context state for this object.- Specified by:
getContextState
in interfacecom.broadleafcommerce.data.tracking.core.ContextStateAware
- Returns:
- a subset of
Tracking
information to expose the context state for this object
-
setId
The context ID of this event record.- Parameters:
id
- the id of this event record
-
setDataFeedProcessId
TheDataFeedProcess.getId()
of theDataFeedProcess
which this event record was created for.- Parameters:
dataFeedProcessId
- the ID of the data feed process this event record is for
-
setDataFeedProcessExecutionId
This will benull
until aDataFeedProcessExecution
is started for the parentgetDataFeedProcessId()
and this event record is marked as part of that execution.- Parameters:
dataFeedProcessExecutionId
- theDataFeedProcessExecution.getId()
of the execution that is processing this event record, elsenull
if this event record is still pending processing
-
setAffectedProductReferenceType
Should contain a value fromDefaultIncrementalEventProductReferenceTypes
describing the type of product reference ingetAffectedProductReferenceValue()
.Different services may use different mechanisms to reference products, which is why this is necessary.
- Parameters:
affectedProductReferenceType
- the type of product reference ingetAffectedProductReferenceValue()
- See Also:
-
setAffectedProductReferenceValue
The reference key value of the product affected by this entity update event record.- Parameters:
affectedProductReferenceValue
- the reference key value of the product affected by this entity update event record- See Also:
-
setOriginalEventTime
Notification events from other services should include timestamps describing when the actual update occurred, and we record it here.- Parameters:
originalEventTime
- the timestamp describing when the actual update event occurred- See Also:
-
setEventReceivedTime
The timestamp when the entity update notification message was actually received by data feed services.- Parameters:
eventReceivedTime
- the timestamp when the entity update notification message was actually received by data feed services
-
setContextState
public void setContextState(com.broadleafcommerce.data.tracking.core.filtering.business.domain.ContextState contextState) A subset ofTracking
information to expose the context state for this object.- Specified by:
setContextState
in interfacecom.broadleafcommerce.data.tracking.core.ContextStateAware
- Parameters:
contextState
- a subset ofTracking
information to expose the context state for this object
-
equals
-
canEqual
-
hashCode
public int hashCode() -
toString
-