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<ModifyAttribute>,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.JsonFieldsNested 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
FieldsModifier and TypeFieldDescriptionstatic final StringName of the "Modify Thing Attribute" command.static final StringType of this command.Fields inherited from interface org.eclipse.ditto.base.model.signals.commands.Command
TYPE_QUALIFIERFields inherited from interface org.eclipse.ditto.base.model.signals.Signal
CHANNEL_LIVE, CHANNEL_TWINFields inherited from interface org.eclipse.ditto.things.model.signals.commands.ThingCommand
RESOURCE_TYPE, TYPE_PREFIXFields 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 TypeMethodDescriptionprotected voidappendPayload(org.eclipse.ditto.json.JsonObjectBuilder jsonObjectBuilder, org.eclipse.ditto.base.model.json.JsonSchemaVersion schemaVersion, Predicate<org.eclipse.ditto.json.JsonField> thePredicate) protected booleanbooleanChecks whether this command may change authorization of the Thing.booleanstatic ModifyAttributeCreates 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.JsonPointerReturns the JSON pointer of the attribute to modify.org.eclipse.ditto.json.JsonValueReturns the value of the attribute to modify.org.eclipse.ditto.base.model.signals.commands.Command.CategoryOptional<org.eclipse.ditto.json.JsonValue>getEntity(org.eclipse.ditto.base.model.json.JsonSchemaVersion schemaVersion) org.eclipse.ditto.json.JsonPointerinthashCode()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.setDittoHeaders(org.eclipse.ditto.base.model.headers.DittoHeaders dittoHeaders) setEntity(org.eclipse.ditto.json.JsonValue entity) toString()Methods inherited from class org.eclipse.ditto.base.model.signals.commands.AbstractCommand
getDittoHeaders, getManifest, getType, toJsonMethods inherited from class java.lang.Object
clone, finalize, getClass, notify, notifyAll, wait, wait, waitMethods inherited from interface org.eclipse.ditto.base.model.signals.commands.Command
getImplementedSchemaVersion, toJson, toJsonMethods inherited from interface org.eclipse.ditto.base.model.json.Jsonifiable
getLatestSchemaVersion, getSupportedSchemaVersions, implementsSchemaVersion, implementsSchemaVersion, toJsonStringMethods inherited from interface org.eclipse.ditto.base.model.json.Jsonifiable.WithPredicate
toJson, toJsonString, toJsonStringMethods inherited from interface org.eclipse.ditto.base.model.signals.Signal
getNameMethods inherited from interface org.eclipse.ditto.things.model.signals.commands.ThingCommand
getEntityType, getResourceType, getTypePrefixMethods inherited from interface org.eclipse.ditto.base.model.headers.WithDittoHeaders
getDittoHeadersMethods inherited from interface org.eclipse.ditto.base.model.headers.WithManifest
getManifestMethods inherited from interface org.eclipse.ditto.base.model.signals.WithOptionalEntity
getEntityMethods inherited from interface org.eclipse.ditto.base.model.signals.WithType
getType
-
Field Details
-
NAME
Name of the "Modify Thing Attribute" command.- See Also:
-
TYPE
Type of this command.- See Also:
-
-
Method Details
-
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:
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(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:
NullPointerException- if any argument isnull.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:
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
- Specified by:
getEntityIdin interfaceorg.eclipse.ditto.base.model.entity.id.WithEntityId- Specified by:
getEntityIdin interfaceWithThingId
-
getEntity
public 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<ModifyAttribute>
-
setEntity
- Specified by:
setEntityin interfaceorg.eclipse.ditto.base.model.signals.WithOptionalEntity<ModifyAttribute>
-
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, 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
- Overrides:
equalsin classorg.eclipse.ditto.base.model.signals.commands.AbstractCommand<ModifyAttribute>
-
canEqual
- Overrides:
canEqualin classorg.eclipse.ditto.base.model.signals.commands.AbstractCommand<ModifyAttribute>
-
toString
- Overrides:
toStringin classorg.eclipse.ditto.base.model.signals.commands.AbstractCommand<ModifyAttribute>
-