Package alpine.event.framework
Class AbstractChainableEvent
- java.lang.Object
-
- alpine.event.framework.AbstractChainableEvent
-
- All Implemented Interfaces:
ChainableEvent,Event
- Direct Known Subclasses:
SingletonCapableEvent
public abstract class AbstractChainableEvent extends Object implements ChainableEvent
Provides a default abstract implementation of an Event which supports an unbounded chain of callbacks that can be routed between differentIEventServiceimplementations.- Since:
- 1.2.0
- Author:
- Steve Springett
-
-
Constructor Summary
Constructors Constructor Description AbstractChainableEvent()
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description UUIDgetChainIdentifier()Returns the unique identifier for the chain this event is a part of.UUIDgetEventIdentifier()Returns the unique identifier for this event.ChainLink[]onFailure()Returns the optional callback event that should be processed if this event is not successful.ChainableEventonFailure(Event onFailureEvent)Fluent method that sets the onFailure Event and returns this object.ChainableEventonFailure(Event onFailureEvent, Class<? extends IEventService> onFailureEventService)Fluent method that sets the onFailure Event and returns this object.ChainLink[]onSuccess()Returns the optional callback event that should be processed if this event is successful.ChainableEventonSuccess(Event onSuccessEvent)Fluent method that sets the onSuccess Event and returns this object.ChainableEventonSuccess(Event onSuccessEvent, Class<? extends IEventService> onSuccessEventService)Fluent method that sets the onSuccess Event and returns this object.voidsetChainIdentifier(UUID chainIdentifier)Sets the unique identifier for the chain this event is a part of.
-
-
-
Method Detail
-
getEventIdentifier
public UUID getEventIdentifier()
Returns the unique identifier for this event.- Specified by:
getEventIdentifierin interfaceChainableEvent- Returns:
- the unique identifier for this event
- Since:
- 1.4.0
-
getChainIdentifier
public UUID getChainIdentifier()
Returns the unique identifier for the chain this event is a part of.- Specified by:
getChainIdentifierin interfaceChainableEvent- Returns:
- the unique identifier for the chain this event is a part of
- Since:
- 1.4.0
-
setChainIdentifier
public void setChainIdentifier(UUID chainIdentifier)
Sets the unique identifier for the chain this event is a part of.- Specified by:
setChainIdentifierin interfaceChainableEvent- Parameters:
chainIdentifier- the UUID of the chain- Since:
- 1.4.0
-
onSuccess
public ChainLink[] onSuccess()
Returns the optional callback event that should be processed if this event is successful.- Specified by:
onSuccessin interfaceChainableEvent- Returns:
- an Event
- Since:
- 1.2.0
-
onFailure
public ChainLink[] onFailure()
Returns the optional callback event that should be processed if this event is not successful.- Specified by:
onFailurein interfaceChainableEvent- Returns:
- an Event
- Since:
- 1.2.0
-
onSuccess
public ChainableEvent onSuccess(Event onSuccessEvent)
Fluent method that sets the onSuccess Event and returns this object.- Specified by:
onSuccessin interfaceChainableEvent- Parameters:
onSuccessEvent- the event to publish if this event succeeds- Returns:
- the current object
- Since:
- 1.2.0
-
onSuccess
public ChainableEvent onSuccess(Event onSuccessEvent, Class<? extends IEventService> onSuccessEventService)
Fluent method that sets the onSuccess Event and returns this object.- Specified by:
onSuccessin interfaceChainableEvent- Parameters:
onSuccessEvent- the event to publish if this event succeedsonSuccessEventService- the specific IEventService implementation to use- Returns:
- the current object
- Since:
- 1.2.0
-
onFailure
public ChainableEvent onFailure(Event onFailureEvent)
Fluent method that sets the onFailure Event and returns this object.- Specified by:
onFailurein interfaceChainableEvent- Parameters:
onFailureEvent- the event to publish if this event fails- Returns:
- the current object
- Since:
- 1.2.0
-
onFailure
public ChainableEvent onFailure(Event onFailureEvent, Class<? extends IEventService> onFailureEventService)
Fluent method that sets the onFailure Event and returns this object.- Specified by:
onFailurein interfaceChainableEvent- Parameters:
onFailureEvent- the event to publish if this event failsonFailureEventService- the specific IEventService implementation to use- Returns:
- the current object
- Since:
- 1.2.0
-
-