use of org.hibernate.resource.beans.container.spi.BeanContainer in project spring-framework by spring-projects.
the class HibernateNativeEntityManagerFactorySpringBeanContainerIntegrationTests method testCanRetrieveFallbackBeanByTypeWithNativeOptions.
@Test
public void testCanRetrieveFallbackBeanByTypeWithNativeOptions() {
BeanContainer beanContainer = getBeanContainer();
assertThat(beanContainer).isNotNull();
NoDefinitionInSpringContextTestBeanInstanceProducer fallbackProducer = new NoDefinitionInSpringContextTestBeanInstanceProducer();
ContainedBean<NoDefinitionInSpringContextTestBean> bean = beanContainer.getBean(NoDefinitionInSpringContextTestBean.class, NativeLifecycleOptions.INSTANCE, fallbackProducer);
assertThat(fallbackProducer.currentUnnamedInstantiationCount()).isEqualTo(1);
assertThat(fallbackProducer.currentNamedInstantiationCount()).isEqualTo(0);
assertThat(bean).isNotNull();
NoDefinitionInSpringContextTestBean instance = bean.getBeanInstance();
assertThat(instance).isNotNull();
assertThat(instance.getSource()).isEqualTo(BeanSource.FALLBACK);
assertThat(instance.getApplicationContext()).isNull();
}
use of org.hibernate.resource.beans.container.spi.BeanContainer in project spring-framework by spring-projects.
the class HibernateNativeEntityManagerFactorySpringBeanContainerIntegrationTests method testCanRetrieveBeanByTypeWithNativeOptions.
@Test
public void testCanRetrieveBeanByTypeWithNativeOptions() {
BeanContainer beanContainer = getBeanContainer();
assertThat(beanContainer).isNotNull();
ContainedBean<SinglePrototypeInSpringContextTestBean> bean = beanContainer.getBean(SinglePrototypeInSpringContextTestBean.class, NativeLifecycleOptions.INSTANCE, IneffectiveBeanInstanceProducer.INSTANCE);
assertThat(bean).isNotNull();
SinglePrototypeInSpringContextTestBean instance = bean.getBeanInstance();
assertThat(instance).isNotNull();
assertThat(instance.getName()).isEqualTo("single");
assertThat(instance.getApplicationContext()).isSameAs(applicationContext);
ContainedBean<SinglePrototypeInSpringContextTestBean> bean2 = beanContainer.getBean(SinglePrototypeInSpringContextTestBean.class, NativeLifecycleOptions.INSTANCE, IneffectiveBeanInstanceProducer.INSTANCE);
assertThat(bean2).isNotNull();
SinglePrototypeInSpringContextTestBean instance2 = bean2.getBeanInstance();
assertThat(instance2).isNotNull();
// Due to the lifecycle options, and because the bean has the "prototype" scope, we should not return the same instance
assertThat(instance2).isNotSameAs(instance);
}
use of org.hibernate.resource.beans.container.spi.BeanContainer in project spring-framework by spring-projects.
the class HibernateNativeEntityManagerFactorySpringBeanContainerIntegrationTests method testCanRetrieveFallbackBeanByNameWithJpaCompliantOptions.
@Test
public void testCanRetrieveFallbackBeanByNameWithJpaCompliantOptions() {
BeanContainer beanContainer = getBeanContainer();
assertThat(beanContainer).isNotNull();
NoDefinitionInSpringContextTestBeanInstanceProducer fallbackProducer = new NoDefinitionInSpringContextTestBeanInstanceProducer();
ContainedBean<NoDefinitionInSpringContextTestBean> bean = beanContainer.getBean("some name", NoDefinitionInSpringContextTestBean.class, JpaLifecycleOptions.INSTANCE, fallbackProducer);
assertThat(fallbackProducer.currentUnnamedInstantiationCount()).isEqualTo(0);
assertThat(fallbackProducer.currentNamedInstantiationCount()).isEqualTo(1);
assertThat(bean).isNotNull();
NoDefinitionInSpringContextTestBean instance = bean.getBeanInstance();
assertThat(instance).isNotNull();
assertThat(instance.getSource()).isEqualTo(BeanSource.FALLBACK);
assertThat(instance.getName()).isEqualTo("some name");
assertThat(instance.getApplicationContext()).isNull();
}
use of org.hibernate.resource.beans.container.spi.BeanContainer in project spring-framework by spring-projects.
the class HibernateNativeEntityManagerFactorySpringBeanContainerIntegrationTests method testCanRetrieveFallbackBeanByNameWithNativeOptions.
@Test
public void testCanRetrieveFallbackBeanByNameWithNativeOptions() {
BeanContainer beanContainer = getBeanContainer();
assertThat(beanContainer).isNotNull();
NoDefinitionInSpringContextTestBeanInstanceProducer fallbackProducer = new NoDefinitionInSpringContextTestBeanInstanceProducer();
ContainedBean<NoDefinitionInSpringContextTestBean> bean = beanContainer.getBean("some name", NoDefinitionInSpringContextTestBean.class, NativeLifecycleOptions.INSTANCE, fallbackProducer);
assertThat(fallbackProducer.currentUnnamedInstantiationCount()).isEqualTo(0);
assertThat(fallbackProducer.currentNamedInstantiationCount()).isEqualTo(1);
assertThat(bean).isNotNull();
NoDefinitionInSpringContextTestBean instance = bean.getBeanInstance();
assertThat(instance).isNotNull();
assertThat(instance.getSource()).isEqualTo(BeanSource.FALLBACK);
assertThat(instance.getName()).isEqualTo("some name");
assertThat(instance.getApplicationContext()).isNull();
}
use of org.hibernate.resource.beans.container.spi.BeanContainer in project spring-framework by spring-projects.
the class HibernateNativeEntityManagerFactorySpringBeanContainerIntegrationTests method testCanRetrieveBeanByTypeWithJpaCompliantOptions.
@Test
public void testCanRetrieveBeanByTypeWithJpaCompliantOptions() {
BeanContainer beanContainer = getBeanContainer();
assertThat(beanContainer).isNotNull();
ContainedBean<SinglePrototypeInSpringContextTestBean> bean = beanContainer.getBean(SinglePrototypeInSpringContextTestBean.class, JpaLifecycleOptions.INSTANCE, IneffectiveBeanInstanceProducer.INSTANCE);
assertThat(bean).isNotNull();
SinglePrototypeInSpringContextTestBean instance = bean.getBeanInstance();
assertThat(instance).isNotNull();
assertThat(instance.getApplicationContext()).isSameAs(applicationContext);
}
Aggregations