Class RetrieveFeatureDesiredProperties

java.lang.Object
org.eclipse.ditto.base.model.signals.commands.AbstractCommand<RetrieveFeatureDesiredProperties>
org.eclipse.ditto.things.model.signals.commands.query.RetrieveFeatureDesiredProperties
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<RetrieveFeatureDesiredProperties>, 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<RetrieveFeatureDesiredProperties>, org.eclipse.ditto.base.model.signals.commands.WithSelectedFields, org.eclipse.ditto.base.model.signals.Signal<RetrieveFeatureDesiredProperties>, org.eclipse.ditto.base.model.signals.SignalWithEntityId<RetrieveFeatureDesiredProperties>, org.eclipse.ditto.base.model.signals.WithFeatureId, org.eclipse.ditto.base.model.signals.WithName, org.eclipse.ditto.base.model.signals.WithResource, org.eclipse.ditto.base.model.signals.WithType, ThingQueryCommand<RetrieveFeatureDesiredProperties>, ThingCommand<RetrieveFeatureDesiredProperties>, WithThingId

@Immutable public final class RetrieveFeatureDesiredProperties extends org.eclipse.ditto.base.model.signals.commands.AbstractCommand<RetrieveFeatureDesiredProperties> implements ThingQueryCommand<RetrieveFeatureDesiredProperties>, org.eclipse.ditto.base.model.signals.WithFeatureId
This command retrieves a Feature's desired properties.
Since:
1.5.0
  • 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 "Retrieve Feature Desired Properties" 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)
     
    protected boolean
     
    boolean
     
    fromJson(String jsonString, org.eclipse.ditto.base.model.headers.DittoHeaders dittoHeaders)
    Creates a new RetrieveFeatureDesiredProperties from a JSON string.
    fromJson(org.eclipse.ditto.json.JsonObject jsonObject, org.eclipse.ditto.base.model.headers.DittoHeaders dittoHeaders)
    Creates a new RetrieveFeatureDesiredProperties from a JSON object.
     
     
    org.eclipse.ditto.json.JsonPointer
     
    Optional<org.eclipse.ditto.json.JsonFieldSelector>
     
    org.eclipse.ditto.base.model.json.JsonSchemaVersion[]
    RetrieveFeatureDesiredProperties is only available in JsonSchemaVersion V_2.
    int
     
    of(ThingId thingId, CharSequence featureId, org.eclipse.ditto.json.JsonFieldSelector selectedFields, org.eclipse.ditto.base.model.headers.DittoHeaders dittoHeaders)
    Returns a Command for retrieving a Feature's desired properties on a Thing.
    of(ThingId thingId, String featureId, org.eclipse.ditto.base.model.headers.DittoHeaders dittoHeaders)
    Returns a Command for retrieving a Feature's desired properties on a Thing.
    setDittoHeaders(org.eclipse.ditto.base.model.headers.DittoHeaders dittoHeaders)
     
     

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

    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, 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.things.model.signals.commands.query.ThingQueryCommand

    getCategory

    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.WithType

    getType
  • Field Details

  • Method Details

    • of

      public static RetrieveFeatureDesiredProperties of(ThingId thingId, String featureId, org.eclipse.ditto.base.model.headers.DittoHeaders dittoHeaders)
      Returns a Command for retrieving a Feature's desired properties on a Thing.
      Parameters:
      thingId - the Thing's ID whose Feature's desired properties to retrieve.
      featureId - the Feature's ID whose desired properties to retrieve.
      dittoHeaders - the headers of the command.
      Returns:
      a Command for retrieving the desired properties of the specified Feature.
      Throws:
      NullPointerException - if any argument but thingId is null.
    • of

      public static RetrieveFeatureDesiredProperties of(ThingId thingId, CharSequence featureId, @Nullable org.eclipse.ditto.json.JsonFieldSelector selectedFields, org.eclipse.ditto.base.model.headers.DittoHeaders dittoHeaders)
      Returns a Command for retrieving a Feature's desired properties on a Thing.
      Parameters:
      thingId - the Thing's ID whose Feature's desired properties to retrieve.
      featureId - the Feature's ID whose desired properties to retrieve.
      selectedFields - defines the fields of the JSON representation of the desired properties to retrieve.
      dittoHeaders - the headers of the command.
      Returns:
      a Command for retrieving the desired properties of the specified Feature.
      Throws:
      NullPointerException - if featureId or dittoHeaders is null.
    • fromJson

      public static RetrieveFeatureDesiredProperties fromJson(String jsonString, org.eclipse.ditto.base.model.headers.DittoHeaders dittoHeaders)
      Creates a new RetrieveFeatureDesiredProperties 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 RetrieveFeatureDesiredProperties fromJson(org.eclipse.ditto.json.JsonObject jsonObject, org.eclipse.ditto.base.model.headers.DittoHeaders dittoHeaders)
      Creates a new RetrieveFeatureDesiredProperties 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.
    • getSelectedFields

      public Optional<org.eclipse.ditto.json.JsonFieldSelector> getSelectedFields()
      Specified by:
      getSelectedFields in interface org.eclipse.ditto.base.model.signals.commands.WithSelectedFields
    • getEntityId

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

      public String getFeatureId()
      Specified by:
      getFeatureId in interface org.eclipse.ditto.base.model.signals.WithFeatureId
    • getSupportedSchemaVersions

      public org.eclipse.ditto.base.model.json.JsonSchemaVersion[] getSupportedSchemaVersions()
      RetrieveFeatureDesiredProperties is only available in JsonSchemaVersion V_2.
      Specified by:
      getSupportedSchemaVersions in interface org.eclipse.ditto.base.model.json.Jsonifiable<org.eclipse.ditto.json.JsonObject>
      Returns:
      the supported JsonSchemaVersions.
    • 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<RetrieveFeatureDesiredProperties>
    • setDittoHeaders

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

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

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

      protected boolean canEqual(@Nullable Object other)
      Overrides:
      canEqual in class org.eclipse.ditto.base.model.signals.commands.AbstractCommand<RetrieveFeatureDesiredProperties>
    • toString

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