java.lang.Object
org.eclipse.ditto.base.model.signals.commands.AbstractCommand<DeleteThing>
org.eclipse.ditto.things.model.signals.commands.modify.DeleteThing
All Implemented Interfaces:
org.eclipse.ditto.base.model.entity.id.WithEntityId, org.eclipse.ditto.base.model.entity.type.WithEntityType, org.eclipse.ditto.base.model.headers.DittoHeadersSettable<DeleteThing>, 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.commands.Command<DeleteThing>, org.eclipse.ditto.base.model.signals.Signal<DeleteThing>, org.eclipse.ditto.base.model.signals.SignalWithEntityId<DeleteThing>, org.eclipse.ditto.base.model.signals.WithName, org.eclipse.ditto.base.model.signals.WithOptionalEntity<DeleteThing>, org.eclipse.ditto.base.model.signals.WithResource, org.eclipse.ditto.base.model.signals.WithType, ThingModifyCommand<DeleteThing>, ThingCommand<DeleteThing>, WithThingId

@Immutable public final class DeleteThing extends org.eclipse.ditto.base.model.signals.commands.AbstractCommand<DeleteThing> implements ThingModifyCommand<DeleteThing>
This command deletes a thing. Contains the thingId of the Thing. If the Thing did not exist in the system, a response with status code 404 (Not found) will be generated.
  • Nested Class Summary

    Nested classes/interfaces inherited from interface org.eclipse.ditto.base.model.signals.commands.Command

    org.eclipse.ditto.base.model.signals.commands.Command.Category, org.eclipse.ditto.base.model.signals.commands.Command.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.commands.ThingCommand

    ThingCommand.JsonFields
  • Field Summary

    Fields
    Modifier and Type
    Field
    Description
    static final String
    Name of the "Delete Thing" command.
    static final String
    Type of this command.

    Fields inherited from interface org.eclipse.ditto.base.model.signals.commands.Command

    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.commands.ThingCommand

    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
  • Method Summary

    Modifier and Type
    Method
    Description
    protected void
    appendPayload(org.eclipse.ditto.json.JsonObjectBuilder jsonObjectBuilder, org.eclipse.ditto.base.model.json.JsonSchemaVersion schemaVersion, Predicate<org.eclipse.ditto.json.JsonField> thePredicate)
     
    boolean
    Checks whether this command may change authorization of the Thing.
    boolean
     
    fromJson(String jsonString, org.eclipse.ditto.base.model.headers.DittoHeaders dittoHeaders)
    Creates a new DeleteThing from a JSON string.
    fromJson(org.eclipse.ditto.json.JsonObject jsonObject, org.eclipse.ditto.base.model.headers.DittoHeaders dittoHeaders)
    Creates a new DeleteThing from a JSON object.
    org.eclipse.ditto.base.model.signals.commands.Command.Category
     
     
    org.eclipse.ditto.json.JsonPointer
     
    int
     
    of(ThingId thingId, org.eclipse.ditto.base.model.headers.DittoHeaders dittoHeaders)
    Returns a command for deleting a Thing.
    setDittoHeaders(org.eclipse.ditto.base.model.headers.DittoHeaders dittoHeaders)
     
    setEntity(org.eclipse.ditto.json.JsonValue entity)
     
     

    Methods inherited from class org.eclipse.ditto.base.model.signals.commands.AbstractCommand

    canEqual, getDittoHeaders, getManifest, getType, toJson

    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.commands.Command

    getImplementedSchemaVersion, toJson, toJson

    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, toJsonString, toJsonString

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

    getName

    Methods inherited from interface org.eclipse.ditto.things.model.signals.commands.ThingCommand

    getEntityType, getResourceType, getTypePrefix

    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

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

    getType
  • Field Details

  • Method Details

    • of

      public static DeleteThing of(ThingId thingId, org.eclipse.ditto.base.model.headers.DittoHeaders dittoHeaders)
      Returns a command for deleting a Thing. Its ID is passed as argument.
      Parameters:
      thingId - the ID of a Thing to be deleted by this command.
      dittoHeaders - the headers of the command.
      Returns:
      a command for deleting the Thing.
      Throws:
      NullPointerException - if dittoHeaders is null
    • fromJson

      public static DeleteThing fromJson(String jsonString, org.eclipse.ditto.base.model.headers.DittoHeaders dittoHeaders)
      Creates a new DeleteThing from a JSON string.
      Parameters:
      jsonString - the JSON string of which the command is to be created.
      dittoHeaders - the headers of the command.
      Returns:
      the command.
      Throws:
      NullPointerException - if any argument is null.
      IllegalArgumentException - if jsonString is empty.
      org.eclipse.ditto.json.JsonParseException - if the passed in jsonString was not in the expected format.
      ThingIdInvalidException - if the parsed thing ID did not comply to RegexPatterns.ID_REGEX.
    • fromJson

      public static DeleteThing fromJson(org.eclipse.ditto.json.JsonObject jsonObject, org.eclipse.ditto.base.model.headers.DittoHeaders dittoHeaders)
      Creates a new DeleteThing from a JSON object.
      Parameters:
      jsonObject - the JSON object of which the command is to be created.
      dittoHeaders - the headers of the command.
      Returns:
      the command.
      Throws:
      NullPointerException - if any argument is null.
      org.eclipse.ditto.json.JsonParseException - if the passed in jsonObject was not in the expected format.
      ThingIdInvalidException - if the parsed thing ID did not comply to RegexPatterns.ID_REGEX.
    • getEntityId

      public ThingId getEntityId()
      Specified by:
      getEntityId in interface org.eclipse.ditto.base.model.entity.id.WithEntityId
      Specified by:
      getEntityId in interface WithThingId
    • getResourcePath

      public org.eclipse.ditto.json.JsonPointer getResourcePath()
      Specified by:
      getResourcePath in interface org.eclipse.ditto.base.model.signals.WithResource
    • appendPayload

      protected void appendPayload(org.eclipse.ditto.json.JsonObjectBuilder jsonObjectBuilder, org.eclipse.ditto.base.model.json.JsonSchemaVersion schemaVersion, Predicate<org.eclipse.ditto.json.JsonField> thePredicate)
      Specified by:
      appendPayload in class org.eclipse.ditto.base.model.signals.commands.AbstractCommand<DeleteThing>
    • getCategory

      public org.eclipse.ditto.base.model.signals.commands.Command.Category getCategory()
      Specified by:
      getCategory in interface org.eclipse.ditto.base.model.signals.commands.Command<DeleteThing>
    • setDittoHeaders

      public DeleteThing setDittoHeaders(org.eclipse.ditto.base.model.headers.DittoHeaders dittoHeaders)
      Specified by:
      setDittoHeaders in interface org.eclipse.ditto.base.model.signals.commands.Command<DeleteThing>
      Specified by:
      setDittoHeaders in interface org.eclipse.ditto.base.model.headers.DittoHeadersSettable<DeleteThing>
      Specified by:
      setDittoHeaders in interface ThingCommand<DeleteThing>
      Specified by:
      setDittoHeaders in interface ThingModifyCommand<DeleteThing>
    • setEntity

      public DeleteThing setEntity(org.eclipse.ditto.json.JsonValue entity)
      Specified by:
      setEntity in interface org.eclipse.ditto.base.model.signals.WithOptionalEntity<DeleteThing>
    • changesAuthorization

      public boolean changesAuthorization()
      Description copied from interface: ThingModifyCommand
      Checks whether this command may change authorization of the Thing.
      Specified by:
      changesAuthorization in interface ThingModifyCommand<DeleteThing>
      Returns:
      true if authorization would change, false otherwise.
    • hashCode

      public int hashCode()
      Overrides:
      hashCode in class org.eclipse.ditto.base.model.signals.commands.AbstractCommand<DeleteThing>
    • equals

      public boolean equals(@Nullable Object obj)
      Overrides:
      equals in class org.eclipse.ditto.base.model.signals.commands.AbstractCommand<DeleteThing>
    • toString

      public String toString()
      Overrides:
      toString in class org.eclipse.ditto.base.model.signals.commands.AbstractCommand<DeleteThing>