test_class.declarator: KNOWN_JSON = JsonFactory.newObjectBuilder()
              .set(ThingCommand.JsonFields.TYPE, ModifyFeatures.TYPE)
              .set(ThingCommand.JsonFields.JSON_THING_ID, TestConstants.Thing.THING_ID.toString())
              .set(ModifyFeatures.JSON_FEATURES, TestConstants.Feature.FEATURES.toJson(FieldType.regularOrSpecial()))
              .build()
test_class.modifier: private static final
test_class.original_string: private static final JsonObject KNOWN_JSON = JsonFactory.newObjectBuilder()
              .set(ThingCommand.JsonFields.TYPE, ModifyFeatures.TYPE)
              .set(ThingCommand.JsonFields.JSON_THING_ID, TestConstants.Thing.THING_ID.toString())
              .set(ModifyFeatures.JSON_FEATURES, TestConstants.Feature.FEATURES.toJson(FieldType.regularOrSpecial()))
              .build();
test_class.type: JsonObject
test_class.var_name: KNOWN_JSON
test_class.file: signals/commands/things/src/test/java/org/eclipse/ditto/signals/commands/things/modify/ModifyFeaturesTest.java
test_class.identifier: ModifyFeaturesTest
test_case.body: @Test
      public void toJsonReturnsExpected() {
          final ModifyFeatures underTest = ModifyFeatures.of(TestConstants.Thing.THING_ID, TestConstants.Feature.FEATURES,
                  TestConstants.EMPTY_DITTO_HEADERS);
          final JsonObject actualJson = underTest.toJson(FieldType.regularOrSpecial());
  
          assertThat(actualJson).isEqualTo(KNOWN_JSON);
      }
test_case.class_method_signature: ModifyFeaturesTest.toJsonReturnsExpected()
test_case.full_signature: @Test public void toJsonReturnsExpected()
test_case.identifier: toJsonReturnsExpected
test_case.invocations: of toJson regularOrSpecial isEqualTo assertThat
test_case.modifiers: @Test public
test_case.parameters: ()
test_case.return: void
test_case.signature: void toJsonReturnsExpected()
focal_class.declarator: NAME = "modifyFeatures"
focal_class.modifier: public static final
focal_class.original_string: public static final String NAME = "modifyFeatures";
focal_class.type: String
focal_class.var_name: NAME
focal_class.declarator: TYPE = TYPE_PREFIX + NAME
focal_class.modifier: public static final
focal_class.original_string: public static final String TYPE = TYPE_PREFIX + NAME;
focal_class.type: String
focal_class.var_name: TYPE
focal_class.declarator: JSON_FEATURES =
              JsonFactory.newJsonObjectFieldDefinition("features", FieldType.REGULAR, JsonSchemaVersion.V_1,
                      JsonSchemaVersion.V_2)
focal_class.modifier: static final
focal_class.original_string: static final JsonFieldDefinition<JsonObject> JSON_FEATURES =
              JsonFactory.newJsonObjectFieldDefinition("features", FieldType.REGULAR, JsonSchemaVersion.V_1,
                      JsonSchemaVersion.V_2);
focal_class.type: JsonFieldDefinition<JsonObject>
focal_class.var_name: JSON_FEATURES
focal_class.declarator: thingId
focal_class.modifier: private final
focal_class.original_string: private final ThingId thingId;
focal_class.type: ThingId
focal_class.var_name: thingId
focal_class.declarator: features
focal_class.modifier: private final
focal_class.original_string: private final Features features;
focal_class.type: Features
focal_class.var_name: features
focal_class.file: signals/commands/things/src/main/java/org/eclipse/ditto/signals/commands/things/modify/ModifyFeatures.java
focal_class.identifier: ModifyFeatures
focal_class.interfaces: implements ThingModifyCommand<ModifyFeatures>
focal_class.class_method_signature: ModifyFeatures.ModifyFeatures(final ThingId thingId, final Features features, final DittoHeaders dittoHeaders)
focal_class.full_signature: private  ModifyFeatures(final ThingId thingId, final Features features, final DittoHeaders dittoHeaders)
focal_class.identifier: ModifyFeatures
focal_class.modifiers: private
focal_class.parameters: (final ThingId thingId, final Features features, final DittoHeaders dittoHeaders)
focal_class.signature:  ModifyFeatures(final ThingId thingId, final Features features, final DittoHeaders dittoHeaders)
focal_class.class_method_signature: ModifyFeatures.of(final String thingId, final Features features, final DittoHeaders dittoHeaders)
focal_class.full_signature: @Deprecated public static ModifyFeatures of(final String thingId, final Features features, final DittoHeaders dittoHeaders)
focal_class.identifier: of
focal_class.modifiers: @Deprecated public static
focal_class.parameters: (final String thingId, final Features features, final DittoHeaders dittoHeaders)
focal_class.return: ModifyFeatures
focal_class.signature: ModifyFeatures of(final String thingId, final Features features, final DittoHeaders dittoHeaders)
focal_class.class_method_signature: ModifyFeatures.of(final ThingId thingId, final Features features, final DittoHeaders dittoHeaders)
focal_class.full_signature: public static ModifyFeatures of(final ThingId thingId, final Features features, final DittoHeaders dittoHeaders)
focal_class.identifier: of
focal_class.modifiers: public static
focal_class.parameters: (final ThingId thingId, final Features features, final DittoHeaders dittoHeaders)
focal_class.return: ModifyFeatures
focal_class.signature: ModifyFeatures of(final ThingId thingId, final Features features, final DittoHeaders dittoHeaders)
focal_class.class_method_signature: ModifyFeatures.fromJson(final String jsonString, final DittoHeaders dittoHeaders)
focal_class.full_signature: public static ModifyFeatures fromJson(final String jsonString, final DittoHeaders dittoHeaders)
focal_class.identifier: fromJson
focal_class.modifiers: public static
focal_class.parameters: (final String jsonString, final DittoHeaders dittoHeaders)
focal_class.return: ModifyFeatures
focal_class.signature: ModifyFeatures fromJson(final String jsonString, final DittoHeaders dittoHeaders)
focal_class.class_method_signature: ModifyFeatures.fromJson(final JsonObject jsonObject, final DittoHeaders dittoHeaders)
focal_class.full_signature: public static ModifyFeatures fromJson(final JsonObject jsonObject, final DittoHeaders dittoHeaders)
focal_class.identifier: fromJson
focal_class.modifiers: public static
focal_class.parameters: (final JsonObject jsonObject, final DittoHeaders dittoHeaders)
focal_class.return: ModifyFeatures
focal_class.signature: ModifyFeatures fromJson(final JsonObject jsonObject, final DittoHeaders dittoHeaders)
focal_class.class_method_signature: ModifyFeatures.getFeatures()
focal_class.full_signature: public Features getFeatures()
focal_class.identifier: getFeatures
focal_class.modifiers: public
focal_class.parameters: ()
focal_class.return: Features
focal_class.signature: Features getFeatures()
focal_class.class_method_signature: ModifyFeatures.getThingEntityId()
focal_class.full_signature: @Override public ThingId getThingEntityId()
focal_class.identifier: getThingEntityId
focal_class.modifiers: @Override public
focal_class.parameters: ()
focal_class.return: ThingId
focal_class.signature: ThingId getThingEntityId()
focal_class.class_method_signature: ModifyFeatures.getEntity(final JsonSchemaVersion schemaVersion)
focal_class.full_signature: @Override public Optional<JsonValue> getEntity(final JsonSchemaVersion schemaVersion)
focal_class.identifier: getEntity
focal_class.modifiers: @Override public
focal_class.parameters: (final JsonSchemaVersion schemaVersion)
focal_class.return: Optional<JsonValue>
focal_class.signature: Optional<JsonValue> getEntity(final JsonSchemaVersion schemaVersion)
focal_class.class_method_signature: ModifyFeatures.getResourcePath()
focal_class.full_signature: @Override public JsonPointer getResourcePath()
focal_class.identifier: getResourcePath
focal_class.modifiers: @Override public
focal_class.parameters: ()
focal_class.return: JsonPointer
focal_class.signature: JsonPointer getResourcePath()
focal_class.class_method_signature: ModifyFeatures.appendPayload(final JsonObjectBuilder jsonObjectBuilder, final JsonSchemaVersion schemaVersion,
              final Predicate<JsonField> thePredicate)
focal_class.full_signature: @Override protected void appendPayload(final JsonObjectBuilder jsonObjectBuilder, final JsonSchemaVersion schemaVersion,
              final Predicate<JsonField> thePredicate)
focal_class.identifier: appendPayload
focal_class.modifiers: @Override protected
focal_class.parameters: (final JsonObjectBuilder jsonObjectBuilder, final JsonSchemaVersion schemaVersion,
              final Predicate<JsonField> thePredicate)
focal_class.return: void
focal_class.signature: void appendPayload(final JsonObjectBuilder jsonObjectBuilder, final JsonSchemaVersion schemaVersion,
              final Predicate<JsonField> thePredicate)
focal_class.class_method_signature: ModifyFeatures.getCategory()
focal_class.full_signature: @Override public Category getCategory()
focal_class.identifier: getCategory
focal_class.modifiers: @Override public
focal_class.parameters: ()
focal_class.return: Category
focal_class.signature: Category getCategory()
focal_class.class_method_signature: ModifyFeatures.setDittoHeaders(final DittoHeaders dittoHeaders)
focal_class.full_signature: @Override public ModifyFeatures setDittoHeaders(final DittoHeaders dittoHeaders)
focal_class.identifier: setDittoHeaders
focal_class.modifiers: @Override public
focal_class.parameters: (final DittoHeaders dittoHeaders)
focal_class.return: ModifyFeatures
focal_class.signature: ModifyFeatures setDittoHeaders(final DittoHeaders dittoHeaders)
focal_class.class_method_signature: ModifyFeatures.changesAuthorization()
focal_class.full_signature: @Override public boolean changesAuthorization()
focal_class.identifier: changesAuthorization
focal_class.modifiers: @Override public
focal_class.parameters: ()
focal_class.return: boolean
focal_class.signature: boolean changesAuthorization()
focal_class.class_method_signature: ModifyFeatures.hashCode()
focal_class.full_signature: @Override public int hashCode()
focal_class.identifier: hashCode
focal_class.modifiers: @Override public
focal_class.parameters: ()
focal_class.return: int
focal_class.signature: int hashCode()
focal_class.class_method_signature: ModifyFeatures.equals(@Nullable final Object obj)
focal_class.full_signature: @SuppressWarnings("squid:MethodCyclomaticComplexity") @Override public boolean equals(@Nullable final Object obj)
focal_class.identifier: equals
focal_class.modifiers: @SuppressWarnings("squid:MethodCyclomaticComplexity") @Override public
focal_class.parameters: (@Nullable final Object obj)
focal_class.return: boolean
focal_class.signature: boolean equals(@Nullable final Object obj)
focal_class.class_method_signature: ModifyFeatures.canEqual(@Nullable final Object other)
focal_class.full_signature: @Override protected boolean canEqual(@Nullable final Object other)
focal_class.identifier: canEqual
focal_class.modifiers: @Override protected
focal_class.parameters: (@Nullable final Object other)
focal_class.return: boolean
focal_class.signature: boolean canEqual(@Nullable final Object other)
focal_class.class_method_signature: ModifyFeatures.toString()
focal_class.full_signature: @Override public String toString()
focal_class.identifier: toString
focal_class.modifiers: @Override public
focal_class.parameters: ()
focal_class.return: String
focal_class.signature: String toString()
focal_class.superclass: extends AbstractCommand<ModifyFeatures>
focal_method.body: @Deprecated
      public static ModifyFeatures of(final String thingId, final Features features, final DittoHeaders dittoHeaders) {
  
          return of(ThingId.of(thingId), features, dittoHeaders);
      }
focal_method.class_method_signature: ModifyFeatures.of(final String thingId, final Features features, final DittoHeaders dittoHeaders)
focal_method.full_signature: @Deprecated public static ModifyFeatures of(final String thingId, final Features features, final DittoHeaders dittoHeaders)
focal_method.identifier: of
focal_method.invocations: of of
focal_method.modifiers: @Deprecated public static
focal_method.parameters: (final String thingId, final Features features, final DittoHeaders dittoHeaders)
focal_method.return: ModifyFeatures
focal_method.signature: ModifyFeatures of(final String thingId, final Features features, final DittoHeaders dittoHeaders)