Class AbstractThingEvent<T extends AbstractThingEvent<T>>

java.lang.Object
org.eclipse.ditto.base.model.signals.events.AbstractEvent<T>
org.eclipse.ditto.base.model.signals.events.AbstractEventsourcedEvent<T>
org.eclipse.ditto.things.model.signals.events.AbstractThingEvent<T>
Type Parameters:
T - the type of the implementing class.
All Implemented Interfaces:
org.eclipse.ditto.base.model.entity.id.WithEntityId, org.eclipse.ditto.base.model.headers.DittoHeadersSettable<T>, org.eclipse.ditto.base.model.headers.WithDittoHeaders, org.eclipse.ditto.base.model.headers.WithManifest, org.eclipse.ditto.base.model.json.Jsonifiable<org.eclipse.ditto.json.JsonObject>, org.eclipse.ditto.base.model.json.Jsonifiable.WithPredicate<org.eclipse.ditto.json.JsonObject,org.eclipse.ditto.json.JsonField>, org.eclipse.ditto.base.model.signals.events.Event<T>, org.eclipse.ditto.base.model.signals.events.EventsourcedEvent<T>, org.eclipse.ditto.base.model.signals.Signal<T>, org.eclipse.ditto.base.model.signals.SignalWithEntityId<T>, org.eclipse.ditto.base.model.signals.WithName, org.eclipse.ditto.base.model.signals.WithOptionalEntity<T>, org.eclipse.ditto.base.model.signals.WithResource, org.eclipse.ditto.base.model.signals.WithType, ThingEvent<T>, WithThingId
Direct Known Subclasses:
AttributeCreated, AttributeDeleted, AttributeModified, AttributesCreated, AttributesDeleted, AttributesModified, FeatureCreated, FeatureDefinitionCreated, FeatureDefinitionDeleted, FeatureDefinitionModified, FeatureDeleted, FeatureDesiredPropertiesCreated, FeatureDesiredPropertiesDeleted, FeatureDesiredPropertiesModified, FeatureDesiredPropertyCreated, FeatureDesiredPropertyDeleted, FeatureDesiredPropertyModified, FeatureModified, FeaturePropertiesCreated, FeaturePropertiesDeleted, FeaturePropertiesModified, FeaturePropertyCreated, FeaturePropertyDeleted, FeaturePropertyModified, FeaturesCreated, FeaturesDeleted, FeaturesModified, PolicyIdModified, ThingCreated, ThingDefinitionCreated, ThingDefinitionDeleted, ThingDefinitionModified, ThingDeleted, ThingMerged, ThingModified

@Immutable public abstract class AbstractThingEvent<T extends AbstractThingEvent<T>> extends org.eclipse.ditto.base.model.signals.events.AbstractEventsourcedEvent<T> implements ThingEvent<T>
Abstract base class of an event store event.
  • Nested Class Summary

    Nested classes/interfaces inherited from interface org.eclipse.ditto.base.model.signals.events.Event

    org.eclipse.ditto.base.model.signals.events.Event.JsonFields

    Nested classes/interfaces inherited from interface org.eclipse.ditto.base.model.signals.events.EventsourcedEvent

    org.eclipse.ditto.base.model.signals.events.EventsourcedEvent.JsonFields

    Nested classes/interfaces inherited from interface org.eclipse.ditto.base.model.json.Jsonifiable

    org.eclipse.ditto.base.model.json.Jsonifiable.WithFieldSelector, org.eclipse.ditto.base.model.json.Jsonifiable.WithFieldSelectorAndPredicate<T extends Object>, org.eclipse.ditto.base.model.json.Jsonifiable.WithPointer<J extends org.eclipse.ditto.json.JsonValue>, org.eclipse.ditto.base.model.json.Jsonifiable.WithPredicate<J extends org.eclipse.ditto.json.JsonValue,T extends Object>

    Nested classes/interfaces inherited from interface org.eclipse.ditto.things.model.signals.events.ThingEvent

    ThingEvent.JsonFields
  • Field Summary

    Fields inherited from interface org.eclipse.ditto.base.model.signals.events.Event

    DEFAULT_REVISION, TYPE_QUALIFIER

    Fields inherited from interface org.eclipse.ditto.base.model.signals.Signal

    CHANNEL_LIVE, CHANNEL_TWIN

    Fields inherited from interface org.eclipse.ditto.things.model.signals.events.ThingEvent

    RESOURCE_TYPE, TYPE_PREFIX

    Fields inherited from interface org.eclipse.ditto.base.model.signals.WithType

    MESSAGES_COMMAND_RESPONSES_PREFIX, MESSAGES_COMMANDS_PREFIX, POLICY_ANNOUNCEMENT_PREFIX, THINGS_COMMAND_RESPONSES_PREFIX, THINGS_COMMANDS_PREFIX, THINGS_EVENTS_PREFIX
  • Constructor Summary

    Constructors
    Modifier
    Constructor
    Description
    protected
    AbstractThingEvent(String type, ThingId thingId, long revision, Instant timestamp, org.eclipse.ditto.base.model.headers.DittoHeaders dittoHeaders, org.eclipse.ditto.base.model.entity.metadata.Metadata metadata)
    Constructs a new AbstractThingEvent object.
  • Method Summary

    Modifier and Type
    Method
    Description
    protected boolean
     
    boolean
     
     
    int
     
     

    Methods inherited from class org.eclipse.ditto.base.model.signals.events.AbstractEventsourcedEvent

    getRevision, setRevision, toJson

    Methods inherited from class org.eclipse.ditto.base.model.signals.events.AbstractEvent

    appendPayload, getDittoHeaders, getManifest, getMetadata, getTimestamp, getType

    Methods inherited from class java.lang.Object

    clone, finalize, getClass, notify, notifyAll, wait, wait, wait

    Methods inherited from interface org.eclipse.ditto.base.model.signals.events.Event

    getImplementedSchemaVersion, getMetadata, getTimestamp, getType, toJson

    Methods inherited from interface org.eclipse.ditto.base.model.signals.events.EventsourcedEvent

    getRevision

    Methods inherited from interface org.eclipse.ditto.base.model.json.Jsonifiable

    getLatestSchemaVersion, getSupportedSchemaVersions, implementsSchemaVersion, implementsSchemaVersion, toJsonString

    Methods inherited from interface org.eclipse.ditto.base.model.json.Jsonifiable.WithPredicate

    toJson, toJson, toJsonString, toJsonString

    Methods inherited from interface org.eclipse.ditto.base.model.signals.Signal

    getName

    Methods inherited from interface org.eclipse.ditto.things.model.signals.events.ThingEvent

    getCommandCategory, getResourceType, setDittoHeaders

    Methods inherited from interface org.eclipse.ditto.base.model.headers.WithDittoHeaders

    getDittoHeaders

    Methods inherited from interface org.eclipse.ditto.base.model.headers.WithManifest

    getManifest

    Methods inherited from interface org.eclipse.ditto.base.model.signals.WithOptionalEntity

    getEntity, getEntity, setEntity

    Methods inherited from interface org.eclipse.ditto.base.model.signals.WithResource

    getResourcePath
  • Constructor Details

    • AbstractThingEvent

      protected AbstractThingEvent(String type, ThingId thingId, long revision, @Nullable Instant timestamp, org.eclipse.ditto.base.model.headers.DittoHeaders dittoHeaders, @Nullable org.eclipse.ditto.base.model.entity.metadata.Metadata metadata)
      Constructs a new AbstractThingEvent object.
      Parameters:
      type - the type of this event.
      thingId - the ID of the Thing with which this event is associated.
      revision - the revision of the Thing.
      timestamp - the timestamp of the event.
      dittoHeaders - the headers of the command which was the cause of this event.
      metadata - the metadata which was applied together with the event, relative to the event's WithResource.getResourcePath().
      Throws:
      NullPointerException - if any argument but timestamp or metadata is null.
  • Method Details

    • getEntityId

      public ThingId getEntityId()
      Specified by:
      getEntityId in interface org.eclipse.ditto.base.model.entity.id.WithEntityId
      Specified by:
      getEntityId in interface WithThingId
      Overrides:
      getEntityId in class org.eclipse.ditto.base.model.signals.events.AbstractEventsourcedEvent<T extends AbstractThingEvent<T>>
    • equals

      public boolean equals(@Nullable Object o)
      Overrides:
      equals in class org.eclipse.ditto.base.model.signals.events.AbstractEventsourcedEvent<T extends AbstractThingEvent<T>>
    • canEqual

      protected boolean canEqual(@Nullable Object other)
      Overrides:
      canEqual in class org.eclipse.ditto.base.model.signals.events.AbstractEventsourcedEvent<T extends AbstractThingEvent<T>>
    • hashCode

      public int hashCode()
      Overrides:
      hashCode in class org.eclipse.ditto.base.model.signals.events.AbstractEventsourcedEvent<T extends AbstractThingEvent<T>>
    • toString

      public String toString()
      Overrides:
      toString in class org.eclipse.ditto.base.model.signals.events.AbstractEventsourcedEvent<T extends AbstractThingEvent<T>>