org.eclipse.ditto.json.JsonObject.contains()方法的使用及代码示例

x33g5p2x  于2022-01-21 转载在 其他  
字(8.8k)|赞(0)|评价(0)|浏览(103)

本文整理了Java中org.eclipse.ditto.json.JsonObject.contains()方法的一些代码示例,展示了JsonObject.contains()的具体用法。这些代码示例主要来源于Github/Stackoverflow/Maven等平台,是从一些精选项目中提取出来的代码,具有较强的参考意义,能在一定程度帮忙到你。JsonObject.contains()方法的具体详情如下:
包路径:org.eclipse.ditto.json.JsonObject
类名称:JsonObject
方法名:contains

JsonObject.contains介绍

[英]Indicates whether this JSON object contains a field at the key defined location.
[中]指示此JSON对象是否在键定义的位置包含字段。

代码示例

代码示例来源:origin: eclipse/ditto

@Override
public boolean contains(final CharSequence key) {
  return wrapped.contains(key);
}

代码示例来源:origin: eclipse/ditto

@Override
public boolean contains(final CharSequence key) {
  return wrapped.contains(key);
}

代码示例来源:origin: org.eclipse.ditto/ditto-model-things

@Override
public boolean contains(final CharSequence key) {
  return wrapped.contains(key);
}

代码示例来源:origin: org.eclipse.ditto/ditto-model-things

@Override
public boolean contains(final CharSequence key) {
  return wrapped.contains(key);
}

代码示例来源:origin: eclipse/ditto

private static boolean needsSourceFilterMigration(final JsonObject connectionJsonObject) {
  final Optional<JsonArray> sources = connectionJsonObject.getValue(Connection.JsonFields.SOURCES);
  return sources.isPresent() && sources.get().stream().filter(JsonValue::isObject)
      .map(JsonValue::asObject).anyMatch(source -> source.contains("filters"));
}

代码示例来源:origin: org.eclipse.ditto/ditto-services-connectivity-messaging

private static boolean needsSourceFilterMigration(final JsonObject connectionJsonObject) {
  final Optional<JsonArray> sources = connectionJsonObject.getValue(Connection.JsonFields.SOURCES);
  return sources.isPresent() && sources.get().stream().filter(JsonValue::isObject)
      .map(JsonValue::asObject).anyMatch(source -> source.contains("filters"));
}

代码示例来源:origin: org.eclipse.ditto/ditto-services-connectivity-messaging

static Optional<JsonArray> migrateTargets(@Nonnull final JsonObject connectionJsonObject,
      final JsonArray authContext) {
    return connectionJsonObject.getValue(Connection.JsonFields.TARGETS)
        .map(targetsArray -> IntStream.range(0, targetsArray.getSize())
            .mapToObj(index -> targetsArray.get(index)
                .filter(JsonValue::isObject)
                .map(JsonValue::asObject)
                .map(object -> {
                  if (object.contains(Target.JsonFields.AUTHORIZATION_CONTEXT.getPointer())) {
                    // keep the authContext if it was already set in the target
                    return object;
                  } else {
                    return object.set(Target.JsonFields.AUTHORIZATION_CONTEXT, authContext);
                  }
                })
                .orElse(null)
            ).collect(JsonCollectors.valuesToArray())
        );
  }
}

代码示例来源:origin: org.eclipse.ditto/ditto-services-connectivity-messaging

static Optional<JsonArray> migrateSources(@Nonnull final JsonObject connectionJsonObject,
    final JsonArray authContext) {
  return connectionJsonObject.getValue(Connection.JsonFields.SOURCES)
      .map(sourcesArray -> IntStream.range(0, sourcesArray.getSize())
          .mapToObj(index -> sourcesArray.get(index)
              .filter(JsonValue::isObject)
              .map(JsonValue::asObject)
              .map(object -> {
                if (object.contains(Source.JsonFields.AUTHORIZATION_CONTEXT.getPointer())) {
                  // keep the authContext if it was already set in the target
                  return object;
                } else {
                  return object.set(Source.JsonFields.AUTHORIZATION_CONTEXT, authContext);
                }
              })
              .orElse(null)
          ).collect(JsonCollectors.valuesToArray())
      );
}

代码示例来源:origin: eclipse/ditto

static Optional<JsonArray> migrateSources(@Nonnull final JsonObject connectionJsonObject,
    final JsonArray authContext) {
  return connectionJsonObject.getValue(Connection.JsonFields.SOURCES)
      .map(sourcesArray -> IntStream.range(0, sourcesArray.getSize())
          .mapToObj(index -> sourcesArray.get(index)
              .filter(JsonValue::isObject)
              .map(JsonValue::asObject)
              .map(object -> {
                if (object.contains(Source.JsonFields.AUTHORIZATION_CONTEXT.getPointer())) {
                  // keep the authContext if it was already set in the target
                  return object;
                } else {
                  return object.set(Source.JsonFields.AUTHORIZATION_CONTEXT, authContext);
                }
              })
              .orElse(null)
          ).collect(JsonCollectors.valuesToArray())
      );
}

代码示例来源:origin: eclipse/ditto

static Optional<JsonArray> migrateTargets(@Nonnull final JsonObject connectionJsonObject,
      final JsonArray authContext) {
    return connectionJsonObject.getValue(Connection.JsonFields.TARGETS)
        .map(targetsArray -> IntStream.range(0, targetsArray.getSize())
            .mapToObj(index -> targetsArray.get(index)
                .filter(JsonValue::isObject)
                .map(JsonValue::asObject)
                .map(object -> {
                  if (object.contains(Target.JsonFields.AUTHORIZATION_CONTEXT.getPointer())) {
                    // keep the authContext if it was already set in the target
                    return object;
                  } else {
                    return object.set(Target.JsonFields.AUTHORIZATION_CONTEXT, authContext);
                  }
                })
                .orElse(null)
            ).collect(JsonCollectors.valuesToArray())
        );
  }
}

代码示例来源:origin: org.eclipse.ditto/ditto-json

@Override
public boolean contains(final CharSequence key) {
  requireNonNull(key, "The key or pointer to check the existence of a value for must not be null!");
  final boolean result;
  final JsonPointer pointer = JsonFactory.newPointer(key);
  if (1 >= pointer.getLevelCount()) {
    result = pointer.getRoot().map(this::containsKey).orElse(false);
  } else {
    result = pointer.getRoot()
        .flatMap(this::getValueForKey)
        .map(jsonValue -> !jsonValue.isObject() ||
            jsonValue.asObject().contains(pointer.nextLevel())) // Recursion
        .orElse(false);
  }
  return result;
}

代码示例来源:origin: eclipse/ditto

@Override
public boolean contains(final CharSequence key) {
  requireNonNull(key, "The key or pointer to check the existence of a value for must not be null!");
  final boolean result;
  final JsonPointer pointer = JsonPointer.of(key);
  if (1 >= pointer.getLevelCount()) {
    result = pointer.getRoot().map(this::containsKey).orElse(false);
  } else {
    result = pointer.getRoot()
        .flatMap(this::getValueForKey)
        .map(jsonValue -> !jsonValue.isObject() ||
            jsonValue.asObject().contains(pointer.nextLevel())) // Recursion
        .orElse(false);
  }
  return result;
}

代码示例来源:origin: eclipse/ditto

private static Optional<Policy> getInlinedOrDefaultPolicyForCreateThing(final CreateThing createThing) {
  final Optional<JsonObject> initialPolicy = createThing.getInitialPolicy();
  if (initialPolicy.isPresent()) {
    final JsonObject policyJson = initialPolicy.get();
    final JsonObjectBuilder policyJsonBuilder = policyJson.toBuilder();
    final Thing thing = createThing.getThing();
    if (thing.getPolicyId().isPresent() || !policyJson.contains(Policy.JsonFields.ID.getPointer())) {
      final String policyId = thing.getPolicyId().orElse(createThing.getThingId());
      policyJsonBuilder.set(Policy.JsonFields.ID, policyId);
    }
    return Optional.of(PoliciesModelFactory.newPolicy(policyJsonBuilder.build()));
  } else {
    return getDefaultPolicy(createThing.getDittoHeaders().getAuthorizationContext(), createThing.getThingId());
  }
}

代码示例来源:origin: eclipse/ditto

/**
 * Verifies that the JSON object contains all specified keys.
 *
 * @param expectedJsonKey the mandatory key whose existence is checked.
 * @param furtherExpectedJsonKeys further optional keys whose existence in the JSON object is checked.
 * @return this assertion object.
 */
public JsonObjectAssert containsKey(final CharSequence expectedJsonKey,
    final CharSequence... furtherExpectedJsonKeys) {
  isNotNull();
  final Collection<CharSequence> allExpectedJsonKeys = new ArrayList<>(1 + furtherExpectedJsonKeys.length);
  allExpectedJsonKeys.add(expectedJsonKey);
  Collections.addAll(allExpectedJsonKeys, furtherExpectedJsonKeys);
  final List<CharSequence> missingKeys = new ArrayList<>();
  for (final CharSequence jsonKey : allExpectedJsonKeys) {
    if (!actual.contains(jsonKey)) {
      missingKeys.add(jsonKey);
    }
  }
  Assertions.assertThat(missingKeys)
      .overridingErrorMessage("Expected JSON object to contain key(s) <%s> but it did not contain <%s>",
          allExpectedJsonKeys, missingKeys)
      .isEmpty();
  return myself;
}

代码示例来源:origin: eclipse/ditto

final JsonObjectBuilder subBuilder = JsonObject.newBuilder();
subStatusObj.forEach(subBuilder::set);
if (roleStatusBuilder.build().contains(key)) {
  key = key + "_" + UUID.randomUUID().toString().hashCode();

代码示例来源:origin: eclipse/ditto

private static JsonObject mergeJsonObjects(final JsonObject object1, final JsonObject object2) {
  final JsonObjectBuilder builder = JsonFactory.newObjectBuilder();
  if(object1.isNull() && object2.isNull()) {
    return JsonFactory.nullObject();
  }
  // add fields of jsonObject1
  object1.forEach(jsonField -> {
    final JsonKey key = jsonField.getKey();
    final JsonValue value1 = jsonField.getValue();
    final Optional<JsonValue> maybeValue2 = object2.getValue(key);
    if (maybeValue2.isPresent()) {
      builder.set(key, mergeJsonValues(value1, maybeValue2.get()));
    } else {
      builder.set(jsonField);
    }
  });
  // add fields of jsonObject2 not present in jsonObject0
  object2.forEach(jsonField -> {
    if (!object1.contains(jsonField.getKey())) {
      builder.set(jsonField);
    }
  });
  return builder.build();
}

代码示例来源:origin: eclipse/ditto

private static Thing createThingForPost(final String jsonString) {
  final JsonObject inputJson = wrapJsonRuntimeException(() -> JsonFactory.newObject(jsonString));
  if (inputJson.contains(Thing.JsonFields.ID.getPointer())) {
    throw ThingIdNotExplicitlySettableException.newBuilder(true).build();
  }
  final String thingId = ThingBuilder.generateRandomThingId();
  final JsonObjectBuilder outputJsonBuilder = inputJson.toBuilder();
  outputJsonBuilder.set(Thing.JsonFields.ID.getPointer(), thingId);
  return ThingsModelFactory.newThingBuilder(outputJsonBuilder.build())
      .setId(thingId)
      .build();
}

相关文章