use of io.nem.sdk.model.namespace.NamespaceName in project nem2-sdk-java by nemtech.
the class NamespaceHttp method getNamespaceNames.
@Override
public Observable<List<NamespaceName>> getNamespaceNames(List<NamespaceId> namespaceIds) {
JsonObject requestBody = new JsonObject();
requestBody.put("namespaceIds", namespaceIds.stream().map(id -> UInt64.bigIntegerToHex(id.getId())).collect(Collectors.toList()));
return this.client.postAbs(this.url + "/namespace/names").as(BodyCodec.jsonArray()).rxSendJson(requestBody).toObservable().map(HttpResponse::body).map(json -> objectMapper.<List<NamespaceNameDTO>>readValue(json.toString(), new TypeReference<List<NamespaceNameDTO>>() {
})).flatMapIterable(item -> item).map(namespaceNameDTO -> {
if (namespaceNameDTO.getParentId() != null) {
return new NamespaceName(new NamespaceId(namespaceNameDTO.getNamespaceId().extractIntArray()), namespaceNameDTO.getName(), new NamespaceId(namespaceNameDTO.getParentId().extractIntArray()));
} else {
return new NamespaceName(new NamespaceId(namespaceNameDTO.getNamespaceId().extractIntArray()), namespaceNameDTO.getName());
}
}).toList().toObservable();
}
Aggregations