Example usage for org.springframework.data.gemfire.support SpringContextBootstrappingInitializer init

List of usage examples for org.springframework.data.gemfire.support SpringContextBootstrappingInitializer init

Introduction

In this page you can find the example usage for org.springframework.data.gemfire.support SpringContextBootstrappingInitializer init.

Prototype

@Override
    @SuppressWarnings("deprecation")
    public void init(Properties parameters) 

Source Link

Usage

From source file:org.springframework.data.gemfire.support.SpringContextBootstrappingInitializerTest.java

@Test
public void testInitWithAnnotatedClasses() {
    final AnnotationConfigApplicationContext mockApplicationContext = mock(
            AnnotationConfigApplicationContext.class, "testInitWithAnnotatedClasses");

    doNothing().when(mockApplicationContext).addApplicationListener(any(ApplicationListener.class));
    doNothing().when(mockApplicationContext).registerShutdownHook();
    doNothing().when(mockApplicationContext).refresh();
    doNothing().when(mockApplicationContext).register(Matchers.<Class<?>[]>anyVararg());
    //doNothing().when(mockApplicationContext).register(annotatedClasses(TestAppConfigOne.class, TestAppConfigTwo.class));

    when(mockApplicationContext.getId()).thenReturn("testInitWithAnnotatedClasses");
    when(mockApplicationContext.isRunning()).thenReturn(true);

    assertNull(SpringContextBootstrappingInitializer.applicationContext);

    SpringContextBootstrappingInitializer.register(TestAppConfigOne.class);
    SpringContextBootstrappingInitializer.register(TestAppConfigTwo.class);

    SpringContextBootstrappingInitializer initializer = new SpringContextBootstrappingInitializer() {
        @Override/*from   w  w w. j  a  va 2  s . co  m*/
        protected ConfigurableApplicationContext createApplicationContext(String[] configLocations) {
            return mockApplicationContext;
        }
    };

    initializer.init(createParameters("test", "test"));

    verify(mockApplicationContext, times(1)).addApplicationListener(same(initializer));
    verify(mockApplicationContext, times(1)).registerShutdownHook();
    verify(mockApplicationContext, times(1)).register(TestAppConfigOne.class, TestAppConfigTwo.class);
    //verify(mockApplicationContext, times(1)).register(annotatedClasses(TestAppConfigOne.class, TestAppConfigTwo.class));
    //verify(mockApplicationContext, times(1)).register(Matchers.<Class<?>[]>anyVararg());
    verify(mockApplicationContext, never()).scan(any(String[].class));

    assertEquals(mockApplicationContext, SpringContextBootstrappingInitializer.getApplicationContext());
}

From source file:org.springframework.data.gemfire.support.SpringContextBootstrappingInitializerTest.java

@Test
public void testInitWithExistingApplicationContext() {
    ConfigurableApplicationContext mockApplicationContext = mock(ConfigurableApplicationContext.class,
            "testInitWithExistingApplicationContext");

    when(mockApplicationContext.isActive()).thenReturn(true);
    when(mockApplicationContext.getId()).thenReturn("testInitWithExistingApplicationContext");

    SpringContextBootstrappingInitializer.applicationContext = mockApplicationContext;

    assertSame(mockApplicationContext, SpringContextBootstrappingInitializer.getApplicationContext());

    SpringContextBootstrappingInitializer initializer = new SpringContextBootstrappingInitializer();

    initializer.init(createParameters("test", "test"));

    verify(mockApplicationContext, never())
            .addApplicationListener(any(SpringContextBootstrappingInitializer.class));
    verify(mockApplicationContext, never()).registerShutdownHook();
    verify(mockApplicationContext, never()).refresh();

    assertSame(mockApplicationContext, SpringContextBootstrappingInitializer.getApplicationContext());
}

From source file:org.springframework.data.gemfire.support.SpringContextBootstrappingInitializerTest.java

@Test
public void testInitWhenApplicationContextIsNull() {
    assertNull(SpringContextBootstrappingInitializer.applicationContext);

    final ConfigurableApplicationContext mockApplicationContext = mock(ConfigurableApplicationContext.class,
            "testInitWhenApplicationContextIsNull");

    when(mockApplicationContext.getId()).thenReturn("testInitWhenApplicationContextIsNull");
    when(mockApplicationContext.isRunning()).thenReturn(true);

    SpringContextBootstrappingInitializer initializer = new SpringContextBootstrappingInitializer() {
        @Override// w w w .ja  va 2s.  c o m
        protected ConfigurableApplicationContext createApplicationContext(final String[] basePackages,
                final String[] configLocations) {
            return mockApplicationContext;
        }
    };

    initializer.init(createParameters(SpringContextBootstrappingInitializer.CONTEXT_CONFIG_LOCATIONS_PARAMETER,
            "/path/to/spring/application/context.xml"));

    verify(mockApplicationContext, times(1)).addApplicationListener(same(initializer));
    verify(mockApplicationContext, times(1)).registerShutdownHook();
    verify(mockApplicationContext, times(1)).refresh();

    assertSame(mockApplicationContext, SpringContextBootstrappingInitializer.getApplicationContext());
}

From source file:org.springframework.data.gemfire.support.SpringContextBootstrappingInitializerTest.java

@Test
public void testInitWhenApplicationContextIsInactive() {
    ConfigurableApplicationContext mockInactiveApplicationContext = mock(ConfigurableApplicationContext.class,
            "testInitWhenApplicationContextIsInactive.Inactive");

    when(mockInactiveApplicationContext.isActive()).thenReturn(false);

    SpringContextBootstrappingInitializer.applicationContext = mockInactiveApplicationContext;

    assertSame(mockInactiveApplicationContext, SpringContextBootstrappingInitializer.getApplicationContext());

    final ConfigurableApplicationContext mockNewApplicationContext = mock(ConfigurableApplicationContext.class,
            "testInitWhenApplicationContextIsInactive.New");

    when(mockNewApplicationContext.getId()).thenReturn("testInitWhenApplicationContextIsInactive.New");
    when(mockNewApplicationContext.isRunning()).thenReturn(true);

    SpringContextBootstrappingInitializer initializer = new SpringContextBootstrappingInitializer() {
        @Override/* w w w .jav  a 2  s  . co  m*/
        protected ConfigurableApplicationContext createApplicationContext(final String[] basePackages,
                final String[] configLocations) {
            return mockNewApplicationContext;
        }
    };

    initializer.init(
            createParameters(SpringContextBootstrappingInitializer.BASE_PACKAGES_PARAMETER, "org.example.app"));

    verify(mockNewApplicationContext, times(1)).addApplicationListener(same(initializer));
    verify(mockNewApplicationContext, times(1)).registerShutdownHook();
    verify(mockNewApplicationContext, times(1)).refresh();

    assertSame(mockNewApplicationContext, SpringContextBootstrappingInitializer.getApplicationContext());
}

From source file:org.springframework.data.gemfire.support.SpringContextBootstrappingInitializerTest.java

@Test(expected = IllegalStateException.class)
public void testInitWhenApplicationContextIsNotRunning() {
    assertNull(SpringContextBootstrappingInitializer.applicationContext);

    final ConfigurableApplicationContext mockApplicationContext = mock(ConfigurableApplicationContext.class,
            "testInitWhenApplicationContextIsNotRunning");

    when(mockApplicationContext.getId()).thenReturn("testInitWhenApplicationContextIsNotRunning");
    when(mockApplicationContext.isRunning()).thenReturn(false);

    SpringContextBootstrappingInitializer initializer = new SpringContextBootstrappingInitializer() {
        @Override/*w  w w .  j  av a  2  s. co m*/
        protected ConfigurableApplicationContext createApplicationContext(final String[] basePackages,
                final String[] configLocations) {
            return mockApplicationContext;
        }
    };

    try {
        initializer.init(createParameters(SpringContextBootstrappingInitializer.BASE_PACKAGES_PARAMETER,
                "org.example.app, org.example.plugins"));

        SpringContextBootstrappingInitializer.getApplicationContext();
    } catch (ApplicationContextException expected) {
        assertTrue(expected.getMessage().contains("Failed to bootstrap the Spring ApplicationContext!"));
        assertTrue(expected.getCause() instanceof IllegalStateException);
        assertEquals(
                "The Spring ApplicationContext (testInitWhenApplicationContextIsNotRunning) failed to be properly initialized with the context config files ([]) or base packages ([org.example.app, org.example.plugins])!",
                expected.getCause().getMessage());
        throw (IllegalStateException) expected.getCause();
    } finally {
        verify(mockApplicationContext, times(1)).addApplicationListener(same(initializer));
        verify(mockApplicationContext, times(1)).registerShutdownHook();
        verify(mockApplicationContext, times(1)).refresh();

        assertNull(SpringContextBootstrappingInitializer.applicationContext);
    }
}

From source file:org.springframework.data.gemfire.support.SpringContextBootstrappingInitializerTest.java

@Test(expected = IllegalStateException.class)
public void testInitLogsErrors() throws Throwable {
    final Log mockLog = mock(Log.class, "testInitLogsErrors.MockLog");

    SpringContextBootstrappingInitializer initializer = new SpringContextBootstrappingInitializer() {
        @Override/* www  .  java2  s  .  c  o m*/
        protected Log initLogger() {
            return mockLog;
        }

        @Override
        protected ConfigurableApplicationContext createApplicationContext(final String[] basePackages,
                final String[] configLocations) {
            throw new IllegalStateException("TEST");
        }
    };

    try {
        initializer
                .init(createParameters(SpringContextBootstrappingInitializer.CONTEXT_CONFIG_LOCATIONS_PARAMETER,
                        "classpath/to/spring/application/context.xml"));
    } catch (ApplicationContextException expected) {
        assertTrue(expected.getMessage().contains("Failed to bootstrap the Spring ApplicationContext!"));
        assertTrue(expected.getCause() instanceof IllegalStateException);
        assertEquals("TEST", expected.getCause().getMessage());
        throw expected.getCause();
    } finally {
        verify(mockLog, times(1)).error(eq("Failed to bootstrap the Spring ApplicationContext!"),
                any(RuntimeException.class));
    }
}