Search in sources :

Example 1 with EntityMap

use of com.tvd12.calabash.core.EntityMap in project calabash by youngmonkeys.

the class CalabashClientTest method test.

@SuppressWarnings("unchecked")
public void test() throws Exception {
    CalabaseClient client = CalabashClientFactory.builder().build().newClient();
    EntityMap<String, String> map = client.getMap("world", String.class, String.class);
    System.out.println("Map: " + map);
    map.set("Hello", "World");
    System.out.println("set ok");
    map.put("Foo", "Bar");
    System.out.println("put ok");
    map.putAll(EzyMapBuilder.mapBuilder().put("Who", "Are You?").build());
    System.out.println("Hello " + map.get("Hello"));
    System.out.println("Hello " + map.get(Sets.newHashSet("Hello", "Who")));
    IAtomicLong atomicLong = client.getAtomicLong("hello");
    System.out.println("AtomicLong.id = " + atomicLong);
    System.out.println("AtomicLong.value1 = " + atomicLong.incrementAndGet());
    System.out.println("AtomicLong.value2 = " + atomicLong.addAndGet(100));
    MessageChannel<String> messageChannel = client.getMessageChannel("hello", String.class);
    messageChannel.addSubscriber(message -> {
        System.out.println("received message: " + message);
    });
    System.out.println("message channel: " + messageChannel);
    Thread.sleep(500);
    messageChannel.publish("Don't do that");
    System.out.println("publish message ok");
}
Also used : CalabaseClient(com.tvd12.calabash.client.CalabaseClient) IAtomicLong(com.tvd12.calabash.core.IAtomicLong)

Example 2 with EntityMap

use of com.tvd12.calabash.core.EntityMap in project calabash by youngmonkeys.

the class SimpleEntityMapFactory method newMap.

@Override
public EntityMap newMap(String mapName) {
    EntityMap map = createMap(mapName);
    newMapPersist(mapName);
    return map;
}
Also used : EntityMap(com.tvd12.calabash.core.EntityMap)

Example 3 with EntityMap

use of com.tvd12.calabash.core.EntityMap in project calabash by youngmonkeys.

the class LocalMapAnimalPersistExample method test.

@SuppressWarnings("rawtypes")
public void test() throws Exception {
    SimpleSettings settings = new SimpleSettings();
    SimpleEntityMapPersistSetting mapPersistSetting = new SimpleEntityMapPersistSetting();
    mapPersistSetting.setWriteDelay(0);
    SimpleEntityMapSetting mapSetting = new SimpleEntityMapSetting();
    mapSetting.setMapName(CollectionNames.ANIMAL);
    mapSetting.setPersistSetting(mapPersistSetting);
    settings.addMapSetting(mapSetting);
    EzyBeanContext beanContext = newBeanContext();
    SimpleEntityMapPersistFactory.Builder mapPersistFactoryBuilder = SimpleEntityMapPersistFactory.builder();
    List mapPersistences = beanContext.getSingletons(MapPersistence.class);
    for (Object mapPersist : mapPersistences) {
        String mapName = MapPersistenceAnnotations.getMapName(mapPersist);
        mapPersistFactoryBuilder.addMapPersist(mapName, (EntityMapPersist) mapPersist);
    }
    Calabash calabash = new CalabashBuilder().settings(settings).mapPersistFactory(mapPersistFactoryBuilder.build()).build();
    Animal animal = new Animal(2, "animal 2", "cat");
    EntityMap<Long, Animal> entityMap = calabash.getEntityMap(CollectionNames.ANIMAL);
    entityMap.put(animal.getId(), animal);
    AnimalByNickQuery query = new AnimalByNickQuery(animal.getNick());
    Animal animalByQuery = entityMap.getByQuery(1L, query);
    System.out.println("animal by query: " + animalByQuery);
    Map<String, Object> statistics = new HashMap<>();
    // noinspection InfiniteLoopStatement
    while (true) {
        // noinspection BusyWait
        Thread.sleep(1000);
        ((StatisticsAware) calabash).addStatistics(statistics);
        System.out.println("statistics: " + statistics);
    }
}
Also used : SimpleEntityMapSetting(com.tvd12.calabash.local.setting.SimpleEntityMapSetting) SimpleSettings(com.tvd12.calabash.local.setting.SimpleSettings) EzyBeanContext(com.tvd12.ezyfox.bean.EzyBeanContext) HashMap(java.util.HashMap) SimpleEntityMapPersistSetting(com.tvd12.calabash.local.setting.SimpleEntityMapPersistSetting) CalabashBuilder(com.tvd12.calabash.local.CalabashBuilder) Animal(com.tvd12.calabash.local.test.mappersist.Animal) List(java.util.List) StatisticsAware(com.tvd12.calabash.core.statistic.StatisticsAware) Calabash(com.tvd12.calabash.Calabash) SimpleEntityMapPersistFactory(com.tvd12.calabash.persist.factory.SimpleEntityMapPersistFactory)

Example 4 with EntityMap

use of com.tvd12.calabash.core.EntityMap in project calabash by youngmonkeys.

the class LocalMapPersistExample method test.

@SuppressWarnings("rawtypes")
public void test() throws Exception {
    SimpleSettings settings = new SimpleSettings();
    SimpleEntityMapPersistSetting mapPersistSetting = new SimpleEntityMapPersistSetting();
    mapPersistSetting.setWriteDelay(0);
    SimpleEntityMapSetting mapSetting = new SimpleEntityMapSetting();
    mapSetting.setMapName(CollectionNames.PERSON);
    mapSetting.setPersistSetting(mapPersistSetting);
    settings.addMapSetting(mapSetting);
    EzyBeanContext beanContext = newBeanContext();
    SimpleEntityMapPersistFactory.Builder mapPersistFactoryBuilder = SimpleEntityMapPersistFactory.builder();
    List mapPersistenceList = beanContext.getSingletons(MapPersistence.class);
    for (Object mapPersist : mapPersistenceList) {
        String mapName = MapPersistenceAnnotations.getMapName(mapPersist);
        mapPersistFactoryBuilder.addMapPersist(mapName, (EntityMapPersist) mapPersist);
    }
    Calabash calabash = new CalabashBuilder().settings(settings).mapPersistFactory(mapPersistFactoryBuilder.build()).build();
    Person person = new Person(11, "person 6", 18);
    EntityMap<Long, Person> entityMap = calabash.getEntityMap(CollectionNames.PERSON);
    entityMap.put(person.getId(), person);
    IAtomicLong atomicLong = calabash.getAtomicLong("hello");
    long newValue = atomicLong.addAndGet(100L);
    System.out.println("atomic long new value: " + newValue);
    Map<String, Object> statistics = new HashMap<>();
    // noinspection InfiniteLoopStatement
    while (true) {
        // noinspection BusyWait
        Thread.sleep(1000);
        ((StatisticsAware) calabash).addStatistics(statistics);
        System.out.println("statistics: " + statistics);
    }
}
Also used : SimpleEntityMapSetting(com.tvd12.calabash.local.setting.SimpleEntityMapSetting) SimpleSettings(com.tvd12.calabash.local.setting.SimpleSettings) EzyBeanContext(com.tvd12.ezyfox.bean.EzyBeanContext) HashMap(java.util.HashMap) SimpleEntityMapPersistSetting(com.tvd12.calabash.local.setting.SimpleEntityMapPersistSetting) CalabashBuilder(com.tvd12.calabash.local.CalabashBuilder) IAtomicLong(com.tvd12.calabash.core.IAtomicLong) List(java.util.List) StatisticsAware(com.tvd12.calabash.core.statistic.StatisticsAware) Calabash(com.tvd12.calabash.Calabash) IAtomicLong(com.tvd12.calabash.core.IAtomicLong) Person(com.tvd12.calabash.local.test.mappersist.Person) SimpleEntityMapPersistFactory(com.tvd12.calabash.persist.factory.SimpleEntityMapPersistFactory)

Example 5 with EntityMap

use of com.tvd12.calabash.core.EntityMap in project calabash by youngmonkeys.

the class SimpleEntityMapManager method newMap.

protected EntityMap newMap(String mapName) {
    synchronized (maps) {
        EntityMap map = maps.get(mapName);
        if (map == null) {
            map = mapFactory.newMap(mapName);
            maps.put(mapName, map);
        }
        return map;
    }
}
Also used : EntityMap(com.tvd12.calabash.core.EntityMap)

Aggregations

EntityMap (com.tvd12.calabash.core.EntityMap)3 StatisticsAware (com.tvd12.calabash.core.statistic.StatisticsAware)3 HashMap (java.util.HashMap)3 Calabash (com.tvd12.calabash.Calabash)2 IAtomicLong (com.tvd12.calabash.core.IAtomicLong)2 CalabashBuilder (com.tvd12.calabash.local.CalabashBuilder)2 SimpleEntityMapPersistSetting (com.tvd12.calabash.local.setting.SimpleEntityMapPersistSetting)2 SimpleEntityMapSetting (com.tvd12.calabash.local.setting.SimpleEntityMapSetting)2 SimpleSettings (com.tvd12.calabash.local.setting.SimpleSettings)2 SimpleEntityMapPersistFactory (com.tvd12.calabash.persist.factory.SimpleEntityMapPersistFactory)2 EzyBeanContext (com.tvd12.ezyfox.bean.EzyBeanContext)2 List (java.util.List)2 CalabaseClient (com.tvd12.calabash.client.CalabaseClient)1 Animal (com.tvd12.calabash.local.test.mappersist.Animal)1 Person (com.tvd12.calabash.local.test.mappersist.Person)1 ArrayList (java.util.ArrayList)1 Map (java.util.Map)1