Project

General

Profile

1 26600 sandro.lab
package eu.dnetlib.msro.workflows.metawf;
2
3
import org.springframework.context.ApplicationContext;
4
import org.springframework.context.ApplicationContextAware;
5
6
public class DatasourceMetaWorkflowFactory implements ApplicationContextAware {
7
8
	private transient ApplicationContext applicationContext;
9
10
	public DatasourceMetaWorkflow newMetaWorkflow(final String beanName) {
11
		final DatasourceMetaWorkflow prototypeMetaWf = (DatasourceMetaWorkflow) applicationContext.getBean(beanName, DatasourceMetaWorkflow.class);
12
13
		if (prototypeMetaWf != null) {
14
			return prototypeMetaWf;
15
		} else {
16
			throw new IllegalArgumentException("cannot find bean " + beanName);
17
		}
18
	}
19
20
	@Override
21
	public void setApplicationContext(final ApplicationContext context) {
22
		this.applicationContext = context;
23
	}
24
25
}