Package com.foreach.across.core

Examples of com.foreach.across.core.AcrossContext


  @Configuration
  protected static class Config
  {
    @Bean
    public AcrossContext acrossContext( ApplicationContext applicationContext ) {
      AcrossContext context = new AcrossContext( applicationContext );
      context.setInstallerAction( InstallerAction.DISABLED );

      context.addModule( new ModuleOne() );
      context.addModule( new ModuleTwo() );

      return context;
    }
View Full Code Here


public class TestContextScanning
{
  @Test
  public void beansShouldBeReturnedInTheRegisteredOrderOfTheModules() {
    AcrossContext context = new AcrossContext();
    context.addModule( new ModuleOne() );
    context.addModule( new ModuleTwo() );
    context.addModule( new ModuleThree() );
    context.bootstrap();

    AcrossContextBeanRegistry registry = AcrossContextUtils.getBeanRegistry( context );
    List<MyBeanConfig> beans = registry.getBeansOfType( MyBeanConfig.class );
    assertTrue( beans.isEmpty() );

    beans = registry.getBeansOfType( MyBeanConfig.class, true );
    assertEquals( 3, beans.size() );

    assertEquals( "ModuleOne", beans.get( 0 ).getModule() );
    assertEquals( "ModuleTwo", beans.get( 1 ).getModule() );
    assertEquals( "ModuleThree", beans.get( 2 ).getModule() );

    context.shutdown();
  }
View Full Code Here

    }

    @Bean
    @Autowired
    public AcrossContext acrossContext( ConfigurableApplicationContext applicationContext ) throws Exception {
      AcrossContext context = new AcrossContext( applicationContext );
      context.setDataSource( acrossDataSource() );
      context.setInstallerAction( InstallerAction.DISABLED );

      context.addModule( testModule1() );
      context.addModule( testModule2() );

      return context;
    }
View Full Code Here

    context.shutdown();
  }

  @Test
  public void internalGenericBeanResolving() {
    AcrossContext context = new AcrossContext();
    context.addModule( new ModuleOne() );
    context.addModule( new ModuleTwo() );
    context.addModule( new ModuleThree() );
    context.bootstrap();

    AcrossContextBeanRegistry registry = AcrossContextUtils.getBeanRegistry( context );
    List<GenericBean> beans = registry.getBeansOfType( GenericBean.class, true );

    assertEquals( 6, beans.size() );
View Full Code Here

    assertEquals( "stringWithDateList", beans.get( 2 ).getName() );
  }

  @Test
  public void refreshableCollectionTesting() {
    AcrossContext context = new AcrossContext();
    context.addModule( new ModuleOne() );
    context.addModule( new ModuleTwo() );
    context.bootstrap();

    AcrossContextBeanRegistry registry = AcrossContextUtils.getBeanRegistry( context );
    MyBeanConfig one = registry.getBeanOfTypeFromModule( "ModuleOne", MyBeanConfig.class );
    MyBeanConfig two = registry.getBeanOfTypeFromModule( "ModuleTwo", MyBeanConfig.class );
View Full Code Here

    assertTrue( datesTwo.isEmpty() );
  }

  @Test
  public void beansShouldBeReturnedInTheBootstrapOrderOfModules() {
    AcrossContext context = new AcrossContext();

    ModuleOne moduleOne = new ModuleOne();
    moduleOne.addRuntimeDependency( "ModuleThree" );
    context.addModule( moduleOne );

    ModuleTwo moduleTwo = new ModuleTwo();
    moduleTwo.addRuntimeDependency( "ModuleOne" );
    context.addModule( moduleTwo );

    ModuleThree moduleThree = new ModuleThree();
    context.addModule( moduleThree );

    context.bootstrap();

    AcrossContextBeanRegistry registry = AcrossContextUtils.getBeanRegistry( context );
    List<MyBeanConfig> beans = registry.getBeansOfType( MyBeanConfig.class, true );
    assertEquals( 3, beans.size() );

    assertEquals( "ModuleThree", beans.get( 0 ).getModule() );
    assertEquals( "ModuleOne", beans.get( 1 ).getModule() );
    assertEquals( "ModuleTwo", beans.get( 2 ).getModule() );

    context.shutdown();
  }
View Full Code Here

  public void beansFromTheParentContextArePositionedBeforeTheModuleBeans() {
    GenericApplicationContext applicationContext = new GenericApplicationContext();
    applicationContext.getBeanFactory().registerSingleton( "", new MyFixedBeanConfig() );
    applicationContext.refresh();

    AcrossContext context = new AcrossContext( applicationContext );

    ModuleOne moduleOne = new ModuleOne();
    moduleOne.addRuntimeDependency( "ModuleTwo" );
    context.addModule( moduleOne );

    ModuleTwo moduleTwo = new ModuleTwo();
    moduleTwo.addRuntimeDependency( "ModuleThree" );
    context.addModule( moduleTwo );

    ModuleThree moduleThree = new ModuleThree();
    context.addModule( moduleThree );

    context.bootstrap();

    AcrossContextBeanRegistry registry = AcrossContextUtils.getBeanRegistry( context );
    List<MyBeanConfig> beans = registry.getBeansOfType( MyBeanConfig.class, true );
    assertEquals( 4, beans.size() );

    assertEquals( "ApplicationContext", beans.get( 0 ).getModule() );
    assertEquals( "ModuleThree", beans.get( 1 ).getModule() );
    assertEquals( "ModuleTwo", beans.get( 2 ).getModule() );
    assertEquals( "ModuleOne", beans.get( 3 ).getModule() );

    context.shutdown();
    applicationContext.destroy();
  }
View Full Code Here

      value = "com/foreach/across/test/TestParentProperties.properties")
  public static class Config
  {
    @Bean
    public AcrossContext acrossContext( ConfigurableApplicationContext applicationContext ) throws Exception {
      AcrossContext acrossContext = new AcrossContext( applicationContext );
      acrossContext.setInstallerAction( InstallerAction.DISABLED );

      acrossContext.addModule( directOnModule() );
      acrossContext.addModule( sourceOnModule() );
      acrossContext.addModule( onlyFromContext() );
      acrossContext.addModule( moduleFour() );

      acrossContext.addApplicationContextConfigurer( new PropertyPlaceholderSupportConfigurer(),
                                                     ConfigurerScope.CONTEXT_AND_MODULES );

      acrossContext.addPropertySources(
          new ClassPathResource( "com/foreach/across/test/TestPropertiesContext.properties" ) );

      acrossContext.setProperty( "contextDirectValue", 777 );

      return acrossContext;
    }
View Full Code Here

  @Test
  public void getModuleByName() {
    TestModule1 module = new TestModule1();
    ExposingModule other = new ExposingModule( "my module" );

    AcrossContext context = new AcrossContext();
    context.addModule( module );
    context.addModule( other );

    assertNull( context.getModule( "not present" ) );
    assertSame( module, context.getModule( module.getName() ) );
    assertSame( other, context.getModule( "my module" ) );
    assertSame( other, context.getModule( "com.foreach.across.test.modules.exposing.ExposingModule" ) );
  }
View Full Code Here

    assertSame( other, context.getModule( "com.foreach.across.test.modules.exposing.ExposingModule" ) );
  }

  @Test
  public void moduleWithTheSameNameIsNotAllowedWhenBootstrapping() {
    AcrossContext context = new AcrossContext();
    context.setInstallerAction( InstallerAction.DISABLED );

    TestModule1 module = new TestModule1();
    context.addModule( module );
    context.addModule( new TestModule2() );
    context.addModule( new ExposingModule( module.getName() ) );

    boolean failed = false;

    try {
      context.bootstrap();
    }
    catch ( RuntimeException re ) {
      failed = true;
    }
View Full Code Here

TOP

Related Classes of com.foreach.across.core.AcrossContext

Copyright © 2018 www.massapicom. All rights reserved.
All source code are property of their respective owners. Java is a trademark of Sun Microsystems, Inc and owned by ORACLE Inc. Contact coftware#gmail.com.