Search in sources :

Example 21 with CompactSerializationConfig

use of com.hazelcast.config.CompactSerializationConfig in project hazelcast by hazelcast.

the class QueryTest method testIndexForComparableAttributes.

public void testIndexForComparableAttributes(IndexType indexType) throws IOException {
    Config config = new Config();
    MapConfig mapConfig = new MapConfig();
    mapConfig.setName("map");
    config.getSerializationConfig().setCompactSerializationConfig(new CompactSerializationConfig().setEnabled(true));
    IndexConfig indexConfig = new IndexConfig();
    indexConfig.addAttribute("firstLimb.name");
    indexConfig.setType(indexType);
    mapConfig.addIndexConfig(indexConfig);
    config.addMapConfig(mapConfig);
    HazelcastInstance instance = createHazelcastInstance(config);
    IMap map = instance.getMap("map");
    for (int i = 0; i < 10; i++) {
        map.put(i, BOND);
    }
    Collection result = map.values(Predicates.equal("firstLimb.name", "left-hand"));
    assertEquals(10, result.size());
    for (Object value : result) {
        ComplexTestDataStructure.Limb firstLimb = ((ComplexTestDataStructure.Person) value).firstLimb;
        assertEquals("left-hand", firstLimb.name);
    }
}
Also used : IMap(com.hazelcast.map.IMap) IndexConfig(com.hazelcast.config.IndexConfig) HazelcastInstance(com.hazelcast.core.HazelcastInstance) CompactSerializationConfig(com.hazelcast.config.CompactSerializationConfig) Config(com.hazelcast.config.Config) IndexConfig(com.hazelcast.config.IndexConfig) MapConfig(com.hazelcast.config.MapConfig) CompactSerializationConfig(com.hazelcast.config.CompactSerializationConfig) Collection(java.util.Collection) MapConfig(com.hazelcast.config.MapConfig)

Example 22 with CompactSerializationConfig

use of com.hazelcast.config.CompactSerializationConfig in project hazelcast by hazelcast.

the class QueryTest method testIndexNotSupportedForObjectAttributes.

@Test(expected = IllegalArgumentException.class)
public void testIndexNotSupportedForObjectAttributes() throws IOException {
    Config config = new Config();
    MapConfig mapConfig = new MapConfig();
    mapConfig.setName("map");
    config.getSerializationConfig().setCompactSerializationConfig(new CompactSerializationConfig().setEnabled(true));
    IndexConfig indexConfig = new IndexConfig();
    indexConfig.addAttribute("firstLimb");
    indexConfig.setType(IndexType.SORTED);
    mapConfig.addIndexConfig(indexConfig);
    config.addMapConfig(mapConfig);
    HazelcastInstance instance = createHazelcastInstance(config);
    IMap map = instance.getMap("map");
    map.put(1, BOND);
}
Also used : IMap(com.hazelcast.map.IMap) IndexConfig(com.hazelcast.config.IndexConfig) HazelcastInstance(com.hazelcast.core.HazelcastInstance) CompactSerializationConfig(com.hazelcast.config.CompactSerializationConfig) Config(com.hazelcast.config.Config) IndexConfig(com.hazelcast.config.IndexConfig) MapConfig(com.hazelcast.config.MapConfig) CompactSerializationConfig(com.hazelcast.config.CompactSerializationConfig) MapConfig(com.hazelcast.config.MapConfig) ParallelJVMTest(com.hazelcast.test.annotation.ParallelJVMTest) QuickTest(com.hazelcast.test.annotation.QuickTest) Test(org.junit.Test)

Example 23 with CompactSerializationConfig

use of com.hazelcast.config.CompactSerializationConfig in project hazelcast by hazelcast.

the class CompactStreamSerializerValueReaderQuickTest method reader.

// 
// Utilities
// 
public GenericRecordQueryReader reader(Car car) throws IOException {
    SchemaService schemaService = CompactTestUtil.createInMemorySchemaService();
    SerializationConfig serializationConfig = new SerializationConfig();
    serializationConfig.setCompactSerializationConfig(new CompactSerializationConfig().setEnabled(true));
    InternalSerializationService ss = new DefaultSerializationServiceBuilder().setConfig(serializationConfig).setSchemaService(schemaService).build();
    Data data = ss.toData(car);
    return new GenericRecordQueryReader(ss.readAsInternalGenericRecord(data));
}
Also used : DefaultSerializationServiceBuilder(com.hazelcast.internal.serialization.impl.DefaultSerializationServiceBuilder) CompactSerializationConfig(com.hazelcast.config.CompactSerializationConfig) SchemaService(com.hazelcast.internal.serialization.impl.compact.SchemaService) SerializationConfig(com.hazelcast.config.SerializationConfig) CompactSerializationConfig(com.hazelcast.config.CompactSerializationConfig) GenericRecordQueryReader(com.hazelcast.internal.serialization.impl.GenericRecordQueryReader) Data(com.hazelcast.internal.serialization.Data) InternalSerializationService(com.hazelcast.internal.serialization.InternalSerializationService)

Example 24 with CompactSerializationConfig

use of com.hazelcast.config.CompactSerializationConfig in project hazelcast by hazelcast.

the class GetMapConfigOperationTest method setUp.

@Before
public void setUp() {
    factory = new TestHazelcastFactory();
    Config config = smallInstanceConfig();
    MapConfig withIndex = new MapConfig("map-with-index").addIndexConfig(new IndexConfig(IndexType.SORTED, "first"));
    config.addMapConfig(withIndex);
    CompactSerializationConfig compactSerializationConfig = config.getSerializationConfig().getCompactSerializationConfig();
    compactSerializationConfig.setEnabled(true);
    hz = factory.newHazelcastInstance(config);
    ClientConfig clientConfig = new ClientConfig();
    clientConfig.getSerializationConfig().getCompactSerializationConfig().setEnabled(true);
    client = ((HazelcastClientProxy) factory.newHazelcastClient(clientConfig)).client;
}
Also used : IndexConfig(com.hazelcast.config.IndexConfig) CompactSerializationConfig(com.hazelcast.config.CompactSerializationConfig) Config(com.hazelcast.config.Config) IndexConfig(com.hazelcast.config.IndexConfig) MapConfig(com.hazelcast.config.MapConfig) CompactSerializationConfig(com.hazelcast.config.CompactSerializationConfig) ClientConfig(com.hazelcast.client.config.ClientConfig) TestHazelcastFactory(com.hazelcast.client.test.TestHazelcastFactory) MapConfig(com.hazelcast.config.MapConfig) ClientConfig(com.hazelcast.client.config.ClientConfig) Before(org.junit.Before)

Example 25 with CompactSerializationConfig

use of com.hazelcast.config.CompactSerializationConfig in project hazelcast by hazelcast.

the class GenericRecordTest method testGenericRecordToStringValidJson.

@Test
public void testGenericRecordToStringValidJson() throws IOException {
    CompactSerializationConfig compactSerializationConfig = new CompactSerializationConfig();
    compactSerializationConfig.setEnabled(true);
    InternalSerializationService serializationService = new DefaultSerializationServiceBuilder().setSchemaService(schemaService).setConfig(new SerializationConfig().setCompactSerializationConfig(compactSerializationConfig)).build();
    MainDTO expectedDTO = createMainDTO();
    expectedDTO.nullableBool = null;
    expectedDTO.p.localDateTimes[0] = null;
    Data data = serializationService.toData(expectedDTO);
    assertTrue(data.isCompact());
    // internal generic record created on the servers on query
    InternalGenericRecord internalGenericRecord = serializationService.readAsInternalGenericRecord(data);
    String string = internalGenericRecord.toString();
    Json.parse(string);
    // generic record read from a remote instance without classes on the classpath
    List<String> excludes = Collections.singletonList("example.serialization");
    FilteringClassLoader classLoader = new FilteringClassLoader(excludes, null);
    ClassLoader contextClassLoader = Thread.currentThread().getContextClassLoader();
    try {
        Thread.currentThread().setContextClassLoader(classLoader);
        InternalSerializationService ss2 = new DefaultSerializationServiceBuilder().setSchemaService(schemaService).setClassLoader(classLoader).setConfig(new SerializationConfig().setCompactSerializationConfig(new CompactSerializationConfig())).build();
        GenericRecord genericRecord = ss2.toObject(data);
        Json.parse(genericRecord.toString());
        // generic record build by API
        GenericRecord apiGenericRecord = createCompactGenericRecord(expectedDTO);
        Json.parse(apiGenericRecord.toString());
    } finally {
        Thread.currentThread().setContextClassLoader(contextClassLoader);
    }
}
Also used : DefaultSerializationServiceBuilder(com.hazelcast.internal.serialization.impl.DefaultSerializationServiceBuilder) CompactSerializationConfig(com.hazelcast.config.CompactSerializationConfig) SerializationConfig(com.hazelcast.config.SerializationConfig) CompactSerializationConfig(com.hazelcast.config.CompactSerializationConfig) MainDTO(example.serialization.MainDTO) CompactTestUtil.createMainDTO(com.hazelcast.internal.serialization.impl.compact.CompactTestUtil.createMainDTO) FilteringClassLoader(com.hazelcast.internal.util.FilteringClassLoader) FilteringClassLoader(com.hazelcast.internal.util.FilteringClassLoader) Data(com.hazelcast.internal.serialization.Data) InternalSerializationService(com.hazelcast.internal.serialization.InternalSerializationService) InternalGenericRecord(com.hazelcast.internal.serialization.impl.InternalGenericRecord) GenericRecord(com.hazelcast.nio.serialization.GenericRecord) CompactTestUtil.createCompactGenericRecord(com.hazelcast.internal.serialization.impl.compact.CompactTestUtil.createCompactGenericRecord) InternalGenericRecord(com.hazelcast.internal.serialization.impl.InternalGenericRecord) ParallelJVMTest(com.hazelcast.test.annotation.ParallelJVMTest) QuickTest(com.hazelcast.test.annotation.QuickTest) Test(org.junit.Test)

Aggregations

CompactSerializationConfig (com.hazelcast.config.CompactSerializationConfig)30 Test (org.junit.Test)12 SerializationConfig (com.hazelcast.config.SerializationConfig)10 DefaultSerializationServiceBuilder (com.hazelcast.internal.serialization.impl.DefaultSerializationServiceBuilder)10 QuickTest (com.hazelcast.test.annotation.QuickTest)9 ParallelJVMTest (com.hazelcast.test.annotation.ParallelJVMTest)8 Config (com.hazelcast.config.Config)7 TriTuple (com.hazelcast.internal.util.TriTuple)6 MapConfig (com.hazelcast.config.MapConfig)5 HazelcastInstance (com.hazelcast.core.HazelcastInstance)5 IndexConfig (com.hazelcast.config.IndexConfig)4 Data (com.hazelcast.internal.serialization.Data)4 InternalSerializationService (com.hazelcast.internal.serialization.InternalSerializationService)4 ClientConfig (com.hazelcast.client.config.ClientConfig)3 IMap (com.hazelcast.map.IMap)3 Before (org.junit.Before)3 Node (org.w3c.dom.Node)3 GenericRecordQueryReader (com.hazelcast.internal.serialization.impl.GenericRecordQueryReader)2 SchemaService (com.hazelcast.internal.serialization.impl.compact.SchemaService)2 CompactReader (com.hazelcast.nio.serialization.compact.CompactReader)2