Class ModifyAttribute
- java.lang.Object
-
- org.eclipse.ditto.base.model.signals.commands.AbstractCommand<ModifyAttribute>
-
- org.eclipse.ditto.things.model.signals.commands.modify.ModifyAttribute
-
- 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<ModifyAttribute>,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<ModifyAttribute>,org.eclipse.ditto.base.model.signals.Signal<ModifyAttribute>,org.eclipse.ditto.base.model.signals.SignalWithEntityId<ModifyAttribute>,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<ModifyAttribute>,ThingCommand<ModifyAttribute>,WithThingId
@Immutable public final class ModifyAttribute extends org.eclipse.ditto.base.model.signals.commands.AbstractCommand<ModifyAttribute> implements ThingModifyCommand<ModifyAttribute>
This command modifies an attribute.
-
-
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 Thing Attribute" 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 ModifyAttributefromJson(java.lang.String jsonString, org.eclipse.ditto.base.model.headers.DittoHeaders dittoHeaders)Creates a newModifyAttributefrom a JSON string.static ModifyAttributefromJson(org.eclipse.ditto.json.JsonObject jsonObject, org.eclipse.ditto.base.model.headers.DittoHeaders dittoHeaders)Creates a newModifyAttributefrom a JSON object.org.eclipse.ditto.json.JsonPointergetAttributePointer()Returns the JSON pointer of the attribute to modify.org.eclipse.ditto.json.JsonValuegetAttributeValue()Returns the value of the attribute to modify.org.eclipse.ditto.base.model.signals.commands.Command.CategorygetCategory()java.util.Optional<org.eclipse.ditto.json.JsonValue>getEntity(org.eclipse.ditto.base.model.json.JsonSchemaVersion schemaVersion)ThingIdgetEntityId()org.eclipse.ditto.json.JsonPointergetResourcePath()inthashCode()static ModifyAttributeof(ThingId thingId, org.eclipse.ditto.json.JsonPointer attributeJsonPointer, org.eclipse.ditto.json.JsonValue newAttributeValue, org.eclipse.ditto.base.model.headers.DittoHeaders dittoHeaders)Returns a command for modifying an attribute which is passed as argument.ModifyAttributesetDittoHeaders(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, 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.things.model.signals.commands.ThingCommand
getEntityType, getResourceType, getTypePrefix
-
-
-
-
Field Detail
-
NAME
public static final java.lang.String NAME
Name of the "Modify Thing Attribute" 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 ModifyAttribute of(ThingId thingId, org.eclipse.ditto.json.JsonPointer attributeJsonPointer, org.eclipse.ditto.json.JsonValue newAttributeValue, org.eclipse.ditto.base.model.headers.DittoHeaders dittoHeaders)
Returns a command for modifying an attribute which is passed as argument.- Parameters:
thingId- the ID of the thing on which to modify the attribute.attributeJsonPointer- the JSON pointer of the attribute key to modify.newAttributeValue- the value of the attribute to modify.dittoHeaders- the headers of the command.- Returns:
- a command for modifying the provided new attribute.
- Throws:
java.lang.NullPointerException- if any argument butthingIdisnull.AttributePointerInvalidException- ifattributeJsonPointeris empty.org.eclipse.ditto.json.JsonKeyInvalidException- if keys ofattributeJsonPointerare not valid according to patternRegexPatterns.NO_CONTROL_CHARS_NO_SLASHES_PATTERN.
-
fromJson
public static ModifyAttribute fromJson(java.lang.String jsonString, org.eclipse.ditto.base.model.headers.DittoHeaders dittoHeaders)
Creates a newModifyAttributefrom 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.AttributePointerInvalidException- ifJSON_ATTRIBUTEcontains an empty pointer.org.eclipse.ditto.json.JsonKeyInvalidException- if keys of attribute pointer are not valid according to patternRegexPatterns.NO_CONTROL_CHARS_NO_SLASHES_PATTERN.
-
fromJson
public static ModifyAttribute fromJson(org.eclipse.ditto.json.JsonObject jsonObject, org.eclipse.ditto.base.model.headers.DittoHeaders dittoHeaders)
Creates a newModifyAttributefrom 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.AttributePointerInvalidException- ifJSON_ATTRIBUTEcontains an empty pointer.org.eclipse.ditto.json.JsonKeyInvalidException- if keys of attribute pointer are not valid according to patternRegexPatterns.NO_CONTROL_CHARS_NO_SLASHES_PATTERN.
-
getAttributePointer
public org.eclipse.ditto.json.JsonPointer getAttributePointer()
Returns the JSON pointer of the attribute to modify.- Returns:
- the JSON pointer.
-
getAttributeValue
public org.eclipse.ditto.json.JsonValue getAttributeValue()
Returns the value of the attribute to modify.- Returns:
- the value.
-
getEntityId
public ThingId getEntityId()
- Specified by:
getEntityIdin interfaceorg.eclipse.ditto.base.model.entity.id.WithEntityId- Specified by:
getEntityIdin interfaceWithThingId
-
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
-
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<ModifyAttribute>
-
getCategory
public org.eclipse.ditto.base.model.signals.commands.Command.Category getCategory()
- Specified by:
getCategoryin interfaceorg.eclipse.ditto.base.model.signals.commands.Command<ModifyAttribute>
-
setDittoHeaders
public ModifyAttribute setDittoHeaders(org.eclipse.ditto.base.model.headers.DittoHeaders dittoHeaders)
- Specified by:
setDittoHeadersin interfaceorg.eclipse.ditto.base.model.signals.commands.Command<ModifyAttribute>- Specified by:
setDittoHeadersin interfaceorg.eclipse.ditto.base.model.headers.DittoHeadersSettable<ModifyAttribute>- Specified by:
setDittoHeadersin interfaceThingCommand<ModifyAttribute>- Specified by:
setDittoHeadersin interfaceThingModifyCommand<ModifyAttribute>
-
changesAuthorization
public boolean changesAuthorization()
Description copied from interface:ThingModifyCommandChecks whether this command may change authorization of the Thing.- Specified by:
changesAuthorizationin interfaceThingModifyCommand<ModifyAttribute>- Returns:
trueif authorization would change,falseotherwise.
-
hashCode
public int hashCode()
- Overrides:
hashCodein classorg.eclipse.ditto.base.model.signals.commands.AbstractCommand<ModifyAttribute>
-
equals
public boolean equals(@Nullable java.lang.Object obj)- Overrides:
equalsin classorg.eclipse.ditto.base.model.signals.commands.AbstractCommand<ModifyAttribute>
-
canEqual
protected boolean canEqual(@Nullable java.lang.Object other)- Overrides:
canEqualin classorg.eclipse.ditto.base.model.signals.commands.AbstractCommand<ModifyAttribute>
-
toString
public java.lang.String toString()
- Overrides:
toStringin classorg.eclipse.ditto.base.model.signals.commands.AbstractCommand<ModifyAttribute>
-
-