]> git.argeo.org Git - gpl/argeo-slc.git/blob - runtime/org.argeo.slc.support.simple/src/main/java/org/argeo/slc/core/execution/InstantiationPostProcessor.java
Remove eclipse project definitions
[gpl/argeo-slc.git] / runtime / org.argeo.slc.support.simple / src / main / java / org / argeo / slc / core / execution / InstantiationPostProcessor.java
1 package org.argeo.slc.core.execution;
2
3 import org.apache.commons.logging.Log;
4 import org.apache.commons.logging.LogFactory;
5 import org.argeo.slc.execution.ExecutionFlow;
6 import org.springframework.beans.BeansException;
7 import org.springframework.beans.factory.config.InstantiationAwareBeanPostProcessorAdapter;
8
9 public class InstantiationPostProcessor extends
10 InstantiationAwareBeanPostProcessorAdapter {
11 private final static Log log = LogFactory
12 .getLog(InstantiationPostProcessor.class);
13
14 private InstantiationManager instantiationManager;
15
16 public InstantiationManager getInstantiationManager() {
17 return instantiationManager;
18 }
19
20 public void setInstantiationManager(InstantiationManager instantiationManager) {
21 this.instantiationManager = instantiationManager;
22 }
23
24 @Override
25 public boolean postProcessAfterInstantiation(Object bean, String beanName)
26 throws BeansException {
27 if (bean instanceof ExecutionFlow)
28 instantiationManager
29 .flowInitializationStarted((ExecutionFlow) bean, beanName);
30 return true;
31 }
32
33 @Override
34 public Object postProcessBeforeInitialization(Object bean, String beanName)
35 throws BeansException {
36 return bean;
37 }
38
39 @Override
40 public Object postProcessAfterInitialization(Object bean, String beanName)
41 throws BeansException {
42 if (bean instanceof ExecutionFlow)
43 instantiationManager
44 .flowInitializationFinished((ExecutionFlow) bean, beanName);
45 return bean;
46 }
47
48 }