Class EventImpl

java.lang.Object
org.nuxeo.ecm.core.event.impl.EventImpl
All Implemented Interfaces:
Serializable, Event
Direct Known Subclasses:
ShallowEvent

public class EventImpl extends Object implements Event
Event implementation.
Author:
Bogdan Stefanescu
See Also:
  • Field Details

    • name

      protected final String name
    • time

      protected final long time
    • ctx

      protected final EventContext ctx
    • flags

      protected int flags
    • rollbackException

      protected Exception rollbackException
    • rollbackMessage

      protected String rollbackMessage
  • Constructor Details

  • Method Details

    • getFlags

      public int getFlags()
      Description copied from interface: Event
      Gets the set of event flags
      Specified by:
      getFlags in interface Event
      Returns:
      the event flags
    • getContext

      public EventContext getContext()
      Description copied from interface: Event
      Gets the event context.

      Event contexts give access to the context in which the the event was raised. Event contexts are usually identifying the operation that raised the event. The context is exposing data objects linked to the event like documents and also may give access to the operation that raised the event allowing thus to canceling the operation, to record time spent to set the result status etc.

      Specified by:
      getContext in interface Event
      Returns:
      the event context
    • getName

      public String getName()
      Description copied from interface: Event
      Gets the event name.

      The name must be unique. It is recommended to use prefixes in the style of java package names to differentiate between similar events that are sent by different components.

      Specified by:
      getName in interface Event
    • getTime

      public long getTime()
      Description copied from interface: Event
      The time stamp when the event was raised.
      Specified by:
      getTime in interface Event
      Returns:
      the time stamp as returned by System.currentTimeMillis()
    • cancel

      public void cancel()
      Description copied from interface: Event
      Cancels this event.

      This can be used by event listeners to exit the event notification. Remaining event listeners will no more be notified. Note that this is not canceling the underlying operation if any.

      Specified by:
      cancel in interface Event
    • markRollBack

      public void markRollBack()
      Description copied from interface: Event
      Marks transaction for RollBack

      This will exit the event listeners loop and throw a RuntimeException In JTA container, this will make the global transaction rollback.

      Specified by:
      markRollBack in interface Event
    • markRollBack

      public void markRollBack(String message, Exception exception)
      Description copied from interface: Event
      Marks transaction for RollBack

      This will exit the event listeners loop and throw a RuntimeException In JTA container, this will make the global transaction rollback.

      Specified by:
      markRollBack in interface Event
      Parameters:
      message - message that explains the reason of the Rollback
      exception - associated Exception that explains the Rollback if any
    • markBubbleException

      public void markBubbleException()
      Description copied from interface: Event
      Marks the event to bubble the Exception thrown by a listener.

      This will exit the event listeners loop. The transaction won't be rollbacked, but the Exception will be thrown by the EventService.

      Specified by:
      markBubbleException in interface Event
    • isBubbleException

      public boolean isBubbleException()
      Description copied from interface: Event
      Returns true if the event was marked to bubble the Exception, false otherwise.
      Specified by:
      isBubbleException in interface Event
    • isMarkedForRollBack

      public boolean isMarkedForRollBack()
      Description copied from interface: Event
      Checks whether the event was marked for RollBack
      Specified by:
      isMarkedForRollBack in interface Event
      Returns:
      true if rolled back, false otherwise.
    • isCanceled

      public boolean isCanceled()
      Description copied from interface: Event
      Checks whether the event was canceled.
      Specified by:
      isCanceled in interface Event
      Returns:
      true if canceled, false otherwise.
    • isInline

      public boolean isInline()
      Description copied from interface: Event
      Whether this event must not be added to a bundle. An event is not inline by default.
      Specified by:
      isInline in interface Event
      Returns:
      true if the event must be omitted from event bundles, false otherwise.
    • setInline

      public void setInline(boolean isInline)
      Description copied from interface: Event
      Set the inline flag.
      Specified by:
      setInline in interface Event
      Parameters:
      isInline - true if the event must not be recorded as part of the transaction
      See Also:
    • isCommitEvent

      public boolean isCommitEvent()
      Description copied from interface: Event
      Tests whether or not this is a commit event. A commit event is triggering the post commit notification and then is reseting the recorded events.
      Specified by:
      isCommitEvent in interface Event
      Returns:
      true if a commit event false otherwise
    • setIsCommitEvent

      public void setIsCommitEvent(boolean isCommit)
      Description copied from interface: Event
      Set the commit flag.
      Specified by:
      setIsCommitEvent in interface Event
      See Also:
    • isImmediate

      public boolean isImmediate()
      Description copied from interface: Event
      Tests if event is Immediate

      Immediate events are sent in bundle without waiting for a commit

      Specified by:
      isImmediate in interface Event
      Returns:
      true if event is immediate, false otherwise
    • setImmediate

      public void setImmediate(boolean immediate)
      Description copied from interface: Event
      Sets the immediate flag.
      Specified by:
      setImmediate in interface Event
    • getRollbackException

      public Exception getRollbackException()
      Description copied from interface: Event
      Returns the Exception associated the RollBack if any
      Specified by:
      getRollbackException in interface Event
      Returns:
      the Exception associated the RollBack if any
    • getRollbackMessage

      public String getRollbackMessage()
      Description copied from interface: Event
      Returns the message associated to the RollBack if any
      Specified by:
      getRollbackMessage in interface Event
      Returns:
      the message associated to the RollBack if any