Project

General

Profile

1
package eu.dnetlib.msro.workflows.nodes.transform;
2

    
3
import eu.dnetlib.enabling.locators.UniqueServiceLocator;
4
import eu.dnetlib.msro.workflows.graph.Arc;
5
import eu.dnetlib.msro.workflows.nodes.SimpleJobNode;
6
import eu.dnetlib.msro.workflows.procs.Env;
7
import eu.dnetlib.rmi.common.ResultSet;
8
import eu.dnetlib.rmi.data.CleanerService;
9
import org.springframework.beans.factory.annotation.Autowired;
10

    
11
public class CleanJobNode extends SimpleJobNode {
12

    
13
	private String inputEprParam;
14
	private String outputEprParam;
15
	private String ruleId;
16

    
17
	@Autowired
18
	private UniqueServiceLocator serviceLocator;
19

    
20
	@Override
21
	protected String execute(final Env env) throws Exception {
22

    
23
		@SuppressWarnings("unchecked")
24
		final ResultSet<String> rsIn = env.getAttribute(this.inputEprParam, ResultSet.class);
25
		final ResultSet<String> rsOut =
26
				this.ruleId == null || this.ruleId.isEmpty() ? rsIn : this.serviceLocator.getService(CleanerService.class).clean(rsIn, this.ruleId);
27

    
28
		env.setAttribute(this.outputEprParam, rsOut);
29

    
30
		return Arc.DEFAULT_ARC;
31
	}
32

    
33
	public String getInputEprParam() {
34
		return this.inputEprParam;
35
	}
36

    
37
	public void setInputEprParam(final String inputEprParam) {
38
		this.inputEprParam = inputEprParam;
39
	}
40

    
41
	public String getOutputEprParam() {
42
		return this.outputEprParam;
43
	}
44

    
45
	public void setOutputEprParam(final String outputEprParam) {
46
		this.outputEprParam = outputEprParam;
47
	}
48

    
49
	public String getRuleId() {
50
		return this.ruleId;
51
	}
52

    
53
	public void setRuleId(final String ruleId) {
54
		this.ruleId = ruleId;
55
	}
56

    
57
}
(2-2/6)