Class EventLog

java.lang.Object
org.imixs.workflow.engine.jpa.EventLog
All Implemented Interfaces:
Serializable

@Entity public class EventLog extends Object implements Serializable
The EventLog entity bean is used by the EventLogService to create and access event log entries. An EventLog defines a unique event created during the processing life-cycle of a workitem or the update life-cycle of a Document entity.

An EventLog is an immutable entity. The object contains the following additional properties

  • id - identifier for the event log entry
  • ref - the reference id of the corresponding workitem or document entity
  • topic - the topic of the eventlog
  • created - the creation timestamp
  • data - an optional data field
  • timeout - an optional timestamp indicated the earliest processing time.

The 'data' attribute of an eventLog is optional and can hold any kind of event specific data (e.g. a Mail Message).

EventLog entities can be created and accessed by the EventLogService. Typically a new EventLog entity is created within the same transaction of the main processing or update life cycle. With this mechanism a client can be sure that eventLogEntries returned by the EventLogService are created during a committed Transaction.

Note: for the same document reference ($uniqueid) there can exist different eventlog entries. Eventlog entries are unique over there internal ID.

Version:
1.0
Author:
rsoika
See Also:
  • Constructor Details

    • EventLog

      public EventLog()
      default constructor for JPA
    • EventLog

      public EventLog(String topic, String ref, Map<String,List<Object>> data)
      Creates a new EventLog entity.
      Parameters:
      topic - - the event topic
      ref - - the reference to the associated document entity
      data - - a optional data list
  • Method Details

    • getId

      public String getId()
      returns the unique identifier for the Entity.
      Returns:
      universal id
    • setId

      protected void setId(String aID)
    • getVersion

      public Integer getVersion()
    • setVersion

      public void setVersion(Integer version)
    • getTopic

      public String getTopic()
      returns the topic property of the entity instance.
      Returns:
    • setTopic

      public void setTopic(String topic)
    • getRef

      public String getRef()
      returns the reference ID ($uniqueid) of the associated document or workitem instance.
      Returns:
    • setRef

      public void setRef(String ref)
    • getCreated

      public Calendar getCreated()
      returns the creation point of time.
      Returns:
      time of creation
    • setCreated

      public void setCreated(Calendar created)
    • getTimeout

      public Calendar getTimeout()
      returns an optional timeout information indicated the earliest processing time.
      Returns:
      time of creation
    • setTimeout

      public void setTimeout(Calendar timeout)
    • getData

      public Map<String,List<Object>> getData()
      returns the data object part of the Entity represented by a java.util.Map

      Data is loaded eager because it is read in any case by the DocumentService.

      Returns:
      Map
    • setData

      public void setData(Map<String,List<Object>> itemCol)
      sets a data object for this Entity.

      Note: the modified timestamp will be updated automatically to the current point of time (see setModified) independent from the value of the item $modified. The item $modified will be updated by the DocumentService on read.

      Parameters:
      data -
      Throws:
      InvalidAccessException - if $modified is missing
    • hashCode

      public int hashCode()
      Overrides:
      hashCode in class Object
    • equals

      public boolean equals(Object obj)
      Overrides:
      equals in class Object
    • toString

      public String toString()
      Overrides:
      toString in class Object