Search in sources :

Example 6 with Json

use of org.infinispan.commons.dataconversion.internal.Json in project infinispan by infinispan.

the class ComplexValue method testJsonFromDefaultCache.

@Test
public void testJsonFromDefaultCache() {
    RemoteCache<String, String> schemaCache = remoteCacheManager.getCache(PROTOBUF_METADATA_CACHE_NAME);
    schemaCache.put("schema.proto", "message M { optional string json_key = 1; }");
    RemoteQueryTestUtils.checkSchemaErrors(schemaCache);
    DataFormat jsonValues = DataFormat.builder().valueType(APPLICATION_JSON).valueMarshaller(new UTF8StringMarshaller()).build();
    RemoteCache<Integer, String> cache = remoteCacheManager.getCache().withDataFormat(jsonValues);
    String value = "{\"_type\":\"M\",\"json_key\":\"json_value\"}";
    cache.put(1, value);
    String valueAsJson = cache.get(1);
    Json node = Json.read(valueAsJson);
    assertEquals("json_value", node.at("json_key").asString());
}
Also used : UTF8StringMarshaller(org.infinispan.commons.marshall.UTF8StringMarshaller) DataFormat(org.infinispan.client.hotrod.DataFormat) Json(org.infinispan.commons.dataconversion.internal.Json) Test(org.testng.annotations.Test) SingleHotRodServerTest(org.infinispan.client.hotrod.test.SingleHotRodServerTest)

Example 7 with Json

use of org.infinispan.commons.dataconversion.internal.Json in project infinispan by infinispan.

the class RestCacheManagerClientOkHttp method createBackup.

@Override
public CompletionStage<RestResponse> createBackup(String name, String workingDir, Map<String, List<String>> resources) {
    Json json = Json.object();
    if (workingDir != null)
        json.set("directory", workingDir);
    if (resources != null)
        json.set("resources", Json.factory().make(resources));
    RequestBody body = new StringRestEntityOkHttp(MediaType.APPLICATION_JSON, json.toString()).toRequestBody();
    Request.Builder builder = backup(name).post(body);
    return client.execute(builder);
}
Also used : Request(okhttp3.Request) Json(org.infinispan.commons.dataconversion.internal.Json) RequestBody(okhttp3.RequestBody)

Example 8 with Json

use of org.infinispan.commons.dataconversion.internal.Json in project infinispan by infinispan.

the class RestCacheManagerClientOkHttp method restore.

@Override
public CompletionStage<RestResponse> restore(String name, String backupLocation, Map<String, List<String>> resources) {
    Json json = Json.object();
    json.set("location", backupLocation);
    if (resources != null)
        json.set("resources", Json.factory().make(resources));
    RequestBody body = new StringRestEntityOkHttp(MediaType.APPLICATION_JSON, json.toString()).toRequestBody();
    Request.Builder builder = restore(name).post(body);
    return client.execute(builder);
}
Also used : Request(okhttp3.Request) Json(org.infinispan.commons.dataconversion.internal.Json) RequestBody(okhttp3.RequestBody)

Example 9 with Json

use of org.infinispan.commons.dataconversion.internal.Json in project infinispan by infinispan.

the class RestClusterClientOkHttp method restore.

@Override
public CompletionStage<RestResponse> restore(String name, String backupLocation) {
    Json json = Json.object();
    json.set("location", backupLocation);
    RequestBody body = new StringRestEntityOkHttp(MediaType.APPLICATION_JSON, json.toString()).toRequestBody();
    Request.Builder builder = restore(name).post(body);
    return client.execute(builder);
}
Also used : Request(okhttp3.Request) Json(org.infinispan.commons.dataconversion.internal.Json) RequestBody(okhttp3.RequestBody)

Example 10 with Json

use of org.infinispan.commons.dataconversion.internal.Json in project infinispan by infinispan.

the class CacheEntryCloudEventsTest method assertEntryEventSent.

private void assertEntryEventSent(Object key, Object value, TestWriteOperation op) {
    byte[] expectedKeyBytes = getKeyBytes(key);
    byte[] expectedValueBytes = getValueBytes(value);
    String type = translateType(op);
    Optional<ProducerRecord<byte[], byte[]>> record = mockSender.getProducer().history().stream().filter(r -> Arrays.equals(r.key(), expectedKeyBytes)).findFirst();
    assertTrue(record.isPresent());
    byte[] eventBytes = record.get().value();
    Json json = Json.read(new String(eventBytes));
    assertEquals("1.0", json.at(SPECVERSION).asString());
    assertEquals(type, json.at(TYPE).asString());
    String source = json.at(SOURCE).asString();
    assertTrue(source.startsWith("/infinispan"));
    assertTrue(source.endsWith("/" + CACHE_NAME));
    Instant.parse(json.at(TIME).asString());
    boolean keyIsBase64 = json.at(INFINISPAN_SUBJECT_ISBASE64, false).asBoolean();
    assertEquals(expectedContentType(keyIsBase64).toString(), json.at(INFINISPAN_SUBJECT_CONTENTTYPE, APPLICATION_JSON_TYPE).asString());
    String subject = json.at(SUBJECT).asString();
    byte[] keyBytes = keyIsBase64 ? Base64.getDecoder().decode(subject) : subject.getBytes(StandardCharsets.UTF_8);
    assertEquals(expectedKeyBytes, keyBytes);
    String data = json.at(DATA).asString();
    boolean valueIsBase64 = json.at(INFINISPAN_DATA_ISBASE64, false).asBoolean();
    assertEquals(expectedContentType(valueIsBase64).toString(), json.at(DATACONTENTTYPE, APPLICATION_JSON_TYPE).asString());
    byte[] valueBytes = valueIsBase64 ? Base64.getDecoder().decode(data) : data.getBytes(StandardCharsets.UTF_8);
    assertEquals(expectedValueBytes, valueBytes);
}
Also used : Arrays(java.util.Arrays) TestGlobalConfigurationBuilder(org.infinispan.commands.module.TestGlobalConfigurationBuilder) ConfigurationBuilder(org.infinispan.configuration.cache.ConfigurationBuilder) TimeoutException(java.util.concurrent.TimeoutException) Test(org.testng.annotations.Test) Cache(org.infinispan.Cache) AssertJUnit.assertTrue(org.testng.AssertJUnit.assertTrue) AdvancedCache(org.infinispan.AdvancedCache) DATACONTENTTYPE(org.infinispan.cloudevents.impl.StructuredEventBuilder.DATACONTENTTYPE) APPLICATION_OBJECT(org.infinispan.commons.dataconversion.MediaType.APPLICATION_OBJECT) Map(java.util.Map) TestingUtil(org.infinispan.test.TestingUtil) MagicKey(org.infinispan.distribution.MagicKey) TestDataSCI(org.infinispan.test.TestDataSCI) KafkaEventSender(org.infinispan.cloudevents.impl.KafkaEventSender) Instant(java.time.Instant) StandardCharsets(java.nio.charset.StandardCharsets) INFINISPAN_SUBJECT_ISBASE64(org.infinispan.cloudevents.impl.StructuredEventBuilder.INFINISPAN_SUBJECT_ISBASE64) Base64(java.util.Base64) CompletionStage(java.util.concurrent.CompletionStage) Flag(org.infinispan.context.Flag) Optional(java.util.Optional) DataConversion(org.infinispan.encoding.DataConversion) INFINISPAN_SUBJECT_CONTENTTYPE(org.infinispan.cloudevents.impl.StructuredEventBuilder.INFINISPAN_SUBJECT_CONTENTTYPE) ProducerRecord(org.apache.kafka.clients.producer.ProducerRecord) DataProvider(org.testng.annotations.DataProvider) TYPE(org.infinispan.cloudevents.impl.StructuredEventBuilder.TYPE) PrivateGlobalConfigurationBuilder(org.infinispan.configuration.internal.PrivateGlobalConfigurationBuilder) CompletableFuture(java.util.concurrent.CompletableFuture) INFINISPAN_DATA_ISBASE64(org.infinispan.cloudevents.impl.StructuredEventBuilder.INFINISPAN_DATA_ISBASE64) LinkedHashMap(java.util.LinkedHashMap) APPLICATION_UNKNOWN(org.infinispan.commons.dataconversion.MediaType.APPLICATION_UNKNOWN) MediaType(org.infinispan.commons.dataconversion.MediaType) EmbeddedCacheManager(org.infinispan.manager.EmbeddedCacheManager) EncoderRegistry(org.infinispan.marshall.core.EncoderRegistry) DATA(org.infinispan.cloudevents.impl.StructuredEventBuilder.DATA) Address(org.infinispan.remoting.transport.Address) APPLICATION_PROTOSTREAM(org.infinispan.commons.dataconversion.MediaType.APPLICATION_PROTOSTREAM) StorageType(org.infinispan.configuration.cache.StorageType) APPLICATION_JSON(org.infinispan.commons.dataconversion.MediaType.APPLICATION_JSON) MultipleCacheManagersTest(org.infinispan.test.MultipleCacheManagersTest) TIME(org.infinispan.cloudevents.impl.StructuredEventBuilder.TIME) GlobalConfigurationBuilder(org.infinispan.configuration.global.GlobalConfigurationBuilder) SUBJECT(org.infinispan.cloudevents.impl.StructuredEventBuilder.SUBJECT) AssertJUnit.assertFalse(org.testng.AssertJUnit.assertFalse) SOURCE(org.infinispan.cloudevents.impl.StructuredEventBuilder.SOURCE) SPECVERSION(org.infinispan.cloudevents.impl.StructuredEventBuilder.SPECVERSION) Json(org.infinispan.commons.dataconversion.internal.Json) ExecutionException(java.util.concurrent.ExecutionException) APPLICATION_JSON_TYPE(org.infinispan.commons.dataconversion.MediaType.APPLICATION_JSON_TYPE) CacheMode(org.infinispan.configuration.cache.CacheMode) TestWriteOperation(org.infinispan.test.op.TestWriteOperation) CloudEventsGlobalConfigurationBuilder(org.infinispan.cloudevents.configuration.CloudEventsGlobalConfigurationBuilder) AssertJUnit.assertEquals(org.testng.AssertJUnit.assertEquals) SECONDS(java.util.concurrent.TimeUnit.SECONDS) ProducerRecord(org.apache.kafka.clients.producer.ProducerRecord) Json(org.infinispan.commons.dataconversion.internal.Json)

Aggregations

Json (org.infinispan.commons.dataconversion.internal.Json)130 RestResponse (org.infinispan.client.rest.RestResponse)51 Test (org.testng.annotations.Test)51 RestClient (org.infinispan.client.rest.RestClient)15 Util.getResourceAsString (org.infinispan.commons.util.Util.getResourceAsString)13 Test (org.junit.Test)13 RestCacheClient (org.infinispan.client.rest.RestCacheClient)12 MultipleCacheManagersTest (org.infinispan.test.MultipleCacheManagersTest)12 AbstractMultipleSitesTest (org.infinispan.xsite.AbstractMultipleSitesTest)7 ArrayList (java.util.ArrayList)6 List (java.util.List)6 Map (java.util.Map)6 NettyRestResponse (org.infinispan.rest.NettyRestResponse)6 ResourceUtil.addEntityAsJson (org.infinispan.rest.resources.ResourceUtil.addEntityAsJson)6 HashMap (java.util.HashMap)5 RestEntity (org.infinispan.client.rest.RestEntity)5 IOException (java.io.IOException)4 HashSet (java.util.HashSet)4 Request (okhttp3.Request)4 RestSchemaClient (org.infinispan.client.rest.RestSchemaClient)4