Interface Trackable
-
- All Superinterfaces:
com.broadleafcommerce.common.messaging.notification.domain.NotificationStateAware
,Serializable
- All Known Subinterfaces:
ApplicationTrackable<D>
,CatalogTrackable<D>
,CustomerContextTrackable<D>
,FullTrackable<D>
,SandboxTrackable<D>
,TenantTrackable<D>
,TypedTrackable<D>
public interface Trackable extends com.broadleafcommerce.common.messaging.notification.domain.NotificationStateAware, Serializable
Defines a domain class type that supports tracking information (audit, sandbox and catalog).- Author:
- Jeff Fischer
- See Also:
Tracking
-
-
Method Summary
All Methods Instance Methods Abstract Methods Default Methods Modifier and Type Method Description String
getContextId()
Retrieve the context id, which is a separate identifier from the database primary key.default Optional<String>
getDisplay()
Get the user friendly name for this trackable entity.default List<com.broadleafcommerce.common.messaging.notification.domain.NotificationState>
getNotificationStates()
default List<com.broadleafcommerce.common.messaging.notification.domain.NotificationState>
getNotificationStates(boolean fetch)
Tracking
getTracking()
Retrieve the tracking information from the entityvoid
setContextId(String contextId)
Set the context id, which is a separate identifier from the database primary key.default void
setNotificationStates(List<com.broadleafcommerce.common.messaging.notification.domain.NotificationState> notificationStates)
void
setTracking(Tracking tracking)
Set the tracking information from the entity
-
-
-
Method Detail
-
getTracking
@Nullable Tracking getTracking()
Retrieve the tracking information from the entity- Returns:
- Tracking information or
null
if none was supplied
-
setTracking
void setTracking(@Nullable Tracking tracking)
Set the tracking information from the entity- Parameters:
tracking
- Tracking information
-
getContextId
String getContextId()
Retrieve the context id, which is a separate identifier from the database primary key. This may be auto generated, or may be explicitly provided upon entity creation. Context ids are generally used by the sandbox related code as part of identifying different sandbox versions of the same item (i.e. they share the same contextId).- Returns:
- The non-primary key identifier
-
setContextId
void setContextId(String contextId)
Set the context id, which is a separate identifier from the database primary key. This is used by the auto-generation logic inCreateSetupDomainMapperMember
to set the generated value. Context ids are generally used by the sandbox related code as part of identifying different sandbox versions of the same item (i.e. they share the same contextId).- Parameters:
contextId
- the non-primary key identifier
-
getDisplay
default Optional<String> getDisplay()
Get the user friendly name for this trackable entity. Useful when displaying change details to a user. This should be extended for any trackable extended class that has a corresponding field that identifies a specific entity for a user, such as a name field.- Returns:
- user friendly display name
-
getNotificationStates
default List<com.broadleafcommerce.common.messaging.notification.domain.NotificationState> getNotificationStates()
- Specified by:
getNotificationStates
in interfacecom.broadleafcommerce.common.messaging.notification.domain.NotificationStateAware
-
getNotificationStates
default List<com.broadleafcommerce.common.messaging.notification.domain.NotificationState> getNotificationStates(boolean fetch)
- Specified by:
getNotificationStates
in interfacecom.broadleafcommerce.common.messaging.notification.domain.NotificationStateAware
-
setNotificationStates
default void setNotificationStates(List<com.broadleafcommerce.common.messaging.notification.domain.NotificationState> notificationStates)
- Specified by:
setNotificationStates
in interfacecom.broadleafcommerce.common.messaging.notification.domain.NotificationStateAware
-
-