Class ModifyFeatureDesiredProperty
- java.lang.Object
-
- org.eclipse.ditto.base.model.signals.commands.AbstractCommand<ModifyFeatureDesiredProperty>
-
- org.eclipse.ditto.things.model.signals.commands.modify.ModifyFeatureDesiredProperty
-
- 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<ModifyFeatureDesiredProperty>,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<ModifyFeatureDesiredProperty>,org.eclipse.ditto.base.model.signals.Signal<ModifyFeatureDesiredProperty>,org.eclipse.ditto.base.model.signals.SignalWithEntityId<ModifyFeatureDesiredProperty>,org.eclipse.ditto.base.model.signals.WithFeatureId,org.eclipse.ditto.base.model.signals.WithName,org.eclipse.ditto.base.model.signals.WithOptionalEntity,org.eclipse.ditto.base.model.signals.WithResource,org.eclipse.ditto.base.model.signals.WithType,ThingModifyCommand<ModifyFeatureDesiredProperty>,ThingCommand<ModifyFeatureDesiredProperty>,WithThingId
@Immutable public final class ModifyFeatureDesiredProperty extends org.eclipse.ditto.base.model.signals.commands.AbstractCommand<ModifyFeatureDesiredProperty> implements ThingModifyCommand<ModifyFeatureDesiredProperty>, org.eclipse.ditto.base.model.signals.WithFeatureId
This command modifies a single desired property of aFeature'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 java.lang.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 java.lang.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 java.lang.StringNAMEName of the "Modify Feature Desired Property" command.static java.lang.StringTYPEType of this command.-
Fields inherited from interface org.eclipse.ditto.base.model.signals.commands.Command
TYPE_QUALIFIER
-
Fields inherited from interface org.eclipse.ditto.things.model.signals.commands.ThingCommand
RESOURCE_TYPE, TYPE_PREFIX
-
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description protected voidappendPayload(org.eclipse.ditto.json.JsonObjectBuilder jsonObjectBuilder, org.eclipse.ditto.base.model.json.JsonSchemaVersion schemaVersion, java.util.function.Predicate<org.eclipse.ditto.json.JsonField> thePredicate)protected booleancanEqual(java.lang.Object other)booleanchangesAuthorization()Checks whether this command may change authorization of the Thing.booleanequals(java.lang.Object obj)static ModifyFeatureDesiredPropertyfromJson(java.lang.String jsonString, org.eclipse.ditto.base.model.headers.DittoHeaders dittoHeaders)Creates a newModifyFeatureDesiredPropertyfrom a JSON string.static ModifyFeatureDesiredPropertyfromJson(org.eclipse.ditto.json.JsonObject jsonObject, org.eclipse.ditto.base.model.headers.DittoHeaders dittoHeaders)Creates a newModifyFeatureDesiredPropertyfrom a JSON object.org.eclipse.ditto.base.model.signals.commands.Command.CategorygetCategory()org.eclipse.ditto.json.JsonPointergetDesiredPropertyPointer()Returns the JSON pointer of the desired property to modify.org.eclipse.ditto.json.JsonValuegetDesiredPropertyValue()Returns the value of the desired property to modify.java.util.Optional<org.eclipse.ditto.json.JsonValue>getEntity(org.eclipse.ditto.base.model.json.JsonSchemaVersion schemaVersion)ThingIdgetEntityId()java.lang.StringgetFeatureId()org.eclipse.ditto.json.JsonPointergetResourcePath()org.eclipse.ditto.base.model.json.JsonSchemaVersion[]getSupportedSchemaVersions()ModifyFeatureDesiredProperty is only available in JsonSchemaVersion V_2.inthashCode()static ModifyFeatureDesiredPropertyof(ThingId thingId, java.lang.CharSequence featureId, org.eclipse.ditto.json.JsonPointer desiredPropertyJsonPointer, org.eclipse.ditto.json.JsonValue desiredPropertyValue, org.eclipse.ditto.base.model.headers.DittoHeaders dittoHeaders)Returns a Command for modifying a Feature's desired property on a Thing.ModifyFeatureDesiredPropertysetDittoHeaders(org.eclipse.ditto.base.model.headers.DittoHeaders dittoHeaders)java.lang.StringtoString()-
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.things.model.signals.commands.ThingCommand
getEntityType, getResourceType, getTypePrefix
-
-
-
-
Field Detail
-
NAME
public static final java.lang.String NAME
Name of the "Modify Feature Desired Property" command.- See Also:
- Constant Field Values
-
TYPE
public static final java.lang.String TYPE
Type of this command.- See Also:
- Constant Field Values
-
-
Method Detail
-
of
public static ModifyFeatureDesiredProperty of(ThingId thingId, java.lang.CharSequence featureId, org.eclipse.ditto.json.JsonPointer desiredPropertyJsonPointer, org.eclipse.ditto.json.JsonValue desiredPropertyValue, org.eclipse.ditto.base.model.headers.DittoHeaders dittoHeaders)
Returns a Command for modifying a Feature's desired property on a Thing.- Parameters:
thingId- theThing's ID whoseFeature's desired property to modify.featureId- theFeature's ID whose desired property to modify.desiredPropertyJsonPointer- the JSON pointer of the desired property key to modify.desiredPropertyValue- the value of the desired property to modify.dittoHeaders- the headers of the command.- Returns:
- a Command for modifying the provided desired property.
- Throws:
java.lang.NullPointerException- if any argument butthingIdisnull.org.eclipse.ditto.json.JsonKeyInvalidException- if keys ofdesiredPropertyJsonPointerare not valid according to patternRegexPatterns.NO_CONTROL_CHARS_NO_SLASHES_PATTERN.
-
fromJson
public static ModifyFeatureDesiredProperty fromJson(java.lang.String jsonString, org.eclipse.ditto.base.model.headers.DittoHeaders dittoHeaders)
Creates a newModifyFeatureDesiredPropertyfrom 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:
java.lang.NullPointerException- if any argument isnull.java.lang.IllegalArgumentException- ifjsonStringis empty.org.eclipse.ditto.json.JsonParseException- if the passed injsonStringwas not in the expected format.ThingIdInvalidException- if the parsed thing ID did not comply toRegexPatterns.ID_REGEX.org.eclipse.ditto.json.JsonKeyInvalidException- if keys of the desired property pointer are not valid according to patternRegexPatterns.NO_CONTROL_CHARS_NO_SLASHES_PATTERN.
-
fromJson
public static ModifyFeatureDesiredProperty fromJson(org.eclipse.ditto.json.JsonObject jsonObject, org.eclipse.ditto.base.model.headers.DittoHeaders dittoHeaders)
Creates a newModifyFeatureDesiredPropertyfrom 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:
java.lang.NullPointerException- if any argument isnull.org.eclipse.ditto.json.JsonParseException- if the passed injsonObjectwas not in the expected format.ThingIdInvalidException- if the parsed thing ID did not comply toRegexPatterns.ID_REGEX.org.eclipse.ditto.json.JsonKeyInvalidException- if keys of the desired property pointer are not valid according to patternRegexPatterns.NO_CONTROL_CHARS_NO_SLASHES_PATTERN.
-
getDesiredPropertyPointer
public org.eclipse.ditto.json.JsonPointer getDesiredPropertyPointer()
Returns the JSON pointer of the desired property to modify.- Returns:
- the JSON pointer.
-
getDesiredPropertyValue
public org.eclipse.ditto.json.JsonValue getDesiredPropertyValue()
Returns the value of the desired property to modify.- Returns:
- the value.
-
getEntityId
public ThingId getEntityId()
- Specified by:
getEntityIdin interfaceorg.eclipse.ditto.base.model.entity.id.WithEntityId- Specified by:
getEntityIdin interfaceWithThingId
-
getFeatureId
public java.lang.String getFeatureId()
- Specified by:
getFeatureIdin interfaceorg.eclipse.ditto.base.model.signals.WithFeatureId
-
getEntity
public java.util.Optional<org.eclipse.ditto.json.JsonValue> getEntity(org.eclipse.ditto.base.model.json.JsonSchemaVersion schemaVersion)
- Specified by:
getEntityin interfaceorg.eclipse.ditto.base.model.signals.WithOptionalEntity
-
getSupportedSchemaVersions
public org.eclipse.ditto.base.model.json.JsonSchemaVersion[] getSupportedSchemaVersions()
ModifyFeatureDesiredProperty is only available in JsonSchemaVersion V_2.- Specified by:
getSupportedSchemaVersionsin interfaceorg.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:
getResourcePathin interfaceorg.eclipse.ditto.base.model.signals.WithResource
-
appendPayload
protected void appendPayload(org.eclipse.ditto.json.JsonObjectBuilder jsonObjectBuilder, org.eclipse.ditto.base.model.json.JsonSchemaVersion schemaVersion, java.util.function.Predicate<org.eclipse.ditto.json.JsonField> thePredicate)- Specified by:
appendPayloadin classorg.eclipse.ditto.base.model.signals.commands.AbstractCommand<ModifyFeatureDesiredProperty>
-
getCategory
public org.eclipse.ditto.base.model.signals.commands.Command.Category getCategory()
- Specified by:
getCategoryin interfaceorg.eclipse.ditto.base.model.signals.commands.Command<ModifyFeatureDesiredProperty>
-
setDittoHeaders
public ModifyFeatureDesiredProperty setDittoHeaders(org.eclipse.ditto.base.model.headers.DittoHeaders dittoHeaders)
- Specified by:
setDittoHeadersin interfaceorg.eclipse.ditto.base.model.signals.commands.Command<ModifyFeatureDesiredProperty>- Specified by:
setDittoHeadersin interfaceorg.eclipse.ditto.base.model.headers.DittoHeadersSettable<ModifyFeatureDesiredProperty>- Specified by:
setDittoHeadersin interfaceThingCommand<ModifyFeatureDesiredProperty>- Specified by:
setDittoHeadersin interfaceThingModifyCommand<ModifyFeatureDesiredProperty>
-
changesAuthorization
public boolean changesAuthorization()
Description copied from interface:ThingModifyCommandChecks whether this command may change authorization of the Thing.- Specified by:
changesAuthorizationin interfaceThingModifyCommand<ModifyFeatureDesiredProperty>- Returns:
trueif authorization would change,falseotherwise.
-
hashCode
public int hashCode()
- Overrides:
hashCodein classorg.eclipse.ditto.base.model.signals.commands.AbstractCommand<ModifyFeatureDesiredProperty>
-
equals
public boolean equals(@Nullable java.lang.Object obj)- Overrides:
equalsin classorg.eclipse.ditto.base.model.signals.commands.AbstractCommand<ModifyFeatureDesiredProperty>
-
canEqual
protected boolean canEqual(@Nullable java.lang.Object other)- Overrides:
canEqualin classorg.eclipse.ditto.base.model.signals.commands.AbstractCommand<ModifyFeatureDesiredProperty>
-
toString
public java.lang.String toString()
- Overrides:
toStringin classorg.eclipse.ditto.base.model.signals.commands.AbstractCommand<ModifyFeatureDesiredProperty>
-
-