Package org.springframework.beans.factory.support

Examples of org.springframework.beans.factory.support.DefaultSingletonBeanRegistry


* @since 04.07.2006
*/
public class SharedBeanRegistryTests extends TestCase {

  public void testSingletons() {
    DefaultSingletonBeanRegistry beanRegistry = new DefaultSingletonBeanRegistry();

    TestBean tb = new TestBean();
    beanRegistry.registerSingleton("tb", tb);
    assertSame(tb, beanRegistry.getSingleton("tb"));

    TestBean tb2 = (TestBean) beanRegistry.getSingleton("tb2", new ObjectFactory() {
      public Object getObject() throws BeansException {
        return new TestBean();
      }
    });
    assertSame(tb2, beanRegistry.getSingleton("tb2"));

    assertSame(tb, beanRegistry.getSingleton("tb"));
    assertSame(tb2, beanRegistry.getSingleton("tb2"));
    assertEquals(2, beanRegistry.getSingletonCount());
    assertEquals(2, beanRegistry.getSingletonNames().length);
    assertTrue(Arrays.asList(beanRegistry.getSingletonNames()).contains("tb"));
    assertTrue(Arrays.asList(beanRegistry.getSingletonNames()).contains("tb2"));

    beanRegistry.destroySingletons();
    assertEquals(0, beanRegistry.getSingletonCount());
    assertEquals(0, beanRegistry.getSingletonNames().length);
  }
View Full Code Here


    assertEquals(0, beanRegistry.getSingletonCount());
    assertEquals(0, beanRegistry.getSingletonNames().length);
  }

  public void testDisposableBean() {
    DefaultSingletonBeanRegistry beanRegistry = new DefaultSingletonBeanRegistry();

    DerivedTestBean tb = new DerivedTestBean();
    beanRegistry.registerSingleton("tb", tb);
    beanRegistry.registerDisposableBean("tb", tb);
    assertSame(tb, beanRegistry.getSingleton("tb"));

    assertSame(tb, beanRegistry.getSingleton("tb"));
    assertEquals(1, beanRegistry.getSingletonCount());
    assertEquals(1, beanRegistry.getSingletonNames().length);
    assertTrue(Arrays.asList(beanRegistry.getSingletonNames()).contains("tb"));
    assertFalse(tb.wasDestroyed());

    beanRegistry.destroySingletons();
    assertEquals(0, beanRegistry.getSingletonCount());
    assertEquals(0, beanRegistry.getSingletonNames().length);
    assertTrue(tb.wasDestroyed());
  }
View Full Code Here

                        "Autowire capabale bean factory %1$s is not instanceof %2$s",
                        factory.getClass().getName(),
                         DefaultSingletonBeanRegistry.class.getName()));
            }
           
            DefaultSingletonBeanRegistry registry = (DefaultSingletonBeanRegistry) factory;           
            // Register singleton
            registry.registerSingleton(beanName, bean);           
            // Register as disposable bean
            if (bean instanceof DisposableBean) {
                registry.registerDisposableBean(beanName, (DisposableBean) bean);
            }       
    }
View Full Code Here

*/
public class DefaultSingletonBeanRegistryTests {

  @Test
  public void testSingletons() {
    DefaultSingletonBeanRegistry beanRegistry = new DefaultSingletonBeanRegistry();

    TestBean tb = new TestBean();
    beanRegistry.registerSingleton("tb", tb);
    assertSame(tb, beanRegistry.getSingleton("tb"));

    TestBean tb2 = (TestBean) beanRegistry.getSingleton("tb2", new ObjectFactory<Object>() {
      @Override
      public Object getObject() throws BeansException {
        return new TestBean();
      }
    });
    assertSame(tb2, beanRegistry.getSingleton("tb2"));

    assertSame(tb, beanRegistry.getSingleton("tb"));
    assertSame(tb2, beanRegistry.getSingleton("tb2"));
    assertEquals(2, beanRegistry.getSingletonCount());
    String[] names = beanRegistry.getSingletonNames();
    assertEquals(2, names.length);
    assertEquals("tb", names[0]);
    assertEquals("tb2", names[1]);

    beanRegistry.destroySingletons();
    assertEquals(0, beanRegistry.getSingletonCount());
    assertEquals(0, beanRegistry.getSingletonNames().length);
  }
View Full Code Here

    assertEquals(0, beanRegistry.getSingletonNames().length);
  }

  @Test
  public void testDisposableBean() {
    DefaultSingletonBeanRegistry beanRegistry = new DefaultSingletonBeanRegistry();

    DerivedTestBean tb = new DerivedTestBean();
    beanRegistry.registerSingleton("tb", tb);
    beanRegistry.registerDisposableBean("tb", tb);
    assertSame(tb, beanRegistry.getSingleton("tb"));

    assertSame(tb, beanRegistry.getSingleton("tb"));
    assertEquals(1, beanRegistry.getSingletonCount());
    String[] names = beanRegistry.getSingletonNames();
    assertEquals(1, names.length);
    assertEquals("tb", names[0]);
    assertFalse(tb.wasDestroyed());

    beanRegistry.destroySingletons();
    assertEquals(0, beanRegistry.getSingletonCount());
    assertEquals(0, beanRegistry.getSingletonNames().length);
    assertTrue(tb.wasDestroyed());
  }
View Full Code Here

TOP

Related Classes of org.springframework.beans.factory.support.DefaultSingletonBeanRegistry

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.