Project

General

Profile

1
package eu.dnetlib.msro.openaireplus.workflows.nodes.dhp;
2

    
3
import eu.dnetlib.dhp.utils.DHPUtils;
4
import eu.dnetlib.enabling.is.lookup.rmi.ISLookUpService;
5
import eu.dnetlib.enabling.locators.UniqueServiceLocator;
6
import org.apache.commons.logging.Log;
7
import org.apache.commons.logging.LogFactory;
8

    
9
import com.googlecode.sarasvati.Arc;
10
import com.googlecode.sarasvati.NodeToken;
11

    
12
import eu.dnetlib.msro.workflows.nodes.SimpleJobNode;
13
import org.springframework.beans.factory.annotation.Autowired;
14

    
15
public class PrepareEnvTransformHadoopJobNode extends SimpleJobNode {
16

    
17
    private static final Log log = LogFactory.getLog(PrepareEnvTransformHadoopJobNode.class);
18

    
19
    private String ruleId;
20

    
21
    @Autowired
22
    private UniqueServiceLocator serviceLocator;
23

    
24
    private String mdstoreInput;
25

    
26
    private String mdstoreOutput;
27

    
28
    @Override
29
    protected String execute(final NodeToken token) throws Exception {
30

    
31
        final String trRule = serviceLocator.getService(ISLookUpService.class).getResourceProfile(getRuleId());
32

    
33
        token.getEnv().setAttribute("timestamp", "" + System.currentTimeMillis());
34
        token.getEnv().setAttribute("workflowId", token.getProcess().getEnv().getAttribute("system:processId"));
35
        token.getEnv().setAttribute("mdstoreInput", getMdstoreInput());
36
        token.getEnv().setAttribute("mdstoreOutput", getMdstoreOutput());
37
        token.getEnv().setAttribute("transformationRule", DHPUtils.compressString(trRule));
38
        return Arc.DEFAULT_ARC;
39

    
40
    }
41

    
42
    public String getRuleId() {
43
        return ruleId;
44
    }
45

    
46
    public void setRuleId(String ruleId) {
47
        this.ruleId = ruleId;
48
    }
49

    
50
    public UniqueServiceLocator getServiceLocator() {
51
        return serviceLocator;
52
    }
53

    
54
    public void setServiceLocator(UniqueServiceLocator serviceLocator) {
55
        this.serviceLocator = serviceLocator;
56
    }
57

    
58
    public String getMdstoreInput() {
59
        return mdstoreInput;
60
    }
61

    
62
    public void setMdstoreInput(String mdstoreInput) {
63
        this.mdstoreInput = mdstoreInput;
64
    }
65

    
66
    public String getMdstoreOutput() {
67
        return mdstoreOutput;
68
    }
69

    
70
    public void setMdstoreOutput(String mdstoreOutput) {
71
        this.mdstoreOutput = mdstoreOutput;
72
    }
73
}
(8-8/11)