Class ModifyFeatureDefinition

  • All Implemented Interfaces:
    org.eclipse.ditto.model.base.entity.type.WithEntityType, org.eclipse.ditto.model.base.headers.WithDittoHeaders<ModifyFeatureDefinition>, org.eclipse.ditto.model.base.headers.WithManifest, org.eclipse.ditto.model.base.json.Jsonifiable<org.eclipse.ditto.json.JsonObject>, org.eclipse.ditto.model.base.json.Jsonifiable.WithPredicate<org.eclipse.ditto.json.JsonObject,​org.eclipse.ditto.json.JsonField>, org.eclipse.ditto.model.things.WithThingId, org.eclipse.ditto.signals.base.Signal<ModifyFeatureDefinition>, org.eclipse.ditto.signals.base.WithFeatureId, org.eclipse.ditto.signals.base.WithId, org.eclipse.ditto.signals.base.WithName, org.eclipse.ditto.signals.base.WithOptionalEntity, org.eclipse.ditto.signals.base.WithResource, org.eclipse.ditto.signals.base.WithType, org.eclipse.ditto.signals.commands.base.Command<ModifyFeatureDefinition>, ThingModifyCommand<ModifyFeatureDefinition>, ThingCommand<ModifyFeatureDefinition>

    @Immutable
    public final class ModifyFeatureDefinition
    extends org.eclipse.ditto.signals.commands.base.AbstractCommand<ModifyFeatureDefinition>
    implements ThingModifyCommand<ModifyFeatureDefinition>, org.eclipse.ditto.signals.base.WithFeatureId
    This command modifies a Feature's Definition.
    • Nested Class Summary

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

        org.eclipse.ditto.signals.commands.base.Command.Category, org.eclipse.ditto.signals.commands.base.Command.JsonFields
      • Nested classes/interfaces inherited from interface org.eclipse.ditto.model.base.json.Jsonifiable

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

      Fields 
      Modifier and Type Field Description
      static String NAME
      Name of the "Modify Feature Definition" command.
      static String TYPE
      Type of this command.
      • Fields inherited from interface org.eclipse.ditto.signals.commands.base.Command

        TYPE_QUALIFIER
    • Method Summary

      All Methods Static Methods Instance Methods Concrete Methods Deprecated Methods 
      Modifier and Type Method Description
      protected void appendPayload​(org.eclipse.ditto.json.JsonObjectBuilder jsonObjectBuilder, org.eclipse.ditto.model.base.json.JsonSchemaVersion schemaVersion, Predicate<org.eclipse.ditto.json.JsonField> thePredicate)  
      protected boolean canEqual​(Object other)  
      boolean changesAuthorization()
      Checks whether this command may change authorization of the Thing.
      boolean equals​(Object o)  
      static ModifyFeatureDefinition fromJson​(String jsonString, org.eclipse.ditto.model.base.headers.DittoHeaders dittoHeaders)
      Creates a new ModifyFeatureDefinition from a JSON string.
      static ModifyFeatureDefinition fromJson​(org.eclipse.ditto.json.JsonObject jsonObject, org.eclipse.ditto.model.base.headers.DittoHeaders dittoHeaders)
      Creates a new ModifyFeatureDefinition from a JSON object.
      org.eclipse.ditto.signals.commands.base.Command.Category getCategory()  
      org.eclipse.ditto.model.things.FeatureDefinition getDefinition()
      Returns the FeatureDefinition to modify.
      Optional<org.eclipse.ditto.json.JsonValue> getEntity​(org.eclipse.ditto.model.base.json.JsonSchemaVersion schemaVersion)  
      String getFeatureId()  
      org.eclipse.ditto.json.JsonPointer getResourcePath()  
      org.eclipse.ditto.model.things.ThingId getThingEntityId()  
      int hashCode()  
      static ModifyFeatureDefinition of​(String thingId, String featureId, org.eclipse.ditto.model.things.FeatureDefinition definition, org.eclipse.ditto.model.base.headers.DittoHeaders dittoHeaders)
      Deprecated.
      Thing ID is now typed.
      static ModifyFeatureDefinition of​(org.eclipse.ditto.model.things.ThingId thingId, String featureId, org.eclipse.ditto.model.things.FeatureDefinition definition, org.eclipse.ditto.model.base.headers.DittoHeaders dittoHeaders)
      Returns a Command for modifying a Feature's Definition on a Thing.
      ModifyFeatureDefinition setDittoHeaders​(org.eclipse.ditto.model.base.headers.DittoHeaders dittoHeaders)  
      String toString()  
      • Methods inherited from class org.eclipse.ditto.signals.commands.base.AbstractCommand

        getDittoHeaders, getManifest, getType, toJson
      • Methods inherited from interface org.eclipse.ditto.signals.commands.base.Command

        getImplementedSchemaVersion, toJson, toJson
      • Methods inherited from interface org.eclipse.ditto.model.base.json.Jsonifiable

        getLatestSchemaVersion, getSupportedSchemaVersions, implementsSchemaVersion, implementsSchemaVersion, toJsonString
      • Methods inherited from interface org.eclipse.ditto.model.base.json.Jsonifiable.WithPredicate

        toJson, toJsonString, toJsonString
      • Methods inherited from interface org.eclipse.ditto.signals.base.Signal

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

        getDittoHeaders
      • Methods inherited from interface org.eclipse.ditto.signals.base.WithId

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

        getManifest
      • Methods inherited from interface org.eclipse.ditto.signals.base.WithOptionalEntity

        getEntity
      • Methods inherited from interface org.eclipse.ditto.model.things.WithThingId

        getThingId
      • Methods inherited from interface org.eclipse.ditto.signals.base.WithType

        getType
    • Method Detail

      • of

        public static ModifyFeatureDefinition of​(org.eclipse.ditto.model.things.ThingId thingId,
                                                 String featureId,
                                                 org.eclipse.ditto.model.things.FeatureDefinition definition,
                                                 org.eclipse.ditto.model.base.headers.DittoHeaders dittoHeaders)
        Returns a Command for modifying a Feature's Definition on a Thing.
        Parameters:
        thingId - the Thing's ID whose Feature's Definition to modify.
        featureId - the Feature's ID whose Definition to modify.
        definition - the Definition to modify.
        dittoHeaders - the headers of the command.
        Returns:
        a Command for modifying the provided Definition.
        Throws:
        NullPointerException - if any argument but thingId is null.
      • fromJson

        public static ModifyFeatureDefinition fromJson​(String jsonString,
                                                       org.eclipse.ditto.model.base.headers.DittoHeaders dittoHeaders)
        Creates a new ModifyFeatureDefinition 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.
        org.eclipse.ditto.json.JsonMissingFieldException - if the parsed jsonString did not contain any of the fields
        org.eclipse.ditto.model.things.ThingIdInvalidException - if the parsed thing ID did not comply to RegexPatterns.ID_REGEX.
      • fromJson

        public static ModifyFeatureDefinition fromJson​(org.eclipse.ditto.json.JsonObject jsonObject,
                                                       org.eclipse.ditto.model.base.headers.DittoHeaders dittoHeaders)
        Creates a new ModifyFeatureDefinition 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.
        org.eclipse.ditto.json.JsonMissingFieldException - if jsonObject did not contain any of the fields
        org.eclipse.ditto.model.things.ThingIdInvalidException - if the parsed thing ID did not comply to RegexPatterns.ID_REGEX.
      • getThingEntityId

        public org.eclipse.ditto.model.things.ThingId getThingEntityId()
        Specified by:
        getThingEntityId in interface org.eclipse.ditto.model.things.WithThingId
      • getDefinition

        public org.eclipse.ditto.model.things.FeatureDefinition getDefinition()
        Returns the FeatureDefinition to modify.
        Returns:
        the Definition to modify.
      • getFeatureId

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

        public Optional<org.eclipse.ditto.json.JsonValue> getEntity​(org.eclipse.ditto.model.base.json.JsonSchemaVersion schemaVersion)
        Specified by:
        getEntity in interface org.eclipse.ditto.signals.base.WithOptionalEntity
      • getResourcePath

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

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

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

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

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