io.vertx.core.json.JsonObject#mapFrom ( )源码实例Demo

下面列出了io.vertx.core.json.JsonObject#mapFrom ( ) 实例代码,或者点击链接到github查看源代码,也可以在右侧发表评论。

源代码1 项目: ethsigner   文件: TransactionFactory.java
public <T> T fromRpcRequestToJsonParam(final Class<T> type, final JsonRpcRequest request) {

    final Object object;
    final Object params = request.getParams();
    if (params instanceof List) {
      @SuppressWarnings("unchecked")
      final List<Object> paramList = (List<Object>) params;
      if (paramList.size() != 1) {
        throw new IllegalArgumentException(
            type.getSimpleName()
                + " json Rpc requires a single parameter, request contained "
                + paramList.size());
      }
      object = paramList.get(0);
    } else {
      object = params;
    }

    final JsonObject receivedParams = JsonObject.mapFrom(object);

    return decoder.decodeValue(receivedParams.toBuffer(), type);
  }
 
源代码2 项目: hono   文件: TenantTest.java
/**
 * Encode tenant with a "tracing" value set.
 */
@Test
public void testEncodeTraceSamplingModePerAuthId() {
    final var tenant = new Tenant();
    final TenantTracingConfig tracingConfig = new TenantTracingConfig();
    tracingConfig.setSamplingMode(TracingSamplingMode.ALL);
    tracingConfig.setSamplingModePerAuthId(
            Map.of("authId1", TracingSamplingMode.ALL, "authId2", TracingSamplingMode.DEFAULT));
    tenant.setTracing(tracingConfig);
    final var json = JsonObject.mapFrom(tenant);
    assertNotNull(json);
    final JsonObject tracingConfigJson = json.getJsonObject(RegistryManagementConstants.FIELD_TRACING);
    assertNotNull(tracingConfigJson);
    assertEquals(TracingSamplingMode.ALL.getFieldValue(), tracingConfigJson.getString(RegistryManagementConstants.FIELD_TRACING_SAMPLING_MODE));
    final JsonObject traceSamplingModePerAuthIdJson = tracingConfigJson.getJsonObject(RegistryManagementConstants.FIELD_TRACING_SAMPLING_MODE_PER_AUTH_ID);
    assertNotNull(traceSamplingModePerAuthIdJson);
    assertEquals(TracingSamplingMode.ALL.getFieldValue(), traceSamplingModePerAuthIdJson.getString("authId1"));
    assertEquals(TracingSamplingMode.DEFAULT.getFieldValue(), traceSamplingModePerAuthIdJson.getString("authId2"));
}
 
源代码3 项目: strimzi-kafka-operator   文件: JmxTransTest.java
@Test
public void testServersDeserialization() {
    JmxTransServer server = new JmxTransServer();

    server.setHost("host");
    server.setPort(9999);
    server.setUsername("username");
    server.setPassword("password");
    server.setQueries(Collections.emptyList());

    JsonObject targetJson = JsonObject.mapFrom(server);

    assertThat(targetJson.getString("host"), is("host"));
    assertThat(targetJson.getInteger("port"), is(9999));
    assertThat(targetJson.getString("username"), is("username"));
    assertThat(targetJson.getString("password"), is("password"));
    assertThat(targetJson.getJsonArray("queries").getList().size(), is(0));
}
 
源代码4 项目: hono   文件: CredentialsTest.java
/**
 * Test encoding a x509 secret.
 */
@Test
public void testEncodeX509Credential() {
    final X509CertificateCredential credential = new X509CertificateCredential("CN=foo, O=bar");

    final JsonObject json = JsonObject.mapFrom(credential);
    assertNotNull(json);
    assertNull(json.getJsonArray(RegistryManagementConstants.FIELD_SECRETS));

    assertEquals("x509-cert", json.getString(RegistryManagementConstants.FIELD_TYPE));
    assertEquals("CN=foo,O=bar", json.getString(RegistryManagementConstants.FIELD_AUTH_ID));
}
 
private void handleTrackingEvent(final RoutingContext routingContext) {

        String userAgent = routingContext.request().getHeader("User-Agent");
        String eventID = routingContext.request().getParam("eventID");

        UUID uuid = UUID.randomUUID();
        TrackingMessage trackingMessage = new TrackingMessage();
        trackingMessage.setMessageId(uuid.toString());
        trackingMessage.setProgramId(eventID);

        JsonObject message = JsonObject.mapFrom(trackingMessage);

        if (null == eventID) {
            sendError(400, routingContext);
        } else {
            eb.send(Constants.CACHE_EVENTBUS_ADDRESS, message, res -> {
                if (res.succeeded()) {
                    JsonObject result = (JsonObject)res.result().body();
                    if (result.isEmpty()) {
                        sendResponse(routingContext, 404, Json.encode("ProgramId not found"));
                    } else {

                        TrackingMessage tmpMsg = Json.decodeValue(result.encode(), TrackingMessage.class);
                        tmpMsg.setUserAgent(userAgent);

                        String enrichedData = Json.encode(tmpMsg);

                        eb.send(Constants.KINESIS_EVENTBUS_ADDRESS, enrichedData);
                        sendResponse(routingContext, 200, enrichedData);
                    }
                } else {
                    LOGGER.error(res.cause());
                    sendResponse(routingContext, 500, res.cause().getMessage());
                }
            });
        }
    }
 
源代码6 项目: hono   文件: DeviceManagementIT.java
/**
 * Verifies that a request to register a device that contains unsupported properties
 * fails with a 400 status.
 *
 * @param ctx The vert.x test context
 */
@Test
public void testAddDeviceFailsForUnknownProperties(final VertxTestContext ctx) {

    final JsonObject requestBody = JsonObject.mapFrom(new Device());
    requestBody.put("unexpected", "property");

    registry.registerDevice(
            tenantId,
            deviceId,
            requestBody,
            "application/json",
            HttpURLConnection.HTTP_BAD_REQUEST)
        .onComplete(ctx.completing());
}
 
源代码7 项目: hono   文件: CredentialsManagementIT.java
/**
 * Verify that a json payload to add credentials that does not contain a {@link CredentialsConstants#FIELD_AUTH_ID}
 * is not accepted and responded with {@link HttpURLConnection#HTTP_BAD_REQUEST}
 * and a non empty error response message.
 *
 * @param context The vert.x test context.
 */
@Test
public void testAddCredentialsFailsForMissingAuthId(final VertxTestContext context) {

    final JsonObject credentials = JsonObject.mapFrom(hashedPasswordCredential);
    credentials.remove(CredentialsConstants.FIELD_AUTH_ID);

    testAddCredentialsWithErroneousPayload(
            context,
            new JsonArray().add(credentials),
            HttpURLConnection.HTTP_BAD_REQUEST);
}
 
源代码8 项目: orion   文件: OrionNode.java
private <T> JsonObject sendRequestToOrion(final T serialisableObject) throws IOException {
  final JsonObject payload = JsonObject.mapFrom(serialisableObject);
  final RequestBody requestBody =
      RequestBody.create(MediaType.parse(HttpContentType.JSON.toString()), payload.encode());

  final Request request = new Request.Builder().url(clientUrl() + "/receive").post(requestBody).build();
  final Response response = httpClient.newCall(request).execute();

  return new JsonObject(response.body().string());
}
 
源代码9 项目: hono   文件: TenantManagementIT.java
/**
 * Verifies that a request to register a tenant that contains unsupported properties
 * fails with a 400 status.
 *
 * @param context The Vert.x test context.
 */
@Test
public void testAddTenantFailsForUnknownProperties(final VertxTestContext context) {

    final JsonObject requestBody = JsonObject.mapFrom(new Tenant());
    requestBody.put("unexpected", "property");

    helper.registry.addTenant(
            tenantId,
            requestBody,
            "application/json",
            HttpURLConnection.HTTP_BAD_REQUEST)
        .onComplete(context.completing());
}
 
源代码10 项目: enmasse   文件: TenantServiceImpl.java
private Set<X500Principal> anchors(final IoTProject project) {

        if (project != null && project.getStatus() == null
                || project.getStatus().getAccepted() == null
                || project.getStatus().getAccepted().getConfiguration() == null) {

            // no configuration yet
            return Collections.emptySet();

        }

        final JsonObject config = JsonObject.mapFrom(project.getStatus().getAccepted().getConfiguration());
        final JsonArray trustAnchors = config.getJsonArray(TenantConstants.FIELD_PAYLOAD_TRUSTED_CA);
        if (trustAnchors == null) {
            return Collections.emptySet();
        }

        final Set<X500Principal> result = new HashSet<>();

        for (Object value : trustAnchors) {
            if (!(value instanceof JsonObject)) {
                continue;
            }
            final JsonObject trustAnchor = (JsonObject) value;
            if (!trustAnchor.getBoolean(TenantConstants.FIELD_ENABLED, true)) {
                continue;
            }
            final String subjectDn = trustAnchor.getString(TenantConstants.FIELD_PAYLOAD_SUBJECT_DN);
            if (Strings.isNullOrEmpty(subjectDn)) {
                continue;
            }

            result.add(new X500Principal(subjectDn));
        }

        return result;
    }
 
源代码11 项目: hono   文件: SecretsTest.java
/**
 * Test encoding a generic credential.
 */
@Test
public void testEncodeGeneric() {

    final GenericSecret secret = new GenericSecret();
    addCommonProperties(secret);
    secret.setAdditionalProperties(Map.of("foo", "bar"));

    final JsonObject json = JsonObject.mapFrom(secret);
    assertCommonProperties(json);
    assertThat(json.getString("foo"), is("bar"));
}
 
源代码12 项目: strimzi-kafka-operator   文件: JmxTransTest.java
@Test
public void testQueriesDeserialization() {
    JmxTransOutputWriter outputWriter = new JmxTransOutputWriter();

    outputWriter.setAtClass("class");
    outputWriter.setHost("host");
    outputWriter.setPort(9999);
    outputWriter.setFlushDelayInSeconds(1);
    outputWriter.setTypeNames(Collections.singletonList("SingleType"));

    JmxTransQueries queries = new JmxTransQueries();

    queries.setObj("object");
    queries.setAttr(Collections.singletonList("attribute"));

    queries.setOutputWriters(Collections.singletonList(outputWriter));

    JsonObject targetJson = JsonObject.mapFrom(queries);
    JsonObject outputWriterJson = targetJson.getJsonArray("outputWriters").getJsonObject(0);

    assertThat(targetJson.getString("obj"), is("object"));
    assertThat(targetJson.getJsonArray("attr").size(), is(1));
    assertThat(targetJson.getJsonArray("attr").getString(0), is("attribute"));

    assertThat(outputWriterJson.getString("host"), is("host"));
    assertThat(outputWriterJson.getString("@class"), is("class"));
    assertThat(outputWriterJson.getInteger("port"), is(9999));
    assertThat(outputWriterJson.getInteger("flushDelayInSeconds"), is(1));
    assertThat(outputWriterJson.getJsonArray("typeNames").size(), is(1));
    assertThat(outputWriterJson.getJsonArray("typeNames").getList().get(0), is("SingleType"));
}
 
源代码13 项目: hono   文件: MongoDbBasedTenantService.java
private Future<OperationResult<Id>> processCreateTenant(final String tenantId, final Tenant tenantObj,
        final Span span) {

    final TenantDto newTenantDto = new TenantDto(tenantId, tenantObj,
            new Versioned<>(tenantObj).getVersion());

    // the tenantId is either the device ID provided by the client
    // or a newly created random ID
    TracingHelper.TAG_DEVICE_ID.set(span, tenantId);

    final JsonObject newTenantDtoJson = JsonObject.mapFrom(newTenantDto);
    final Promise<String> createTenantPromise = Promise.promise();
    mongoClient.insert(config.getCollectionName(), newTenantDtoJson, createTenantPromise);
    return createTenantPromise.future()
            .compose(tenantObjectIdResult -> {
                span.log("successfully created tenant");
                return Future.succeededFuture(OperationResult.ok(
                        HttpURLConnection.HTTP_CREATED,
                        Id.of(tenantId),
                        Optional.empty(),
                        Optional.of(newTenantDto.getVersion())));
            })
            .recover(error -> {
                if (MongoDbDeviceRegistryUtils.isDuplicateKeyError(error)) {
                    LOG.debug(
                            "tenant [{}] already exists or an existing tenant uses a certificate authority with the same Subject DN",
                            tenantId, error);
                    TracingHelper.logError(span,
                            "tenant with the given identifier already exists or an existing tenant uses a certificate authority with the same Subject DN",
                            error);
                    return Future.succeededFuture(OperationResult.empty(HttpURLConnection.HTTP_CONFLICT));
                } else {
                    LOG.error("error adding tenant [{}]", tenantId, error);
                    TracingHelper.logError(span, "error adding Tenant", error);
                    return Future.succeededFuture(OperationResult.empty(HttpURLConnection.HTTP_INTERNAL_ERROR));
                }
            });
}
 
源代码14 项目: hono   文件: DeviceTest.java
/**
 * Encode device with "enabled=true".
 */
@Test
public void testEncodeEnabled() {
    final var device = new Device();
    device.setEnabled(true);
    final var json = JsonObject.mapFrom(device);
    assertThat(json).isNotNull();
    assertThat(json.getBoolean("enabled")).isTrue();
    assertThat(json.getJsonObject("ext")).isNull();
}
 
源代码15 项目: jgossip   文件: GossipManager.java
public Buffer encodeAckMessage(AckMessage ackMessage) {
    Buffer buffer = Buffer.buffer();
    JsonObject ackJson = JsonObject.mapFrom(ackMessage);
    buffer.appendString(GossipMessageFactory.getInstance().makeMessage(MessageType.ACK_MESSAGE, ackJson.encode(), getCluster(), getSelf().ipAndPort()).encode());
    return buffer;
}
 
源代码16 项目: hono   文件: TenantTest.java
/**
 * Encode with absent "enabled" flag.
 */
@Test
public void testEncodeDefault() {
    final var json = JsonObject.mapFrom(new Tenant());
    assertThat(json, is(emptyIterable()));
}
 
源代码17 项目: jgossip   文件: GossipManager.java
private Buffer encodeShutdownMessage() {
    Buffer buffer = Buffer.buffer();
    JsonObject self = JsonObject.mapFrom(getSelf());
    buffer.appendString(GossipMessageFactory.getInstance().makeMessage(MessageType.SHUTDOWN, self.encode(), getCluster(), getSelf().ipAndPort()).encode());
    return buffer;
}
 
源代码18 项目: graviteeio-access-management   文件: User.java
public User(io.gravitee.am.model.User user) {
    this.user = user;
    this.principal = JsonObject.mapFrom(user);
}
 
源代码19 项目: vertx-jooq   文件: SomeJsonPojoConverter.java
@Override
public JsonObject to(SomeJsonPojo userObject) {
    return userObject==null?null:JsonObject.mapFrom(userObject);
}
 
源代码20 项目: hono   文件: DeviceRegistryHttpClient.java
/**
 * Updates configuration information for a tenant.
 *
 * @param tenantId The tenant to update information for.
 * @param requestPayload The payload to set, as specified by the Tenant management API.
 * @param expectedStatusCode The status code indicating a successful outcome.
 * @return A future indicating the outcome of the operation. The future will succeed if the response contained the
 *         expected status code. Otherwise the future will fail with a {@link org.eclipse.hono.client.ServiceInvocationException}.
 */
public Future<MultiMap> updateTenant(final String tenantId, final Tenant requestPayload,
        final int expectedStatusCode) {

    final String uri = tenantInstanceUri(tenantId);
    final JsonObject payload = JsonObject.mapFrom(requestPayload);
    return httpClient.update(uri, payload, status -> status == expectedStatusCode);
}