public final <T> BeanLifeCycle<T> get(Class<T> type) { final B a = resolveBean(type); if (a == null) { return null; } else { return new BeanLifeCycleImpl<B, C,T>(type, this, a); } }
public final <T> BeanLifeCycle<T> get(Class<T> type) { final B a = resolveBean(type); if (a == null) { return null; } else { return new BeanLifeCycleImpl<B, C,T>(type, this, a); } }
private <B, I> Object resolveBean(InjectionContext<B, I> manager, String name) throws InvocationTargetException { B bean = manager.resolveBean(name); if (bean != null) { I cc = manager.createContext(bean); return manager.getInstance(bean, cc); } else { return null; } } }
private <B, I> Object resolveBean(InjectionContext<B, I> manager, String name) throws InvocationTargetException { B bean = manager.resolveBean(name); if (bean != null) { I cc = manager.createContext(bean); return manager.getInstance(bean, cc); } else { return null; } } }
protected static <B, I, T> T getBean(InjectionContext<B, I> context, Class<T> beanType) throws Exception { B bean = context.resolveBean(beanType); assertNotNull("Could not resolve bean of type " + beanType, bean); I beanInstance = context.createContext(bean); assertNotNull("Could not create bean instance of type " + beanType + " from bean " + bean, beanInstance); Object o = context.getInstance(bean, beanInstance); assertNotNull("Could not obtain bean object from bean instance " + beanInstance + " of type " + beanType, o); return beanType.cast(o); }
protected static <B, I, T> T getBean(InjectionContext<B, I> context, Class<T> beanType) throws Exception { B bean = context.resolveBean(beanType); assertNotNull("Could not resolve bean of type " + beanType, bean); I beanInstance = context.createContext(bean); assertNotNull("Could not create bean instance of type " + beanType + " from bean " + bean, beanInstance); Object o = context.getInstance(bean, beanInstance); assertNotNull("Could not obtain bean object from bean instance " + beanInstance + " of type " + beanType, o); return beanType.cast(o); }
protected final Object getBean(String beanName) throws Exception { B bean = mgr.resolveBean(beanName); assertNotNull("Could not find bean " + beanName, bean); I beanInstance = mgr.createContext(bean); assertNotNull(beanInstance); return mgr.getInstance(bean, beanInstance); }
protected final Object getBean(String beanName) throws Exception { B bean = mgr.resolveBean(beanName); assertNotNull("Could not find bean " + beanName, bean); I beanInstance = mgr.createContext(bean); assertNotNull(beanInstance); return mgr.getInstance(bean, beanInstance); }
@Test public void test() throws Exception { init(); bootstrap.declareBean(Injected.class, null, null, null); bootstrap.declareBean(Bean.class, null, null, Bean.Foo.class); bootstrap.declareBean(Bean.class, null, null, Bean.Bar.class); boot(); // Injected beanObject = getBean(Injected.class); assertNotNull(beanObject); assertNotNull(beanObject.getFoo()); assertEquals(Bean.Foo.class, beanObject.getFoo().getClass()); assertNotNull(beanObject.getBar()); assertEquals(Bean.Bar.class, beanObject.getBar().getClass()); // Object foo = getBean("foo"); assertNotNull(foo); // assertNull(mgr.resolveBean("juu")); } }
@Test public void test() throws Exception { init(); bootstrap.declareBean(Injected.class, null, null, null); bootstrap.declareBean(Bean.class, null, null, Bean.Foo.class); bootstrap.declareBean(Bean.class, null, null, Bean.Bar.class); boot(); // Injected beanObject = getBean(Injected.class); assertNotNull(beanObject); assertNotNull(beanObject.getFoo()); assertEquals(Bean.Foo.class, beanObject.getFoo().getClass()); assertNotNull(beanObject.getBar()); assertEquals(Bean.Bar.class, beanObject.getBar().getClass()); // Object foo = getBean("foo"); assertNotNull(foo); // assertNull(mgr.resolveBean("juu")); } }
@Test public void test() throws Exception { init(); bootstrap.declareBean(Bean.class, null, null, null); boot(); // Bean.construct = 0; Bean.destroy = 0; // beginScoping(); try { B bean = mgr.resolveBean(Bean.class); I instance = mgr.createContext(bean); Bean o = (Bean)mgr.getInstance(bean, instance); assertEquals(1, Bean.construct); assertEquals(0, Bean.destroy); mgr.releaseContext(bean, instance); assertEquals(1, Bean.construct); assertEquals(1, Bean.destroy); } finally { endScoping(); } assertEquals(1, Bean.construct); assertEquals(1, Bean.destroy); } }
@Test public void test() throws Exception { init(); bootstrap.declareBean(Bean.class, null, null, null); boot(); // Bean.construct = 0; Bean.destroy = 0; // beginScoping(); try { B bean = mgr.resolveBean(Bean.class); I instance = mgr.createContext(bean); Bean o = (Bean)mgr.getInstance(bean, instance); assertEquals(1, Bean.construct); assertEquals(0, Bean.destroy); mgr.releaseContext(bean, instance); assertEquals(1, Bean.construct); assertEquals(1, Bean.destroy); } finally { endScoping(); } assertEquals(1, Bean.construct); assertEquals(1, Bean.destroy); } }
B bean = mgr.resolveBean(Bean.class); I instance = mgr.createContext(bean); Bean o = (Bean)mgr.getInstance(bean, instance);
B bean = mgr.resolveBean(Bean.class); I instance = mgr.createContext(bean); Bean o = (Bean)mgr.getInstance(bean, instance);
@Test public void test() throws Exception { init(); bootstrap.declareBean(Injected.class, null, null, null); bootstrap.declareProvider(Bean.class, null, null, FooBeanProvider.class); bootstrap.declareProvider(Bean.class, null, null, BarBeanProvider.class); boot(); // Injected beanObject = getBean(Injected.class); assertNotNull(beanObject); assertNotNull(beanObject.getFoo()); assertEquals(Bean.FOO, beanObject.getFoo()); assertNotNull(beanObject.getBar()); assertEquals(Bean.BAR, beanObject.getBar()); // Object foo = getBean("foo"); assertNotNull(foo); // assertNull(mgr.resolveBean("juu")); } }
@Test public void test() throws Exception { init(); bootstrap.declareBean(Injected.class, null, null, null); bootstrap.declareProvider(Bean.class, null, null, FooBeanProvider.class); bootstrap.declareProvider(Bean.class, null, null, BarBeanProvider.class); boot(); // Injected beanObject = getBean(Injected.class); assertNotNull(beanObject); assertNotNull(beanObject.getFoo()); assertEquals(Bean.FOO, beanObject.getFoo()); assertNotNull(beanObject.getBar()); assertEquals(Bean.BAR, beanObject.getBar()); // Object foo = getBean("foo"); assertNotNull(foo); // assertNull(mgr.resolveBean("juu")); } }
B bean = mgr.resolveBean(Bean.class); I instance = mgr.createContext(bean); Bean o = (Bean)mgr.getInstance(bean, instance);
B bean = mgr.resolveBean(Bean.class); I instance = mgr.createContext(bean); Bean o = (Bean)mgr.getInstance(bean, instance);