Project

General

Profile

« Previous | Next » 

Revision 40094

partial reimplementation of the wf engine

View differences:

UpdateDbJobNode.java
1 1
package eu.dnetlib.msro.workflows.nodes.db;
2 2

  
3
import com.googlecode.sarasvati.NodeToken;
4 3
import eu.dnetlib.enabling.database.rmi.DatabaseService;
5 4
import eu.dnetlib.enabling.tools.blackboard.BlackboardJob;
5
import eu.dnetlib.msro.workflows.graph.Env;
6
import eu.dnetlib.msro.workflows.graph.Process;
7
import eu.dnetlib.msro.workflows.graph.ProcessAware;
6 8
import eu.dnetlib.msro.workflows.nodes.BlackboardJobNode;
7 9
import eu.dnetlib.msro.workflows.nodes.ProgressJobNode;
8
import eu.dnetlib.msro.workflows.procs.WorkflowProcess;
9 10
import eu.dnetlib.msro.workflows.resultset.ProcessCountingResultSetFactory;
10 11
import eu.dnetlib.msro.workflows.util.ProgressProvider;
11 12
import eu.dnetlib.msro.workflows.util.ResultsetProgressProvider;
......
13 14
import org.apache.commons.logging.LogFactory;
14 15
import org.springframework.beans.factory.annotation.Required;
15 16

  
16
public class UpdateDbJobNode extends BlackboardJobNode implements ProgressJobNode {
17
public class UpdateDbJobNode extends BlackboardJobNode implements ProgressJobNode, ProcessAware {
17 18

  
18 19
	private static final Log log = LogFactory.getLog(UpdateDbJobNode.class);
19 20
	private String db;
......
21 22
	private String eprParam;
22 23
	private ProcessCountingResultSetFactory processCountingResultSetFactory;
23 24
	private ResultsetProgressProvider progressProvider;
25
	private Process process;
24 26

  
25 27
	@Override
26
	protected String obtainServiceId(final NodeToken token) {
28
	protected String obtainServiceId(final Env env) {
27 29
		return getServiceLocator().getServiceId(DatabaseService.class);
28 30
	}
29 31

  
30 32
	@Override
31
	protected void prepareJob(final BlackboardJob job, final NodeToken token) throws Exception {
33
	protected void prepareJob(final BlackboardJob job, final Env env) throws Exception {
32 34
		if (db == null || db.isEmpty()) {
33
			db = token.getEnv().getAttribute(getDbParam());
35
			db = env.getAttribute(getDbParam(), String.class);
34 36
		}
35 37

  
36 38
		log.info("preparing blackboard job to update DB: " + db);
37 39

  
38
		final String epr = token.getEnv().getAttribute(getEprParam());
40
		final String epr = env.getAttribute(getEprParam(), String.class);
39 41

  
40
		this.progressProvider = processCountingResultSetFactory.createProgressProvider((WorkflowProcess) token.getProcess(), epr);
42
		this.progressProvider = processCountingResultSetFactory.createProgressProvider(process, epr);
41 43

  
42 44
		job.setAction("IMPORT");
43 45
		job.getParameters().put("db", db);
......
82 84
		this.dbParam = dbParam;
83 85
	}
84 86

  
87
	@Override
88
	public void setProcess(final Process process) {
89
		this.process = process;
90
	}
85 91
}

Also available in: Unified diff