Project

General

Profile

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

    
3
import java.io.IOException;
4
import javax.annotation.Resource;
5

    
6
import com.googlecode.sarasvati.Arc;
7
import com.googlecode.sarasvati.NodeToken;
8
import eu.dnetlib.enabling.is.lookup.rmi.ISLookUpException;
9
import eu.dnetlib.enabling.locators.UniqueServiceLocator;
10
import eu.dnetlib.monitoring.core.sensors.SensorCreationException;
11
import eu.dnetlib.monitoring.core.sensors.SensorFactory;
12
import eu.dnetlib.monitoring.core.sensors.collection.index.solr.SolrSensor;
13
import eu.dnetlib.msro.workflows.nodes.SimpleJobNode;
14
import org.apache.commons.logging.Log;
15
import org.apache.commons.logging.LogFactory;
16

    
17
public class TriggerIndexMonitoringScenarioJobNode extends SimpleJobNode {
18

    
19
	private static final Log log = LogFactory.getLog(TriggerIndexMonitoringScenarioJobNode.class);
20
	private static final String SOLR_COLLECTION_POSTFIX = "-index-openaire";
21

    
22
	@Resource
23
	private UniqueServiceLocator serviceLocator;
24
	private String mdFormat;
25
	private SolrSensor solrSensor;
26

    
27
	@Override
28
	protected String execute(final NodeToken token) throws IOException, InstantiationException, IllegalAccessException, InterruptedException,
29
			ISLookUpException, SensorCreationException {
30

    
31
		/* Configuring SOLR sensor */
32
		String actualCollection = mdFormat + SOLR_COLLECTION_POSTFIX;
33
		log.info("Executing on " + actualCollection + " SOLR collection");
34
		solrSensor = (SolrSensor) SensorFactory.createSensorWithConfiguration(SolrSensor.class, "index", "solr2");
35
		solrSensor.getConfiguration().setParam("collection", actualCollection);
36
		solrSensor.reinitialize();
37
		log.info("Measuring...");
38
		solrSensor.measure();
39
		log.info("DONE!");
40
		return Arc.DEFAULT_ARC;
41
	}
42

    
43
	public String getMdFormat() {
44
		return mdFormat;
45
	}
46

    
47
	public void setMdFormat(final String mdFormat) {
48
		this.mdFormat = mdFormat;
49
	}
50

    
51
}
(1-1/2)