本文整理了Java中org.eclipse.ditto.json.JsonArray.get()
方法的一些代码示例,展示了JsonArray.get()
的具体用法。这些代码示例主要来源于Github
/Stackoverflow
/Maven
等平台,是从一些精选项目中提取出来的代码,具有较强的参考意义,能在一定程度帮忙到你。JsonArray.get()
方法的具体详情如下:
包路径:org.eclipse.ditto.json.JsonArray
类名称:JsonArray
方法名:get
[英]Returns the JSON value at the specified position in this array.
[中]返回此数组中指定位置的JSON值。
代码示例来源:origin: eclipse/ditto
private static JsonValue getOrThrow(final JsonArray jsonArray, final int index) {
return jsonArray.get(index).orElseThrow(() -> {
final String msgPattern = "JsonArray did not contain a value for index <{0}>!";
return new NullPointerException(MessageFormat.format(msgPattern, index));
});
}
代码示例来源:origin: eclipse/ditto
private static List<Source> getSources(final JsonObject jsonObject, final ConnectionType type) {
final Optional<JsonArray> sourcesArray = jsonObject.getValue(JsonFields.SOURCES);
if (sourcesArray.isPresent()) {
final JsonArray values = sourcesArray.get();
return IntStream.range(0, values.getSize())
.mapToObj(index -> values.get(index)
.filter(JsonValue::isObject)
.map(JsonValue::asObject)
.map(valueAsObject -> ConnectivityModelFactory.sourceFromJson(valueAsObject, index, type)))
.filter(Optional::isPresent)
.map(Optional::get)
.collect(Collectors.toList());
} else {
return Collections.emptyList();
}
}
代码示例来源:origin: org.eclipse.ditto/ditto-model-connectivity
private static List<Source> getSources(final JsonObject jsonObject, final ConnectionType type) {
final Optional<JsonArray> sourcesArray = jsonObject.getValue(JsonFields.SOURCES);
if (sourcesArray.isPresent()) {
final JsonArray values = sourcesArray.get();
return IntStream.range(0, values.getSize())
.mapToObj(index -> values.get(index)
.filter(JsonValue::isObject)
.map(JsonValue::asObject)
.map(valueAsObject -> ConnectivityModelFactory.sourceFromJson(valueAsObject, index, type)))
.filter(Optional::isPresent)
.map(Optional::get)
.collect(Collectors.toList());
} else {
return Collections.emptyList();
}
}
代码示例来源:origin: org.eclipse.ditto/ditto-services-connectivity-messaging
@Override
public ExternalMessage apply(final ExternalMessage externalMessage) {
final AuthorizationContext authorizationContext = getAuthorizationContextFromMessage(externalMessage);
final AuthorizationContext filteredContext =
PlaceholderFilter.filterAuthorizationContext(authorizationContext, externalMessage.getHeaders());
final JsonArray authSubjectsArray = mapAuthorizationContextToSubjectsArray(filteredContext);
final ExternalMessage externalMessageWithSourceHeader = authSubjectsArray.get(0)
.map(JsonValue::asString)
.map(firstAuthorizationSubject -> externalMessage.withHeader(DittoHeaderDefinition.SOURCE.getKey(),
firstAuthorizationSubject))
.orElse(externalMessage);
return externalMessageWithSourceHeader.withHeader(DittoHeaderDefinition.AUTHORIZATION_SUBJECTS.getKey(),
authSubjectsArray.toString());
}
代码示例来源: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: eclipse/ditto
@Override
public ExternalMessage apply(final ExternalMessage externalMessage) {
final AuthorizationContext authorizationContext = getAuthorizationContextFromMessage(externalMessage);
final AuthorizationContext filteredContext =
PlaceholderFilter.filterAuthorizationContext(authorizationContext, externalMessage.getHeaders());
final JsonArray authSubjectsArray = mapAuthorizationContextToSubjectsArray(filteredContext);
final ExternalMessage externalMessageWithSourceHeader = authSubjectsArray.get(0)
.map(JsonValue::asString)
.map(firstAuthorizationSubject -> externalMessage.withHeader(DittoHeaderDefinition.SOURCE.getKey(),
firstAuthorizationSubject))
.orElse(externalMessage);
return externalMessageWithSourceHeader.withHeader(DittoHeaderDefinition.AUTHORIZATION_SUBJECTS.getKey(),
authSubjectsArray.toString());
}
代码示例来源: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: eclipse/ditto
private static void compareValuesWithFieldKey(final JsonKey key,
final JsonValue expectedFieldValue,
final JsonValue actualFieldValue,
final boolean compareFieldDefinitions) {
if (expectedFieldValue.isObject() && actualFieldValue.isObject() && !compareFieldDefinitions) {
DittoJsonAssertions.assertThat(actualFieldValue.asObject())
.isEqualToIgnoringFieldDefinitions(expectedFieldValue.asObject());
} else if (areArraysOfEqualSize(expectedFieldValue, actualFieldValue) && !compareFieldDefinitions) {
final JsonArray expectedArray = expectedFieldValue.asArray();
final JsonArray actualArray = actualFieldValue.asArray();
IntStream.range(0, expectedArray.getSize())
.forEach(i ->
expectedArray.get(i).ifPresent(expectedElement ->
actualArray.get(i).ifPresent(actualElement ->
compareValuesWithFieldKey(key, expectedElement, actualElement, false))));
} else {
Assertions.assertThat(actualFieldValue)
.as("Values of JsonField <%s> are equal", key)
.isEqualTo(expectedFieldValue);
}
}
内容来源于网络,如有侵权,请联系作者删除!