Search in sources :

Example 6 with User

use of org.infinispan.protostream.sampledomain.User in project infinispan by infinispan.

the class AbstractAuthorization method prepareIndexedCache.

private org.infinispan.configuration.cache.ConfigurationBuilder prepareIndexedCache() {
    String schema = Exceptions.unchecked(() -> Util.getResourceAsString("/sample_bank_account/bank.proto", this.getClass().getClassLoader()));
    RemoteCacheManager remoteCacheManager = getServerTest().hotrod().withClientConfiguration(hotRodBuilders.get(TestUser.ADMIN)).createRemoteCacheManager();
    RemoteCache<String, String> metadataCache = remoteCacheManager.getCache(ProtobufMetadataManagerConstants.PROTOBUF_METADATA_CACHE_NAME);
    metadataCache.put(BANK_PROTO, schema);
    org.infinispan.configuration.cache.ConfigurationBuilder builder = new org.infinispan.configuration.cache.ConfigurationBuilder();
    builder.clustering().cacheMode(CacheMode.DIST_SYNC).stateTransfer().awaitInitialTransfer(true).security().authorization().enable().indexing().enable().storage(LOCAL_HEAP).addIndexedEntity("sample_bank_account.User");
    RemoteCache<Integer, User> adminCache = getServerTest().hotrod().withClientConfiguration(clientConfigurationWithProtostreamMarshaller(TestUser.ADMIN)).withServerConfiguration(builder).create();
    adminCache.put(1, HotRodCacheQueries.createUser1());
    adminCache.put(2, HotRodCacheQueries.createUser2());
    return builder;
}
Also used : RemoteCacheManager(org.infinispan.client.hotrod.RemoteCacheManager) RestClientConfigurationBuilder(org.infinispan.client.rest.configuration.RestClientConfigurationBuilder) AuthorizationConfigurationBuilder(org.infinispan.configuration.cache.AuthorizationConfigurationBuilder) ConfigurationBuilder(org.infinispan.client.hotrod.configuration.ConfigurationBuilder) User(org.infinispan.protostream.sampledomain.User) TestUser(org.infinispan.server.test.api.TestUser)

Example 7 with User

use of org.infinispan.protostream.sampledomain.User in project infinispan by infinispan.

the class ProtobufValueWrapperIndexingTest method createUser.

private User createUser(String name, String surname) {
    User user = new User();
    user.setId(1);
    user.setName(name);
    user.setSurname(surname);
    user.setGender(User.Gender.MALE);
    user.setAccountIds(Collections.singleton(12));
    Address address = new Address();
    address.setStreet("Dark Alley");
    address.setPostCode("1234");
    user.setAddresses(Collections.singletonList(address));
    return user;
}
Also used : User(org.infinispan.protostream.sampledomain.User) Address(org.infinispan.protostream.sampledomain.Address)

Example 8 with User

use of org.infinispan.protostream.sampledomain.User in project camel by apache.

the class InfinispanContinuousQueryIT method continuousQuery.

@Test
public void continuousQuery() throws Exception {
    MockEndpoint continuousQueryBuilderNoMatch = getMockEndpoint("mock:continuousQueryNoMatch");
    continuousQueryBuilderNoMatch.expectedMessageCount(0);
    MockEndpoint continuousQueryBuilderAll = getMockEndpoint("mock:continuousQueryAll");
    continuousQueryBuilderAll.expectedMessageCount(CQ_USERS.length * 2);
    MockEndpoint continuousQuery = getMockEndpoint("mock:continuousQuery");
    continuousQuery.expectedMessageCount(4);
    for (int i = 0; i < 4; i++) {
        continuousQuery.message(i).outHeader(InfinispanConstants.KEY).isEqualTo(createKey(CQ_USERS[i % 2]));
        continuousQuery.message(i).outHeader(InfinispanConstants.CACHE_NAME).isEqualTo(cache.getName());
        if (i >= 2) {
            continuousQuery.message(i).outHeader(InfinispanConstants.EVENT_TYPE).isEqualTo(InfinispanConstants.CACHE_ENTRY_LEAVING);
            continuousQuery.message(i).outHeader(InfinispanConstants.EVENT_DATA).isNull();
        } else {
            continuousQuery.message(i).outHeader(InfinispanConstants.EVENT_TYPE).isEqualTo(InfinispanConstants.CACHE_ENTRY_JOINING);
            continuousQuery.message(i).outHeader(InfinispanConstants.EVENT_DATA).isNotNull();
            continuousQuery.message(i).outHeader(InfinispanConstants.EVENT_DATA).isInstanceOf(User.class);
        }
    }
    for (final User user : CQ_USERS) {
        cache.put(createKey(user), user);
    }
    assertEquals(CQ_USERS.length, cache.size());
    for (final User user : CQ_USERS) {
        cache.remove(createKey(user));
    }
    assertTrue(cache.isEmpty());
    continuousQuery.assertIsSatisfied();
    continuousQueryBuilderNoMatch.assertIsSatisfied();
    continuousQueryBuilderAll.assertIsSatisfied();
}
Also used : User(org.infinispan.protostream.sampledomain.User) MockEndpoint(org.apache.camel.component.mock.MockEndpoint) MockEndpoint(org.apache.camel.component.mock.MockEndpoint) Test(org.junit.Test)

Example 9 with User

use of org.infinispan.protostream.sampledomain.User in project camel by apache.

the class InfinispanRemoteQueryProducerIT method doPostSetup.

@Override
protected void doPostSetup() throws Exception {
    // pre-load data
    RemoteCache<Object, Object> cache = manager.getCache("remote_query");
    assertNotNull(cache);
    cache.clear();
    assertTrue(cache.isEmpty());
    for (final User user : USERS) {
        String key = createKey(user);
        cache.put(key, user);
        assertTrue(cache.containsKey(key));
    }
}
Also used : User(org.infinispan.protostream.sampledomain.User) UserUtils.hasUser(org.apache.camel.component.infinispan.util.UserUtils.hasUser)

Example 10 with User

use of org.infinispan.protostream.sampledomain.User in project camel by apache.

the class InfinispanRemoteQueryProducerIT method producerQueryWithResult.

private void producerQueryWithResult(String endpoint, final InfinispanQueryBuilder builder) throws Exception {
    Exchange request = template.request(endpoint, createQueryProcessor(builder));
    assertNull(request.getException());
    List<User> queryResult = request.getIn().getHeader(RESULT, List.class);
    assertNotNull(queryResult);
    assertEquals(2, queryResult.size());
    assertTrue(hasUser(queryResult, "nameA", "surnameA"));
    assertTrue(hasUser(queryResult, "nameA", "surnameB"));
}
Also used : Exchange(org.apache.camel.Exchange) User(org.infinispan.protostream.sampledomain.User) UserUtils.hasUser(org.apache.camel.component.infinispan.util.UserUtils.hasUser)

Aggregations

User (org.infinispan.protostream.sampledomain.User)29 Test (org.junit.Test)15 QueryFactory (org.infinispan.query.dsl.QueryFactory)12 Exchange (org.apache.camel.Exchange)5 Address (org.infinispan.protostream.sampledomain.Address)5 UserUtils.hasUser (org.apache.camel.component.infinispan.util.UserUtils.hasUser)4 TestUser (org.infinispan.server.test.api.TestUser)3 ArrayList (java.util.ArrayList)2 HashSet (java.util.HashSet)2 MockEndpoint (org.apache.camel.component.mock.MockEndpoint)2 RestCacheClient (org.infinispan.client.rest.RestCacheClient)2 RestClientConfigurationBuilder (org.infinispan.client.rest.configuration.RestClientConfigurationBuilder)2 IOException (java.io.IOException)1 Instant (java.time.Instant)1 LinkedBlockingQueue (java.util.concurrent.LinkedBlockingQueue)1 Processor (org.apache.camel.Processor)1 CamelSpringBootTest (org.apache.camel.test.spring.junit5.CamelSpringBootTest)1 RemoteCacheManager (org.infinispan.client.hotrod.RemoteCacheManager)1 ConfigurationBuilder (org.infinispan.client.hotrod.configuration.ConfigurationBuilder)1 RestClient (org.infinispan.client.rest.RestClient)1