Search in sources :

Example 1 with EzyBeanContext

use of com.tvd12.ezyfox.bean.EzyBeanContext 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 2 with EzyBeanContext

use of com.tvd12.ezyfox.bean.EzyBeanContext 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 3 with EzyBeanContext

use of com.tvd12.ezyfox.bean.EzyBeanContext in project calabash by youngmonkeys.

the class LocalMapPersistExample method test.

@SuppressWarnings("rawtypes")
public void test() {
    EzyEntityCodec entityCodec = newEntityCodec();
    SimpleSettings settings = new SimpleSettings();
    SimpleMapPersistSetting mapPersistSetting = new SimpleMapPersistSetting();
    SimpleMapSetting mapSetting = new SimpleMapSetting();
    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);
    }
    BytesMapPersistFactory bytesMapPersistFactory = EntityBytesMapPersistFactory.builder().entityCodec(entityCodec).entityMapPersistFactory(mapPersistFactoryBuilder.build()).build();
    Calabash calabash = CalabashServerContext.builder().settings(settings).bytesMapPersistFactory(bytesMapPersistFactory).build();
    ByteArray keyBytes = new ByteArray(entityCodec.serialize(1L));
    byte[] values = entityCodec.serialize(new Person(9L, "bar", 29));
    BytesMap bytesMap = calabash.getBytesMap(CollectionNames.PERSON);
    bytesMap.put(keyBytes, values);
}
Also used : SimpleSettings(com.tvd12.calabash.server.core.setting.SimpleSettings) EzyBeanContext(com.tvd12.ezyfox.bean.EzyBeanContext) BytesMap(com.tvd12.calabash.core.BytesMap) SimpleMapSetting(com.tvd12.calabash.server.core.setting.SimpleMapSetting) ByteArray(com.tvd12.calabash.core.util.ByteArray) List(java.util.List) SimpleMapPersistSetting(com.tvd12.calabash.persist.setting.SimpleMapPersistSetting) Calabash(com.tvd12.calabash.Calabash) SimpleEntityMapPersistFactory(com.tvd12.calabash.persist.factory.SimpleEntityMapPersistFactory) EntityBytesMapPersistFactory(com.tvd12.calabash.persist.factory.EntityBytesMapPersistFactory) BytesMapPersistFactory(com.tvd12.calabash.persist.factory.BytesMapPersistFactory)

Example 4 with EzyBeanContext

use of com.tvd12.ezyfox.bean.EzyBeanContext in project calabash by youngmonkeys.

the class ServerCoreBaseTest method newBeanContext.

protected EzyBeanContext newBeanContext() {
    MongoClient mongoClient = newMongoClient();
    EzyBeanContextBuilder builder = EzyBeanContext.builder().addSingleton("mongoClient", mongoClient).scan("com.tvd12.calabash.local.test.mappersist");
    addAutoImplMongoRepo(builder, mongoClient);
    return builder.build();
}
Also used : MongoClient(com.mongodb.MongoClient) EzyBeanContextBuilder(com.tvd12.ezyfox.bean.EzyBeanContextBuilder)

Example 5 with EzyBeanContext

use of com.tvd12.ezyfox.bean.EzyBeanContext in project ezyfox-server by youngmonkeys.

the class EzySimpleAppEntryTest method scanPackages.

@Test
public void scanPackages() {
    // given
    EzyAppContext appContext = mock(EzyAppContext.class);
    ScheduledExecutorService executorService = mock(ScheduledExecutorService.class);
    EzyZoneContext zoneContext = mock(EzyZoneContext.class);
    EzyServerContext serverContext = mock(EzyServerContext.class);
    EzyApplication application = mock(EzyApplication.class);
    EzyAppUserManager appUserManager = mock(EzyAppUserManager.class);
    EzyAppSetup appSetup = mock(EzyAppSetup.class);
    EzyAppSetting appSetting = mock(EzyAppSetting.class);
    when(application.getSetting()).thenReturn(appSetting);
    InternalAppEntry sut = new InternalAppEntry();
    // when
    when(appContext.get(ScheduledExecutorService.class)).thenReturn(executorService);
    when(appContext.getParent()).thenReturn(zoneContext);
    when(zoneContext.getParent()).thenReturn(serverContext);
    when(appContext.getApp()).thenReturn(application);
    when(application.getUserManager()).thenReturn(appUserManager);
    when(appContext.get(EzyAppSetup.class)).thenReturn(appSetup);
    sut.config(appContext);
    // then
    EzyBeanContext beanContext = sut.beanContext;
    MongoConfig mongoConfig = (MongoConfig) beanContext.getBean(MongoConfig.class);
    Set<String> expectedPackages = Sets.newHashSet(EzySupportConstants.DEFAULT_PACKAGE_TO_SCAN, "com.tvd12.ezyfoxserver.support.v120.test.entry");
    Asserts.assertEquals(expectedPackages, mongoConfig.packagesToScan);
    Singleton singleton = (Singleton) beanContext.getBean(Singleton.class);
    Asserts.assertNotNull(singleton);
}
Also used : ScheduledExecutorService(java.util.concurrent.ScheduledExecutorService) EzyAppSetup(com.tvd12.ezyfoxserver.command.EzyAppSetup) EzyZoneContext(com.tvd12.ezyfoxserver.context.EzyZoneContext) EzyBeanContext(com.tvd12.ezyfox.bean.EzyBeanContext) EzyServerContext(com.tvd12.ezyfoxserver.context.EzyServerContext) EzyAppContext(com.tvd12.ezyfoxserver.context.EzyAppContext) EzyAppSetting(com.tvd12.ezyfoxserver.setting.EzyAppSetting) EzyApplication(com.tvd12.ezyfoxserver.EzyApplication) EzyAppUserManager(com.tvd12.ezyfoxserver.wrapper.EzyAppUserManager) EzySingleton(com.tvd12.ezyfox.bean.annotation.EzySingleton) Test(org.testng.annotations.Test)

Aggregations

EzyBeanContext (com.tvd12.ezyfox.bean.EzyBeanContext)25 Test (org.testng.annotations.Test)15 ApplicationContextBuilder (com.tvd12.ezyhttp.server.core.ApplicationContextBuilder)6 ResourceResolver (com.tvd12.ezyhttp.server.core.resources.ResourceResolver)6 ScheduledExecutorService (java.util.concurrent.ScheduledExecutorService)6 EzyBeanContextBuilder (com.tvd12.ezyfox.bean.EzyBeanContextBuilder)5 ResourceDownloadManager (com.tvd12.ezyhttp.core.resources.ResourceDownloadManager)5 ApplicationContext (com.tvd12.ezyhttp.server.core.ApplicationContext)5 ViewContextBuilder (com.tvd12.ezyhttp.server.core.view.ViewContextBuilder)5 ViewContext (com.tvd12.ezyhttp.server.core.view.ViewContext)4 List (java.util.List)4 Calabash (com.tvd12.calabash.Calabash)3 SimpleEntityMapPersistFactory (com.tvd12.calabash.persist.factory.SimpleEntityMapPersistFactory)3 EzyReflection (com.tvd12.ezyfox.reflect.EzyReflection)3 EzyFeatureCommandManager (com.tvd12.ezyfoxserver.support.manager.EzyFeatureCommandManager)3 EzyRequestCommandManager (com.tvd12.ezyfoxserver.support.manager.EzyRequestCommandManager)3 MongoClient (com.mongodb.MongoClient)2 StatisticsAware (com.tvd12.calabash.core.statistic.StatisticsAware)2 CalabashBuilder (com.tvd12.calabash.local.CalabashBuilder)2 SimpleEntityMapPersistSetting (com.tvd12.calabash.local.setting.SimpleEntityMapPersistSetting)2