@Test public void testAfterInitializationWithCorrectType() throws Exception { MapJobRegistry registry = new MapJobRegistry(); processor.setJobRegistry(registry); JobSupport job = new JobSupport(); job.setBeanName("foo"); assertNotNull(processor.postProcessAfterInitialization(job, "bar")); assertEquals("[foo]", registry.getJobNames().toString()); }
@Test public void testUnregisterOnDestroy() throws Exception { MapJobRegistry registry = new MapJobRegistry(); processor.setJobRegistry(registry); JobSupport job = new JobSupport(); job.setBeanName("foo"); assertNotNull(processor.postProcessAfterInitialization(job, "bar")); processor.destroy(); assertEquals("[]", registry.getJobNames().toString()); }
@Test public void testAfterInitializationWithGroupName() throws Exception { MapJobRegistry registry = new MapJobRegistry(); processor.setJobRegistry(registry); processor.setGroupName("jobs"); JobSupport job = new JobSupport(); job.setBeanName("foo"); assertNotNull(processor.postProcessAfterInitialization(job, "bar")); assertEquals("[jobs.foo]", registry.getJobNames().toString()); }
@Test public void testAfterInitializationWithDuplicate() throws Exception { MapJobRegistry registry = new MapJobRegistry(); processor.setJobRegistry(registry); JobSupport job = new JobSupport(); job.setBeanName("foo"); processor.postProcessAfterInitialization(job, "bar"); try { processor.postProcessAfterInitialization(job, "spam"); fail("Expected FatalBeanException"); } catch (FatalBeanException e) { // Expected assertTrue(e.getCause() instanceof DuplicateJobException); } }
@Bean public JobRegistryBeanPostProcessor jobRegistrar() throws Exception { JobRegistryBeanPostProcessor registrar = new JobRegistryBeanPostProcessor(); registrar.setJobRegistry(this.jobRegistry); registrar.setBeanFactory(this.applicationContext.getAutowireCapableBeanFactory()); registrar.afterPropertiesSet(); return registrar; }
@Bean public JobRegistryBeanPostProcessor jobRegistrar() throws Exception { JobRegistryBeanPostProcessor registrar = new JobRegistryBeanPostProcessor(); registrar.setJobRegistry(this.jobRegistry); registrar.setBeanFactory(this.applicationContext.getAutowireCapableBeanFactory()); registrar.afterPropertiesSet(); return registrar; }
@Bean public JobRegistryBeanPostProcessor jobRegistrar() throws Exception { JobRegistryBeanPostProcessor registrar = new JobRegistryBeanPostProcessor(); registrar.setJobRegistry(this.jobRegistry); registrar.setBeanFactory(this.applicationContext.getAutowireCapableBeanFactory()); registrar.afterPropertiesSet(); return registrar; }
@Override public void postProcessBeanFactory( ConfigurableListableBeanFactory beanFactory ) throws BeansException { JobRegistryBeanPostProcessor jobRegistrar = new JobRegistryBeanPostProcessor(); jobRegistrar.setGroupName( moduleBeforeBootstrapEvent.getModule().getName() ); jobRegistrar.setJobRegistry( jobRegistry ); beanFactory.addBeanPostProcessor( jobRegistrar ); } }