Project

General

Profile

« Previous | Next » 

Revision 54269

merged from trunk -r53774:HEAD

View differences:

modules/dnet-openaireplus-workflows/branches/solr75/src/main/resources/eu/dnetlib/test/profiles/openaireplus/workflows/hbase/importCrossref.xml
1
<RESOURCE_PROFILE>
2
	<HEADER>
3
		<RESOURCE_IDENTIFIER value="e03f256e-1e4d-4b3d-9c07-91faf5d25208_V29ya2Zsb3dEU1Jlc291cmNlcy9Xb3JrZmxvd0RTUmVzb3VyY2VUeXBl"/>
4
		<RESOURCE_TYPE value="WorkflowDSResourceType"/>
5
		<RESOURCE_KIND value="WorkflowDSResources"/>
6
		<RESOURCE_URI value=""/>
7
		<DATE_OF_CREATION value="2018-08-06T16:19:33+00:00"/>
8
	</HEADER>
9
	<BODY>
10
		<WORKFLOW_NAME>Import CrossRef+ dump</WORKFLOW_NAME>
11
		<WORKFLOW_TYPE>Import InfoSpace</WORKFLOW_TYPE>
12
		<WORKFLOW_PRIORITY>30</WORKFLOW_PRIORITY>
13
		<CONFIGURATION start="manual">
14
			<NODE isStart="true" name="setInputPath" type="SetHdfsFile">
15
				<DESCRIPTION>set the hdfs output path</DESCRIPTION>
16
				<PARAMETERS>
17
					<PARAM managedBy="user" name="hdfsPath" required="true" type="string">/usr/dnet/data/crossref</PARAM>
18
					<PARAM managedBy="system" name="hdfsPathParam" required="true" type="string">inputPath</PARAM>
19
				</PARAMETERS>
20
				<ARCS>
21
					<ARC to="prepareActionSets"/>
22
				</ARCS>
23
			</NODE>
24
			<NODE name="prepareActionSets" type="PrepareActionSets">
25
				<DESCRIPTION>prepare action sets</DESCRIPTION>
26
				<PARAMETERS>
27
					<PARAM managedBy="system" name="sets" required="true" type="string">
28
						[
29
						{
30
						'set' : 'crossref-dump',
31
						'jobProperty' : 'export_action_set_crossref_dump',
32
						'enablingProperty' : 'active_crossref_dump',
33
						'enabled' : 'true'
34
						}
35
						]
36
					</PARAM>
37
				</PARAMETERS>
38
				<ARCS>
39
					<ARC to="extractOutputPath"/>
40
				</ARCS>
41
			</NODE>
42
			<NODE name="extractOutputPath" type="ExtractOutputPath">
43
				<DESCRIPTION>extract the hdfs output path generated in the previous node</DESCRIPTION>
44
				<PARAMETERS>
45
					<PARAM managedBy="system" name="hdfsOutputPathParam" required="true" type="string">outputPath</PARAM>
46
				</PARAMETERS>
47
				<ARCS>
48
					<ARC to="importActionSet"/>
49
				</ARCS>
50
			</NODE>
51
			<NODE isJoin="true" name="importActionSet" type="SubmitHadoopJob">
52
				<DESCRIPTION>IIS main</DESCRIPTION>
53
				<PARAMETERS>
54
					<PARAM managedBy="system" name="hadoopJob" required="true" type="string">importCrossrefJob</PARAM>
55
					<PARAM managedBy="system" name="cluster" required="true" type="string">DM</PARAM>
56
					<PARAM managedBy="system" name="envParams" required="true" type="string">
57
						{
58
						'mapred.input.dir':'inputPath',
59
						'mapred.output.dir':'outputPath'
60
						}
61
					</PARAM>
62
					<PARAM managedBy="user" name="simulation" required="true" type="boolean">false</PARAM>
63
				</PARAMETERS>
64
				<ARCS>
65
					<ARC to="updateActionSets"/>
66
				</ARCS>
67
			</NODE>
68
			<NODE name="updateActionSets" type="UpdateActionSets">
69
				<DESCRIPTION>update action sets</DESCRIPTION>
70
				<PARAMETERS/>
71
				<ARCS>
72
					<ARC to="success"/>
73
				</ARCS>
74
			</NODE>
75
		</CONFIGURATION>
76
		<STATUS>
77
			<LAST_EXECUTION_ID>wf_20180807_092640_582</LAST_EXECUTION_ID>
78
			<LAST_EXECUTION_DATE>2018-08-07T09:29:23+00:00</LAST_EXECUTION_DATE>
79
			<LAST_EXECUTION_STATUS>SUCCESS</LAST_EXECUTION_STATUS>
80
			<LAST_EXECUTION_ERROR/>
81
		</STATUS>
82
	</BODY>
83
</RESOURCE_PROFILE>
modules/dnet-openaireplus-workflows/branches/solr75/src/test/java/eu/dnetlib/utils/ontologies/OntologyLoaderTest.java
1
package eu.dnetlib.utils.ontologies;
2

  
3
import com.google.gson.Gson;
4
import org.apache.commons.lang3.StringUtils;
5
import org.junit.Assert;
6
import org.junit.Test;
7

  
8
import java.io.IOException;
9
import java.io.InputStream;
10

  
11
import static org.junit.Assert.*;
12

  
13
/**
14
 * Created by claudio on 12/12/2016.
15
 */
16
public class OntologyLoaderTest {
17

  
18
    private String basePath = "/eu/dnetlib/test/profiles/OntologyDSResources/OntologyDSResourceType/";
19

  
20
    @Test
21
    public void testLoadOntologyFromCp() {
22

  
23
        final InputStream i = getClass().getResourceAsStream(basePath + "result_result_relations.xml");
24

  
25
        Ontology o = OntologyLoader.loadOntologyFromCp(i);
26
        checkOntology(o);
27

  
28
        String supplement = o.inverseOf("isSupplementedBy");
29
        assertEquals(supplement, "isSupplementTo");
30

  
31
        String part = o.inverseOf("isPartOf");
32
        assertEquals(part, "hasPart");
33
    }
34

  
35
    @Test
36
    public void testLoadOntologiesFromCp() throws IOException {
37

  
38
        OntologyLoader.loadOntologiesFromCp().values().forEach(o -> checkOntology(o));
39
    }
40

  
41
    @Test
42
    public void testLoadOntologiesSerialization() throws IOException {
43

  
44
        final Ontologies o = OntologyLoader.loadOntologiesFromCp();
45
        assertNotNull(o);
46

  
47
        final String json = o.toJson(true);
48

  
49
        assertFalse(StringUtils.isBlank(json));
50
        assertFalse("{}".equals(json.trim()));
51

  
52
        //System.out.println(json);
53

  
54
        assertTrue(StringUtils.isNoneBlank(json));
55

  
56
        final Ontologies o1 = new Gson().fromJson(json, Ontologies.class);
57

  
58
        assertNotNull(o1);
59

  
60
        o1.entrySet().forEach(e -> checkOntology(e.getValue()));
61
    }
62

  
63
    private void checkOntology(Ontology o) {
64
        Assert.assertNotNull(o);
65
        Assert.assertTrue(StringUtils.isNotBlank(o.getCode()));
66
        Assert.assertTrue(StringUtils.isNotBlank(o.getDescription()));
67
        Assert.assertNotNull(o.getTerms().values());
68

  
69
        o.getTerms().values().forEach(it -> {
70
            Assert.assertTrue(StringUtils.isNotBlank(it.getCode()));
71
            Assert.assertTrue(StringUtils.isNotBlank(it.getEncoding()));
72
            Assert.assertTrue(StringUtils.isNotBlank(it.getEnglishName()));
73
            Assert.assertTrue(StringUtils.isNotBlank(it.getNativeName()));
74
            Assert.assertTrue(StringUtils.isNotBlank(it.getInverseCode()));
75
            Assert.assertNotNull(o.getTerms().get(it.getInverseCode()));
76
        });
77
    }
78
}
modules/dnet-openaireplus-workflows/branches/solr75/src/main/java/eu/dnetlib/msro/openaireplus/workflows/nodes/claims/AbstractClaimsToHBASE.java
61 61
		switch (type) {
62 62
		case "publication":
63 63
		case "dataset":
64
		case "software":
65
		case "other":
64 66
			return "result";
65 67
		default:
66 68
			return type;
modules/dnet-openaireplus-workflows/branches/solr75/src/main/java/eu/dnetlib/msro/openaireplus/workflows/nodes/claims/ApplyClaimRelsJobNode.java
78 78
	protected String getValue(final String sourceId, final String semantics, final String targetId, final long timestamp) throws MSROException {
79 79
		log.debug(StringUtils.format("%s -- %s -- %s", sourceId, semantics, targetId));
80 80
		String[] relInfo = semantics.split(SEPARATOR);
81
		if (relInfo.length < 3) {
81
		if (relInfo.length != 3) {
82 82
			throw new MSROException("Semantics " + semantics + " not supported: must be splittable in 3 by '_'");
83 83
		}
84 84
		Qualifier.Builder semanticsBuilder = Qualifier.newBuilder().setClassid(relInfo[2]).setClassname(relInfo[2]);
modules/dnet-openaireplus-workflows/branches/solr75/src/main/java/eu/dnetlib/msro/openaireplus/workflows/nodes/FetchOntologiesJobNode.java
1
package eu.dnetlib.msro.openaireplus.workflows.nodes;
2

  
3
import com.googlecode.sarasvati.Arc;
4
import com.googlecode.sarasvati.NodeToken;
5
import eu.dnetlib.msro.workflows.nodes.SimpleJobNode;
6
import eu.dnetlib.utils.ontologies.Ontologies;
7
import eu.dnetlib.utils.ontologies.OntologyLoader;
8
import org.apache.commons.logging.Log;
9
import org.apache.commons.logging.LogFactory;
10

  
11
public class FetchOntologiesJobNode extends SimpleJobNode {
12

  
13
    private static final Log log = LogFactory.getLog(FetchOntologiesJobNode.class);
14

  
15
    private String paramName;
16

  
17
    @Override
18
    protected String execute(NodeToken token) throws Exception {
19

  
20
        final Ontologies ontologies = OntologyLoader.loadOntologiesFromIS();
21

  
22
        log.info(String.format("loaded %s ontology profiles", ontologies.size()));
23

  
24
        token.getEnv().setAttribute(getParamName(), ontologies.toJson());
25

  
26
        return Arc.DEFAULT_ARC;
27
    }
28

  
29
    public String getParamName() {
30
        return paramName;
31
    }
32

  
33
    public void setParamName(String paramName) {
34
        this.paramName = paramName;
35
    }
36
}
modules/dnet-openaireplus-workflows/branches/solr75/src/main/java/eu/dnetlib/utils/ontologies/OntologyLoader.java
1 1
package eu.dnetlib.utils.ontologies;
2 2

  
3
import javax.annotation.PostConstruct;
4

  
3
import com.google.common.collect.Maps;
4
import com.google.gson.Gson;
5 5
import eu.dnetlib.enabling.is.lookup.rmi.ISLookUpException;
6 6
import eu.dnetlib.enabling.is.lookup.rmi.ISLookUpService;
7 7
import eu.dnetlib.enabling.locators.UniqueServiceLocator;
8
import org.apache.commons.io.IOUtils;
9
import org.apache.commons.logging.Log;
10
import org.apache.commons.logging.LogFactory;
11
import org.dom4j.Document;
12
import org.dom4j.DocumentException;
13
import org.dom4j.Element;
14
import org.dom4j.Node;
15
import org.dom4j.io.SAXReader;
8 16
import org.springframework.beans.factory.annotation.Autowired;
17
import org.springframework.core.io.support.PathMatchingResourcePatternResolver;
9 18
import org.springframework.stereotype.Component;
10 19

  
20
import javax.annotation.PostConstruct;
21
import java.io.IOException;
22
import java.io.InputStream;
23
import java.io.StringReader;
24
import java.util.Arrays;
25
import java.util.List;
26
import java.util.Map;
27
import java.util.function.Function;
28
import java.util.stream.Collectors;
29

  
11 30
/**
12 31
 * Created by claudio on 12/12/2016.
13 32
 */
14 33
@Component
15 34
public class OntologyLoader {
16 35

  
17
	private static UniqueServiceLocator staticServiceLocator;
36
    private static final Log log = LogFactory.getLog(OntologyLoader.class);
18 37

  
19
	@Autowired
20
	private UniqueServiceLocator serviceLocator;
38
    private static final String PATTERN = "classpath*:/eu/dnetlib/test/profiles/OntologyDSResources/OntologyDSResourceType/*.xml";
21 39

  
22
	// <TERM code="merges" encoding="organizationOrganization_dedup_merges" english_name="merges" native_name="merges">
23
	public static String fetchInverse(final String relType) throws ISLookUpException {
24
		final String xquery = "let $x:= /RESOURCE_PROFILE["
25
				+ " .//RESOURCE_TYPE/@value = 'OntologyDSResourceType' and "
26
				+ " .//TERM/@encoding='" + relType + "']"
27
				+ "let $y:= $x//TERM[./@encoding='" + relType + "']//RELATION[./@type='inverseOf']/@code/string() "
28
				+ "return $x//TERM[./@code = $y]/@encoding/string()";
29
		return staticServiceLocator.getService(ISLookUpService.class).getResourceProfileByQuery(xquery);
30
	}
40
    private static UniqueServiceLocator staticServiceLocator;
31 41

  
32
	@PostConstruct
33
	public void init() {
34
		OntologyLoader.staticServiceLocator = serviceLocator;
35
	}
42
    @Autowired
43
    private UniqueServiceLocator serviceLocator;
36 44

  
45

  
46
    // <TERM code="merges" encoding="organizationOrganization_dedup_merges" english_name="merges" native_name="merges">
47
    public static String fetchInverse(final String relType) throws ISLookUpException {
48
        final String xquery = "let $x:= /RESOURCE_PROFILE["
49
                + " .//RESOURCE_TYPE/@value = 'OntologyDSResourceType' and "
50
                + " .//TERM/@encoding='" + relType + "']"
51
                + "let $y:= $x//TERM[./@encoding='" + relType + "']//RELATION[./@type='inverseOf']/@code/string() "
52
                + "return $x//TERM[./@code = $y]/@encoding/string()";
53
        return staticServiceLocator.getService(ISLookUpService.class).getResourceProfileByQuery(xquery);
54
    }
55

  
56
    @PostConstruct
57
    public void init() {
58
        OntologyLoader.staticServiceLocator = serviceLocator;
59
    }
60

  
61
    public static Ontology loadOntologyFromCp(final InputStream profile) {
62
        return loadOntologyProfilefromPath(profile);
63
    }
64

  
65
    public static Ontologies loadOntologiesFromCp() throws IOException {
66
        final PathMatchingResourcePatternResolver resolver = new PathMatchingResourcePatternResolver();
67
        final List<InputStream> files = Arrays.asList(resolver.getResources(PATTERN)).stream().map(r -> {
68
            try {
69
                return r.getInputStream();
70
            } catch (IOException e) {
71
                throw new RuntimeException(e);
72
            }
73
        }).collect(Collectors.toList());
74

  
75
        return createOntologies(files);
76
    }
77

  
78
    public static Ontologies createOntologies(List<InputStream> files) {
79
        final Ontologies ontologies = new Ontologies();
80
        files.stream().map(
81
                s -> loadOntologyProfilefromPath(s))
82
                .collect(Collectors.toMap(Ontology::getCode, Function.identity()))
83
                .entrySet()
84
                .forEach(it -> ontologies.put(it.getKey(), it.getValue()));
85
        return ontologies;
86
    }
87

  
88
    public static Ontologies loadOntologiesFromIS() throws ISLookUpException {
89
        final ISLookUpService lookUpService = staticServiceLocator.getService(ISLookUpService.class);
90
        List<String> files = lookUpService.quickSearchProfile("for $x in collection('/db/DRIVER/OntologyDSResources/OntologyDSResourceType') return $x");
91
        final Ontologies ontologies = new Ontologies();
92
        files.stream().map
93
                (OntologyLoader::getOntologyFromProfile)
94
                .collect(Collectors.toMap(Ontology::getCode, Function.identity()))
95
                .entrySet()
96
                .forEach(it -> ontologies.put(it.getKey(), it.getValue()));
97
        return ontologies;
98
    }
99

  
100
    private static Ontology loadOntologyProfilefromPath(final InputStream profile) {
101
        final String profileXML;
102
        try {
103
            profileXML = IOUtils.toString(profile);
104
        } catch (IOException e) {
105
            log.error(e);
106
            return null;
107
        }
108
        return getOntologyFromProfile(profileXML);
109
    }
110

  
111
    private static Ontology getOntologyFromProfile(final String profile) {
112
        SAXReader saxReader = new SAXReader();
113
        Document doc = null;
114
        StringReader reader = new StringReader(profile);
115

  
116
        try {
117
            doc = saxReader.read(reader);
118
        } catch (DocumentException e) {
119
            e.printStackTrace();
120
            throw new RuntimeException(e);
121
        }
122
        return new Ontology()
123
                .setCode(doc.valueOf("//ONTOLOGY_NAME/@code"))
124
                .setDescription(doc.valueOf("//ONTOLOGY_DESCRIPTION/text()"))
125
                .setTerms(asTerms(doc.selectNodes("//TERMS/TERM")));
126
    }
127

  
128
    private static Map<String,OntologyTerm> asTerms(final List list) {
129
        final Map<String, OntologyTerm> terms = Maps.newHashMap();
130
        if (list != null) {
131
            list.forEach(o -> {
132
                final Element e = (Element) o;
133
                final OntologyTerm ot = OntologyTerm.newInstance()
134
                        .setCode(e.attributeValue("code"))
135
                        .setEncoding(e.attributeValue("encoding"))
136
                        .setEnglishName(e.attributeValue("english_name"))
137
                        .setNativeName(e.attributeValue("native_name"))
138
                        .setInverseCode(((Node) o).valueOf("./RELATIONS/RELATION[@type = 'inverseOf']/@code"));
139

  
140
                terms.put(ot.getCode(), ot);
141
            });
142
        }
143
        return terms;
144
    }
145

  
146

  
37 147
}
modules/dnet-openaireplus-workflows/branches/solr75/src/main/resources/eu/dnetlib/test/profiles/openaireplus/workflows/hbase/importAffiliationsDOIBoost.xml
1
<RESOURCE_PROFILE>
2
	<HEADER>
3
		<RESOURCE_IDENTIFIER value="970c4826-cf6d-4dfe-850c-41e508d341fa_V29ya2Zsb3dEU1Jlc291cmNlcy9Xb3JrZmxvd0RTUmVzb3VyY2VUeXBl"/>
4
		<RESOURCE_TYPE value="WorkflowDSResourceType"/>
5
		<RESOURCE_KIND value="WorkflowDSResources"/>
6
		<RESOURCE_URI value=""/>
7
		<DATE_OF_CREATION value="2018-11-15T11:24:05+00:00"/>
8
	</HEADER>
9
	<BODY>
10
		<WORKFLOW_NAME>Import Organizations from DOIboost</WORKFLOW_NAME>
11
		<WORKFLOW_TYPE>Import InfoSpace</WORKFLOW_TYPE>
12
		<WORKFLOW_PRIORITY>30</WORKFLOW_PRIORITY>
13
		<CONFIGURATION start="manual">
14
			<NODE isStart="true" name="setOrgsOnly" type="SetEnvParameter">
15
				<DESCRIPTION>set the parameter to drive the import procedure behaviour so that it will import only organizations</DESCRIPTION>
16
				<PARAMETERS>
17
					<PARAM managedBy="system" name="parameterName" required="true" type="string">onlyOrganization</PARAM>
18
					<PARAM managedBy="user" name="parameterValue" required="false" type="string">true</PARAM>
19
				</PARAMETERS>
20
				<ARCS>
21
					<ARC to="importActionSet"/>
22
				</ARCS>
23
			</NODE>
24
			<NODE isStart="true" name="setInputPath" type="SetHdfsFile">
25
				<DESCRIPTION>set the hdfs output path</DESCRIPTION>
26
				<PARAMETERS>
27
					<PARAM managedBy="user" name="hdfsPath" required="true" type="string">/usr/dnet/data/doiboost</PARAM>
28
					<PARAM managedBy="system" name="hdfsPathParam" required="true" type="string">inputPath</PARAM>
29
				</PARAMETERS>
30
				<ARCS>
31
					<ARC to="prepareActionSets"/>
32
				</ARCS>
33
			</NODE>
34
			<NODE name="prepareActionSets" type="PrepareActionSets">
35
				<DESCRIPTION>prepare action sets</DESCRIPTION>
36
				<PARAMETERS>
37
					<PARAM managedBy="system" name="sets" required="true" type="string">
38
						[
39
						{
40
						'set' : 'doiboost-organizations',
41
						'jobProperty' : 'export_action_set_doiboost-organizations',
42
						'enablingProperty' : 'active_doiboost-organizations',
43
						'enabled' : 'true'
44
						}
45
						]
46
					</PARAM>
47
				</PARAMETERS>
48
				<ARCS>
49
					<ARC to="extractOutputPath"/>
50
				</ARCS>
51
			</NODE>
52
			<NODE name="extractOutputPath" type="ExtractOutputPath">
53
				<DESCRIPTION>extract the hdfs output path generated in the previous node</DESCRIPTION>
54
				<PARAMETERS>
55
					<PARAM managedBy="system" name="hdfsOutputPathParam" required="true" type="string">outputPath</PARAM>
56
				</PARAMETERS>
57
				<ARCS>
58
					<ARC to="importActionSet"/>
59
				</ARCS>
60
			</NODE>
61
			<NODE isJoin="true" name="importActionSet" type="SubmitHadoopJob">
62
				<DESCRIPTION>IIS main</DESCRIPTION>
63
				<PARAMETERS>
64
					<PARAM managedBy="system" name="hadoopJob" required="true" type="string">importDOIBoostJob</PARAM>
65
					<PARAM managedBy="system" name="cluster" required="true" type="string">DM</PARAM>
66
					<PARAM managedBy="system" name="envParams" required="true" type="string">
67
						{
68
						'mapred.input.dir':'inputPath',
69
						'mapred.output.dir':'outputPath',
70
						'onlyOrganization' : 'onlyOrganization'
71
						}
72
					</PARAM>
73
					<PARAM managedBy="user" name="simulation" required="true" type="boolean">false</PARAM>
74
				</PARAMETERS>
75
				<ARCS>
76
					<ARC to="updateActionSets"/>
77
				</ARCS>
78
			</NODE>
79
			<NODE name="updateActionSets" type="UpdateActionSets">
80
				<DESCRIPTION>update action sets</DESCRIPTION>
81
				<PARAMETERS/>
82
				<ARCS>
83
					<ARC to="success"/>
84
				</ARCS>
85
			</NODE>
86
		</CONFIGURATION>
87
		<STATUS>
88
			<LAST_EXECUTION_ID>wf_20181026_140552_878</LAST_EXECUTION_ID>
89
			<LAST_EXECUTION_DATE>2018-10-26T14:21:47+00:00</LAST_EXECUTION_DATE>
90
			<LAST_EXECUTION_STATUS>SUCCESS</LAST_EXECUTION_STATUS>
91
			<LAST_EXECUTION_ERROR/>
92
		</STATUS>
93
	</BODY>
94
</RESOURCE_PROFILE>
modules/dnet-openaireplus-workflows/branches/solr75/src/main/resources/eu/dnetlib/test/profiles/openaireplus/workflows/hbase/importDOIBoost.xml
1
<RESOURCE_PROFILE>
2
	<HEADER>
3
		<RESOURCE_IDENTIFIER value="e03f256e-1e4d-4b3d-9c07-91faf5d25208_V29ya2Zsb3dEU1Jlc291cmNlcy9Xb3JrZmxvd0RTUmVzb3VyY2VUeXBl"/>
4
		<RESOURCE_TYPE value="WorkflowDSResourceType"/>
5
		<RESOURCE_KIND value="WorkflowDSResources"/>
6
		<RESOURCE_URI value=""/>
7
		<DATE_OF_CREATION value="2018-10-26T14:04:42+00:00"/>
8
	</HEADER>
9
	<BODY>
10
		<WORKFLOW_NAME>Import DOIboost</WORKFLOW_NAME>
11
		<WORKFLOW_TYPE>Import InfoSpace</WORKFLOW_TYPE>
12
		<WORKFLOW_PRIORITY>30</WORKFLOW_PRIORITY>
13
		<CONFIGURATION start="manual">
14
			<NODE isStart="true" name="setInputPath" type="SetHdfsFile">
15
				<DESCRIPTION>set the hdfs output path</DESCRIPTION>
16
				<PARAMETERS>
17
					<PARAM managedBy="user" name="hdfsPath" required="true" type="string">/usr/dnet/data/doiboost</PARAM>
18
					<PARAM managedBy="system" name="hdfsPathParam" required="true" type="string">inputPath</PARAM>
19
				</PARAMETERS>
20
				<ARCS>
21
					<ARC to="prepareActionSets"/>
22
				</ARCS>
23
			</NODE>
24
			<NODE name="prepareActionSets" type="PrepareActionSets">
25
				<DESCRIPTION>prepare action sets</DESCRIPTION>
26
				<PARAMETERS>
27
					<PARAM managedBy="system" name="sets" required="true" type="string">
28
						[
29
						{
30
						'set' : 'doiboost',
31
						'jobProperty' : 'export_action_set_doiboost',
32
						'enablingProperty' : 'active_doiboost',
33
						'enabled' : 'true'
34
						}
35
						]
36
					</PARAM>
37
				</PARAMETERS>
38
				<ARCS>
39
					<ARC to="extractOutputPath"/>
40
				</ARCS>
41
			</NODE>
42
			<NODE name="extractOutputPath" type="ExtractOutputPath">
43
				<DESCRIPTION>extract the hdfs output path generated in the previous node</DESCRIPTION>
44
				<PARAMETERS>
45
					<PARAM managedBy="system" name="hdfsOutputPathParam" required="true" type="string">outputPath</PARAM>
46
				</PARAMETERS>
47
				<ARCS>
48
					<ARC to="importActionSet"/>
49
				</ARCS>
50
			</NODE>
51
			<NODE isJoin="true" name="importActionSet" type="SubmitHadoopJob">
52
				<DESCRIPTION>IIS main</DESCRIPTION>
53
				<PARAMETERS>
54
					<PARAM managedBy="system" name="hadoopJob" required="true" type="string">importDOIBoostJob</PARAM>
55
					<PARAM managedBy="system" name="cluster" required="true" type="string">DM</PARAM>
56
					<PARAM managedBy="system" name="envParams" required="true" type="string">
57
						{
58
						'mapred.input.dir':'inputPath',
59
						'mapred.output.dir':'outputPath'
60
						}
61
					</PARAM>
62
					<PARAM managedBy="user" name="simulation" required="true" type="boolean">false</PARAM>
63
				</PARAMETERS>
64
				<ARCS>
65
					<ARC to="updateActionSets"/>
66
				</ARCS>
67
			</NODE>
68
			<NODE name="updateActionSets" type="UpdateActionSets">
69
				<DESCRIPTION>update action sets</DESCRIPTION>
70
				<PARAMETERS/>
71
				<ARCS>
72
					<ARC to="success"/>
73
				</ARCS>
74
			</NODE>
75
		</CONFIGURATION>
76
		<STATUS>
77
			<LAST_EXECUTION_ID>wf_20181114_161523_453</LAST_EXECUTION_ID>
78
			<LAST_EXECUTION_DATE>2018-11-14T16:59:55+00:00</LAST_EXECUTION_DATE>
79
			<LAST_EXECUTION_STATUS>SUCCESS</LAST_EXECUTION_STATUS>
80
			<LAST_EXECUTION_ERROR/>
81
		</STATUS>
82
	</BODY>
83
</RESOURCE_PROFILE>
modules/dnet-openaireplus-workflows/branches/solr75/src/main/resources/eu/dnetlib/test/profiles/openaireplus/workflows/provision/fixRelations.xml
1
<?xml version="1.0" encoding="UTF-8"?>
2
<RESOURCE_PROFILE xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
3
    <HEADER>
4
        <RESOURCE_IDENTIFIER value="f3b803df-d9a9-4b78-a867-a106b74a8584_V29ya2Zsb3dEU1Jlc291cmNlcy9Xb3JrZmxvd0RTUmVzb3VyY2VUeXBl"/>
5
        <RESOURCE_TYPE value="WorkflowDSResourceType"/>
6
        <RESOURCE_KIND value="WorkflowDSResources"/>
7
        <RESOURCE_URI value=""/>
8
        <DATE_OF_CREATION value="2006-05-04T18:13:51.0Z"/>
9
    </HEADER>
10
    <BODY>
11
        <WORKFLOW_NAME>Fix relationships</WORKFLOW_NAME>
12
        <WORKFLOW_TYPE>Data Provision</WORKFLOW_TYPE>
13
        <WORKFLOW_PRIORITY>30</WORKFLOW_PRIORITY>
14
        <CONFIGURATION start="manual">
15

  
16

  
17
            <NODE name="fetchOntologies" type="FetchOntologies" isStart="true">
18
                <DESCRIPTION/>
19
                <PARAMETERS>
20
                    <PARAM name="paramName" type="string" managedBy="system" required="true">ontologies</PARAM>
21
                </PARAMETERS>
22
                <ARCS>
23
                    <ARC to="waitConf"/>
24
                </ARCS>
25
            </NODE>
26
            <NODE name="hadoopConfig" type="SetClusterAndTable" isStart="true">
27
                <DESCRIPTION>Set table name</DESCRIPTION>
28
                <PARAMETERS>
29
                    <PARAM required="true" type="string" name="cluster" managedBy="system">DM</PARAM>
30
                    <PARAM required="true" type="string" name="tableParam" managedBy="system">tableName</PARAM>
31
                </PARAMETERS>
32
                <ARCS>
33
                    <ARC to="waitConf"/>
34
                </ARCS>
35
            </NODE>
36

  
37
            <NODE name="waitConf" isJoin="true">
38
                <DESCRIPTION/>
39
                <PARAMETERS/>
40
                <ARCS>
41
                    <ARC to="setRelOrganizationsParam"/>
42
                </ARCS>
43
            </NODE>
44

  
45
            <NODE name="setRelOrganizationsParam" type="SetEnvParameter">
46
                <DESCRIPTION>set sub-entity type for organizations</DESCRIPTION>
47
                <PARAMETERS>
48
                    <PARAM name="parameterName" type="string" managedBy="system" required="true">subentitytype</PARAM>
49
                    <PARAM name="parameterValue" type="string" managedBy="system" required="true">organization</PARAM>
50
                </PARAMETERS>
51
                <ARCS>
52
                    <ARC to="fixRelOrganizations"/>
53
                </ARCS>
54
            </NODE>
55

  
56

  
57
            <NODE name="fixRelOrganizations" type="SubmitHadoopJob">
58
                <DESCRIPTION>fix the relationships among deduped and non-deduped objects</DESCRIPTION>
59
                <PARAMETERS>
60
                    <PARAM required="true" type="string" name="hadoopJob" managedBy="system">dedupFixRelationsJob</PARAM>
61
                    <PARAM required="true" type="string" name="envParams" managedBy="system">
62
                        {
63
                        'cluster' : 'cluster',
64
                        'hbase.mapred.inputtable' : 'tableName',
65
                        'hbase.mapreduce.inputtable' : 'tableName',
66
                        'hbase.mapred.outputtable' : 'tableName',
67
                        'hbase.mapreduce.outputtable' : 'tableName'
68
                        'ontologies' : 'ontologies',
69
                        'subentitytype' : 'subentitytype'
70
                        }
71
                    </PARAM>
72
                </PARAMETERS>
73
                <ARCS>
74
                    <ARC to="setRelPublicationsParam"/>
75
                </ARCS>
76
            </NODE>
77

  
78

  
79
            <NODE name="setRelPublicationsParam" type="SetEnvParameter">
80
                <DESCRIPTION>set sub-entity type for organizations</DESCRIPTION>
81
                <PARAMETERS>
82
                    <PARAM name="parameterName" type="string" managedBy="system" required="true">subentitytype</PARAM>
83
                    <PARAM name="parameterValue" type="string" managedBy="system" required="true">publication</PARAM>
84
                </PARAMETERS>
85
                <ARCS>
86
                    <ARC to="fixRelPublications"/>
87
                </ARCS>
88
            </NODE>
89

  
90

  
91
            <NODE name="fixRelPublications" type="SubmitHadoopJob">
92
                <DESCRIPTION>fix the relationships among deduped and non-deduped objects</DESCRIPTION>
93
                <PARAMETERS>
94
                    <PARAM required="true" type="string" name="hadoopJob" managedBy="system">dedupFixRelationsJob</PARAM>
95
                    <PARAM required="true" type="string" name="envParams" managedBy="system">
96
                        {
97
                        'cluster' : 'cluster',
98
                        'hbase.mapred.inputtable' : 'tableName',
99
                        'hbase.mapreduce.inputtable' : 'tableName',
100
                        'hbase.mapred.outputtable' : 'tableName',
101
                        'hbase.mapreduce.outputtable' : 'tableName'
102
                        'ontologies' : 'ontologies',
103
                        'subentitytype' : 'subentitytype'
104
                        }
105
                    </PARAM>
106
                </PARAMETERS>
107
                <ARCS>
108
                    <ARC to="setRelDatasetsParam"/>
109
                </ARCS>
110
            </NODE>
111

  
112
            <NODE name="setRelDatasetsParam" type="SetEnvParameter">
113
                <DESCRIPTION>set sub-entity type for organizations</DESCRIPTION>
114
                <PARAMETERS>
115
                    <PARAM name="parameterName" type="string" managedBy="system" required="true">subentitytype</PARAM>
116
                    <PARAM name="parameterValue" type="string" managedBy="system" required="true">dataset</PARAM>
117
                </PARAMETERS>
118
                <ARCS>
119
                    <ARC to="fixRelDatasets"/>
120
                </ARCS>
121
            </NODE>
122

  
123

  
124
            <NODE name="fixRelDatasets" type="SubmitHadoopJob">
125
                <DESCRIPTION>fix the relationships among deduped and non-deduped objects</DESCRIPTION>
126
                <PARAMETERS>
127
                    <PARAM required="true" type="string" name="hadoopJob" managedBy="system">dedupFixRelationsJob</PARAM>
128
                    <PARAM required="true" type="string" name="envParams" managedBy="system">
129
                        {
130
                        'cluster' : 'cluster',
131
                        'hbase.mapred.inputtable' : 'tableName',
132
                        'hbase.mapreduce.inputtable' : 'tableName',
133
                        'hbase.mapred.outputtable' : 'tableName',
134
                        'hbase.mapreduce.outputtable' : 'tableName'
135
                        'ontologies' : 'ontologies',
136
                        'subentitytype' : 'subentitytype'
137
                        }
138
                    </PARAM>
139
                </PARAMETERS>
140
                <ARCS>
141
                    <ARC to="setRelSoftwaresParam"/>
142
                </ARCS>
143
            </NODE>
144

  
145
            <NODE name="setRelSoftwaresParam" type="SetEnvParameter">
146
                <DESCRIPTION>set sub-entity type for organizations</DESCRIPTION>
147
                <PARAMETERS>
148
                    <PARAM name="parameterName" type="string" managedBy="system" required="true">subentitytype</PARAM>
149
                    <PARAM name="parameterValue" type="string" managedBy="system" required="true">software</PARAM>
150
                </PARAMETERS>
151
                <ARCS>
152
                    <ARC to="fixRelSoftwares"/>
153
                </ARCS>
154
            </NODE>
155

  
156

  
157
            <NODE name="fixRelSoftwares" type="SubmitHadoopJob">
158
                <DESCRIPTION>fix the relationships among deduped and non-deduped objects</DESCRIPTION>
159
                <PARAMETERS>
160
                    <PARAM required="true" type="string" name="hadoopJob" managedBy="system">dedupFixRelationsJob</PARAM>
161
                    <PARAM required="true" type="string" name="envParams" managedBy="system">
162
                        {
163
                        'cluster' : 'cluster',
164
                        'hbase.mapred.inputtable' : 'tableName',
165
                        'hbase.mapreduce.inputtable' : 'tableName',
166
                        'hbase.mapred.outputtable' : 'tableName',
167
                        'hbase.mapreduce.outputtable' : 'tableName'
168
                        'ontologies' : 'ontologies',
169
                        'subentitytype' : 'subentitytype'
170
                        }
171
                    </PARAM>
172
                </PARAMETERS>
173
                <ARCS>
174
                    <ARC to="setRelOthersParam"/>
175
                </ARCS>
176
            </NODE>
177

  
178
            <NODE name="setRelOthersParam" type="SetEnvParameter">
179
                <DESCRIPTION>set sub-entity type for organizations</DESCRIPTION>
180
                <PARAMETERS>
181
                    <PARAM name="parameterName" type="string" managedBy="system" required="true">subentitytype</PARAM>
182
                    <PARAM name="parameterValue" type="string" managedBy="system" required="true">other</PARAM>
183
                </PARAMETERS>
184
                <ARCS>
185
                    <ARC to="fixRelOthers"/>
186
                </ARCS>
187
            </NODE>
188

  
189

  
190
            <NODE name="fixRelOthers" type="SubmitHadoopJob">
191
                <DESCRIPTION>fix the relationships among deduped and non-deduped objects</DESCRIPTION>
192
                <PARAMETERS>
193
                    <PARAM required="true" type="string" name="hadoopJob" managedBy="system">dedupFixRelationsJob</PARAM>
194
                    <PARAM required="true" type="string" name="envParams" managedBy="system">
195
                        {
196
                        'cluster' : 'cluster',
197
                        'hbase.mapred.inputtable' : 'tableName',
198
                        'hbase.mapreduce.inputtable' : 'tableName',
199
                        'hbase.mapred.outputtable' : 'tableName',
200
                        'hbase.mapreduce.outputtable' : 'tableName'
201
                        'ontologies' : 'ontologies',
202
                        'subentitytype' : 'subentitytype'
203
                        }
204
                    </PARAM>
205
                </PARAMETERS>
206
                <ARCS>
207
                    <ARC to="success"/>
208
                </ARCS>
209
            </NODE>
210

  
211

  
212

  
213
        </CONFIGURATION>
214
        <STATUS/>
215
    </BODY>
216
</RESOURCE_PROFILE>
modules/dnet-openaireplus-workflows/branches/solr75/src/main/resources/eu/dnetlib/msro/openaireplus/workflows/repo-hi/entityreg-contexts/xsl/rpf_context.xsl
1
<?xml version="1.0" encoding="UTF-8"?>
2
<xsl:stylesheet version="2.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
3

  
4
    <xsl:output indent="yes"/>
5

  
6
    <xsl:template match="/">
7
        <fundings>
8
            <fundingtree>
9
                <funder>
10
                    <id>rpf_________::RPF</id>
11
                    <shortname>RPF</shortname>
12
                    <name>Research Promotion Foundation</name>
13
                    <originalname>Research Promotion Foundation</originalname>
14
                    <jurisdiction>CY</jurisdiction>
15
                </funder>
16
            </fundingtree>
17
        </fundings>
18
    </xsl:template>
19
</xsl:stylesheet>
modules/dnet-openaireplus-workflows/branches/solr75/src/main/resources/eu/dnetlib/msro/openaireplus/workflows/applicationContext-msro-openaire-nodes.xml
4 4
       xmlns="http://www.springframework.org/schema/beans"
5 5
       xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans.xsd">
6 6

  
7
	<bean id="wfNodeUpdateActionSets"
8
	      class="eu.dnetlib.msro.openaireplus.workflows.nodes.actions.UpdateSetsJobNode"
9
	      scope="prototype"/>
7
    <bean id="wfNodeUpdateActionSets"
8
          class="eu.dnetlib.msro.openaireplus.workflows.nodes.actions.UpdateSetsJobNode"
9
          scope="prototype"/>
10 10

  
11
	<bean id="wfNodePrepareActionSets"
12
	      class="eu.dnetlib.msro.openaireplus.workflows.nodes.actions.PrepareActionSetsJobNode"
13
	      scope="prototype"/>
11
    <bean id="wfNodePrepareActionSets"
12
          class="eu.dnetlib.msro.openaireplus.workflows.nodes.actions.PrepareActionSetsJobNode"
13
          scope="prototype"/>
14 14

  
15
	<bean id="wfNodeCleanActionSetsProfile"
16
	      class="eu.dnetlib.msro.openaireplus.workflows.nodes.actions.CleanActionSetsProfileJobNode"
17
	      p:xupdate="${dnet.actionmanager.garbage.sets.xupdate}" scope="prototype"/>
15
    <bean id="wfNodeCleanActionSetsProfile"
16
          class="eu.dnetlib.msro.openaireplus.workflows.nodes.actions.CleanActionSetsProfileJobNode"
17
          p:xupdate="${dnet.actionmanager.garbage.sets.xupdate}" scope="prototype"/>
18 18

  
19
	<bean id="wfNodeGarbageSets"
20
	      class="eu.dnetlib.msro.openaireplus.workflows.nodes.actions.GarbageSetsJobNode"
21
	      scope="prototype"/>
19
    <bean id="wfNodeGarbageSets"
20
          class="eu.dnetlib.msro.openaireplus.workflows.nodes.actions.GarbageSetsJobNode"
21
          scope="prototype"/>
22 22

  
23
	<bean id="wfNodeGarbageSetsHDFS"
24
	      class="eu.dnetlib.msro.openaireplus.workflows.nodes.actions.GarbageSetsHDFSJobNode"
25
	      scope="prototype"/>
23
    <bean id="wfNodeGarbageSetsHDFS"
24
          class="eu.dnetlib.msro.openaireplus.workflows.nodes.actions.GarbageSetsHDFSJobNode"
25
          scope="prototype"/>
26 26

  
27
	<bean id="wfNodePromoteActionsHDFS"
28
	      class="eu.dnetlib.msro.openaireplus.workflows.nodes.actions.PromoteActionsHDFSJobNode"
29
	      scope="prototype"/>
27
    <bean id="wfNodePromoteActionsHDFS"
28
          class="eu.dnetlib.msro.openaireplus.workflows.nodes.actions.PromoteActionsHDFSJobNode"
29
          scope="prototype"/>
30 30

  
31
	<bean id="wfNodePromoteActions"
32
	      class="eu.dnetlib.msro.openaireplus.workflows.nodes.actions.PromoteActionsJobNode"
33
	      scope="prototype"/>
31
    <bean id="wfNodePromoteActions"
32
          class="eu.dnetlib.msro.openaireplus.workflows.nodes.actions.PromoteActionsJobNode"
33
          scope="prototype"/>
34 34

  
35
	<bean id="wfNodePrepareCopyTable"
36
	      class="eu.dnetlib.msro.openaireplus.workflows.nodes.hbase.PrepareCopyTableJobNode"
37
	      scope="prototype"/>
35
    <bean id="wfNodePrepareCopyTable"
36
          class="eu.dnetlib.msro.openaireplus.workflows.nodes.hbase.PrepareCopyTableJobNode"
37
          scope="prototype"/>
38 38

  
39 39

  
40
	<bean id ="wfNodeIncrementalTransformation"
41
		  class="eu.dnetlib.msro.openaireplus.workflows.nodes.IncrementalTransformationJobNode"
42
		  scope="prototype"/>
43
	<bean id ="wfNodeIncrementalOperation"
44
	      class="eu.dnetlib.msro.openaireplus.workflows.nodes.IncrementalOperationJobNode"
45
	      scope="prototype"/>
40
    <bean id="wfNodeIncrementalTransformation"
41
          class="eu.dnetlib.msro.openaireplus.workflows.nodes.IncrementalTransformationJobNode"
42
          scope="prototype"/>
43
    <bean id="wfNodeIncrementalOperation"
44
          class="eu.dnetlib.msro.openaireplus.workflows.nodes.IncrementalOperationJobNode"
45
          scope="prototype"/>
46 46

  
47
	<bean id="wfNodeDecapsuleClaims"
48
	      class="eu.dnetlib.msro.openaireplus.workflows.nodes.claims.DecapsuleClaimsJobNode"
49
	      scope="prototype"/>
47
    <bean id="wfNodeDecapsuleClaims"
48
          class="eu.dnetlib.msro.openaireplus.workflows.nodes.claims.DecapsuleClaimsJobNode"
49
          scope="prototype"/>
50 50

  
51
	<bean id="wfNodeOpenaireMdBuilder"
52
	      class="eu.dnetlib.msro.openaireplus.workflows.nodes.OpenaireMdBuilderJobNode"
53
	      p:xsltMappedResultSetFactory-ref="xsltResultSetFactory"
54
	      p:mdBuilderTemplateXslt-ref="openaireMdBuilderTemplateXslt" scope="prototype"/>
51
    <bean id="wfNodeOpenaireMdBuilder"
52
          class="eu.dnetlib.msro.openaireplus.workflows.nodes.OpenaireMdBuilderJobNode"
53
          p:xsltMappedResultSetFactory-ref="xsltResultSetFactory"
54
          p:mdBuilderTemplateXslt-ref="openaireMdBuilderTemplateXslt" scope="prototype"/>
55 55

  
56
	<bean id="openaireMdBuilderTemplateXslt"
57
	      class="eu.dnetlib.springutils.stringtemplate.StringTemplateFactory"
58
	      p:template="classpath:/eu/dnetlib/msro/openaireplus/workflows/repo-hi/xslt/openaireMdBuilder.xslt.st"
59
	      scope="prototype"/>
56
    <bean id="openaireMdBuilderTemplateXslt"
57
          class="eu.dnetlib.springutils.stringtemplate.StringTemplateFactory"
58
          p:template="classpath:/eu/dnetlib/msro/openaireplus/workflows/repo-hi/xslt/openaireMdBuilder.xslt.st"
59
          scope="prototype"/>
60 60

  
61
	<bean id="wfNodeUpdateOpenaireMetaWfStatus"
62
	      class="eu.dnetlib.msro.openaireplus.workflows.nodes.repohi.UpdateOpenaireMetaWfStatusJobNode"
63
		  scope="prototype"/>
61
    <bean id="wfNodeUpdateOpenaireMetaWfStatus"
62
          class="eu.dnetlib.msro.openaireplus.workflows.nodes.repohi.UpdateOpenaireMetaWfStatusJobNode"
63
          scope="prototype"/>
64 64

  
65
	<bean id="wfNodeDeleteOpenaireMetaWf"
66
	      class="eu.dnetlib.msro.openaireplus.workflows.nodes.repobye.DeleteOpenaireMetaWfJobNode"
67
	      scope="prototype"/>
65
    <bean id="wfNodeDeleteOpenaireMetaWf"
66
          class="eu.dnetlib.msro.openaireplus.workflows.nodes.repobye.DeleteOpenaireMetaWfJobNode"
67
          scope="prototype"/>
68 68

  
69
	<bean id="wfNodeUpdateRepositoryProfiles"
70
	      class="eu.dnetlib.msro.openaireplus.workflows.nodes.UpdateRepositoryProfilesJobNode"
71
	      scope="prototype"/>
69
    <bean id="wfNodeUpdateRepositoryProfiles"
70
          class="eu.dnetlib.msro.openaireplus.workflows.nodes.UpdateRepositoryProfilesJobNode"
71
          scope="prototype"/>
72 72

  
73
	<bean id="wfNodeUpdateOpenaireDb" class="eu.dnetlib.msro.workflows.nodes.db.UpdateDbJobNode"
74
	      scope="prototype" p:processCountingResultSetFactory-ref="msroProcessCountingResultSetFactory"
75
	      p:db="${dnet.openaire.db.name}"/>
73
    <bean id="wfNodeUpdateOpenaireDb" class="eu.dnetlib.msro.workflows.nodes.db.UpdateDbJobNode"
74
          scope="prototype" p:processCountingResultSetFactory-ref="msroProcessCountingResultSetFactory"
75
          p:db="${dnet.openaire.db.name}"/>
76 76

  
77
	<bean id="wfNodeUpdateVocabularyEntries"
78
	      class="eu.dnetlib.msro.openaireplus.workflows.nodes.UpdateVocabularyEntriesJobNode"
79
	      scope="prototype"
80
	      p:xquery="classpath:/eu/dnetlib/msro/openaireplus/workflows/db/vocabulary_entries.xquery"/>
77
    <bean id="wfNodeUpdateVocabularyEntries"
78
          class="eu.dnetlib.msro.openaireplus.workflows.nodes.UpdateVocabularyEntriesJobNode"
79
          scope="prototype"
80
          p:xquery="classpath:/eu/dnetlib/msro/openaireplus/workflows/db/vocabulary_entries.xquery"/>
81 81

  
82
	<bean id="wfNodeFindVocabularyEntries"
83
	      class="eu.dnetlib.msro.openaireplus.workflows.nodes.FindVocabularyEntriesJobNode"
84
	      scope="prototype"
85
	      p:xquery="classpath:/eu/dnetlib/msro/openaireplus/workflows/db/vocabulary_entries.xquery"/>
82
    <bean id="wfNodeFindVocabularyEntries"
83
          class="eu.dnetlib.msro.openaireplus.workflows.nodes.FindVocabularyEntriesJobNode"
84
          scope="prototype"
85
          p:xquery="classpath:/eu/dnetlib/msro/openaireplus/workflows/db/vocabulary_entries.xquery"/>
86 86

  
87
	<!-- 	<bean id="wfNodeGetHBaseTableDescription" -->
88
	<!-- 		class="eu.dnetlib.msro.openaireplus.workflows.nodes.hbase.GetHBaseTableDescriptionJobNode" -->
89
	<!-- 		scope="prototype" /> -->
87
    <!-- 	<bean id="wfNodeGetHBaseTableDescription" -->
88
    <!-- 		class="eu.dnetlib.msro.openaireplus.workflows.nodes.hbase.GetHBaseTableDescriptionJobNode" -->
89
    <!-- 		scope="prototype" /> -->
90 90

  
91
	<bean id="wfNodeImportFiles"
92
	      class="eu.dnetlib.msro.openaireplus.workflows.nodes.objectStore.ImportFilesJobNode"
93
	      scope="prototype" p:processCountingResultSetFactory-ref="msroProcessCountingResultSetFactory"
94
	      p:iterableResultSetFactory-ref="iterableResultSetFactory"/>
91
    <bean id="wfNodeImportFiles"
92
          class="eu.dnetlib.msro.openaireplus.workflows.nodes.objectStore.ImportFilesJobNode"
93
          scope="prototype" p:processCountingResultSetFactory-ref="msroProcessCountingResultSetFactory"
94
          p:iterableResultSetFactory-ref="iterableResultSetFactory"/>
95 95

  
96
	<bean id="wfNodeRetreiveInterfaceInfo"
97
	      class="eu.dnetlib.msro.openaireplus.workflows.nodes.repohi.RetrieveInterfaceInfoJobNode"
98
	      scope="prototype"/>
96
    <bean id="wfNodeRetreiveInterfaceInfo"
97
          class="eu.dnetlib.msro.openaireplus.workflows.nodes.repohi.RetrieveInterfaceInfoJobNode"
98
          scope="prototype"/>
99 99

  
100
	<bean id="wfNodeObtainOpenaireDataSourceParams"
101
	      class="eu.dnetlib.msro.openaireplus.workflows.nodes.ObtainOpenaireDataSourceParamsJobNode"
102
	      scope="prototype"/>
100
    <bean id="wfNodeObtainOpenaireDataSourceParams"
101
          class="eu.dnetlib.msro.openaireplus.workflows.nodes.ObtainOpenaireDataSourceParamsJobNode"
102
          scope="prototype"/>
103 103

  
104
	<bean id="wfNodeSetHdfsFile"
105
	      class="eu.dnetlib.msro.openaireplus.workflows.nodes.SetHdfsFileJobNode"
106
	      scope="prototype"/>
104
    <bean id="wfNodeSetHdfsFile"
105
          class="eu.dnetlib.msro.openaireplus.workflows.nodes.SetHdfsFileJobNode"
106
          scope="prototype"/>
107 107

  
108
	<!-- <bean id="wfNodeMDStoreImportJob" -->
109
	<!-- class="eu.dnetlib.msro.openaireplus.workflows.nodes.hbase.HBaseMapReduceJobNode" -->
110
	<!-- scope="prototype" p:hadoopJob-ref="mdStoreHdfsImportJob" -->
111
	<!-- p:targetTable="${hbase.mapred.datatable}" p:hFileOutput="${services.mapreduce.mdrecords.hdsf.hfile.output}" -->
112
	<!-- p:xslt="classpath:/eu/dnetlib/data/transform/dmf_2_hbase.xsl" /> -->
108
    <!-- <bean id="wfNodeMDStoreImportJob" -->
109
    <!-- class="eu.dnetlib.msro.openaireplus.workflows.nodes.hbase.HBaseMapReduceJobNode" -->
110
    <!-- scope="prototype" p:hadoopJob-ref="mdStoreHdfsImportJob" -->
111
    <!-- p:targetTable="${hbase.mapred.datatable}" p:hFileOutput="${services.mapreduce.mdrecords.hdsf.hfile.output}" -->
112
    <!-- p:xslt="classpath:/eu/dnetlib/data/transform/dmf_2_hbase.xsl" /> -->
113 113

  
114
	<bean id="wfNodeFindSearchService"
115
	      class="eu.dnetlib.msro.openaireplus.workflows.nodes.index.FindSearchServiceJobNode"
116
	      scope="prototype"/>
114
    <bean id="wfNodeFindSearchService"
115
          class="eu.dnetlib.msro.openaireplus.workflows.nodes.index.FindSearchServiceJobNode"
116
          scope="prototype"/>
117 117

  
118
	<bean id="wfNodeFindSearchServices"
119
	      class="eu.dnetlib.msro.openaireplus.workflows.nodes.index.FindSearchServicesJobNode"
120
	      scope="prototype"/>
118
    <bean id="wfNodeFindSearchServices"
119
          class="eu.dnetlib.msro.openaireplus.workflows.nodes.index.FindSearchServicesJobNode"
120
          scope="prototype"/>
121 121

  
122
	<bean id="wfNodeLoadContextsJob"
123
	      class="eu.dnetlib.msro.openaireplus.workflows.nodes.LoadContextsJobNode"
124
	      scope="prototype"/>
122
    <bean id="wfNodeLoadContextsJob"
123
          class="eu.dnetlib.msro.openaireplus.workflows.nodes.LoadContextsJobNode"
124
          scope="prototype"/>
125 125

  
126
	<bean id="wfNodeLoadEntityLinksJob"
127
	      class="eu.dnetlib.msro.openaireplus.workflows.nodes.LoadEntityLinksJobNode"
128
	      scope="prototype"/>
126
    <bean id="wfNodeLoadEntityLinksJob"
127
          class="eu.dnetlib.msro.openaireplus.workflows.nodes.LoadEntityLinksJobNode"
128
          scope="prototype"/>
129 129

  
130
	<bean id="wfNodePrepareIndexJob"
131
	      class="eu.dnetlib.msro.openaireplus.workflows.nodes.index.PrepareIndexDataJobNode"
132
	      scope="prototype" p:hbaseTable="${hbase.mapred.datatable}"/>
130
    <bean id="wfNodePrepareIndexJob"
131
          class="eu.dnetlib.msro.openaireplus.workflows.nodes.index.PrepareIndexDataJobNode"
132
          scope="prototype" p:hbaseTable="${hbase.mapred.datatable}"/>
133 133

  
134
	<bean id="wfNodePrepareStatsParams"
135
	      class="eu.dnetlib.msro.openaireplus.workflows.nodes.PrepareStatsParamJobNode"
136
	      scope="prototype"/>
134
    <bean id="wfNodePrepareStatsParams"
135
          class="eu.dnetlib.msro.openaireplus.workflows.nodes.PrepareStatsParamJobNode"
136
          scope="prototype"/>
137 137

  
138
	<bean id="wfNodePrepareLodParams"
139
	      class="eu.dnetlib.msro.openaireplus.workflows.nodes.PrepareLodParamJobNode"
140
	      scope="prototype"/>
138
    <bean id="wfNodePrepareLodParams"
139
          class="eu.dnetlib.msro.openaireplus.workflows.nodes.PrepareLodParamJobNode"
140
          scope="prototype"/>
141 141

  
142
	<bean id="wfNodeFinalizeIndexFeeding"
143
	      class="eu.dnetlib.msro.openaireplus.workflows.nodes.index.FinalizeIndexJobNode"
144
	      scope="prototype"/>
142
    <bean id="wfNodeFinalizeIndexFeeding"
143
          class="eu.dnetlib.msro.openaireplus.workflows.nodes.index.FinalizeIndexJobNode"
144
          scope="prototype"/>
145 145

  
146
	<bean id="wfNodeSwitchIndexes"
147
	      class="eu.dnetlib.msro.openaireplus.workflows.nodes.index.SwitchIndexesJobNode"
148
	      scope="prototype"/>
149
	<bean id="wfNodeSwitchSearchService"
150
	      class="eu.dnetlib.msro.openaireplus.workflows.nodes.index.SwitchSearchServiceJobNode"
151
	      scope="prototype"/>
146
    <bean id="wfNodeSwitchIndexes"
147
          class="eu.dnetlib.msro.openaireplus.workflows.nodes.index.SwitchIndexesJobNode"
148
          scope="prototype"/>
149
    <bean id="wfNodeSwitchSearchService"
150
          class="eu.dnetlib.msro.openaireplus.workflows.nodes.index.SwitchSearchServiceJobNode"
151
          scope="prototype"/>
152 152

  
153
	<!-- DEDUP -->
153
    <!-- DEDUP -->
154 154

  
155
	<!-- 	<bean id="wfNodeConfigureOfflineDataLoad" -->
156
	<!-- 		class="eu.dnetlib.msro.openaireplus.workflows.nodes.dedup.ConfigureOfflineDataLoadJobNode" -->
157
	<!-- 		scope="prototype" />		 -->
155
    <!-- 	<bean id="wfNodeConfigureOfflineDataLoad" -->
156
    <!-- 		class="eu.dnetlib.msro.openaireplus.workflows.nodes.dedup.ConfigureOfflineDataLoadJobNode" -->
157
    <!-- 		scope="prototype" />		 -->
158 158

  
159
	<!-- 	<bean id="wfNodeDefineHBaseDedupSchema" -->
160
	<!-- 		class="eu.dnetlib.msro.openaireplus.workflows.nodes.dedup.DefineHBaseDedupSchemaJobNode" -->
161
	<!-- 		scope="prototype" /> -->
159
    <!-- 	<bean id="wfNodeDefineHBaseDedupSchema" -->
160
    <!-- 		class="eu.dnetlib.msro.openaireplus.workflows.nodes.dedup.DefineHBaseDedupSchemaJobNode" -->
161
    <!-- 		scope="prototype" /> -->
162 162

  
163
	<!-- / DEDUP -->
163
    <!-- / DEDUP -->
164 164

  
165 165

  
166
	<bean id="wfNodePrepareIisMainParamsV2"
167
	      class="eu.dnetlib.msro.openaireplus.workflows.nodes.PrepareIISMainParamsV2JobNode"
168
	      scope="prototype" p:xqueryMdStoreService="${dnet.openaire.iis.mdstore.endpoint.xquery}"
169
	      p:xqueryDatasetStore="${dnet.openaire.iis.mdstore.dataset.xquery}"
170
	      p:xqueryObjectStores="${dnet.openaire.iis.objecstores.xquery}"
171
	      p:xqueryObjectStoreService="${dnet.openaire.iis.objecstore.endpoint.xquery}"
172
	      p:xqueryIsLookupService="${dnet.openaire.iis.islookup.endpoint.xquery}"/>
166
    <bean id="wfNodePrepareIisMainParamsV2"
167
          class="eu.dnetlib.msro.openaireplus.workflows.nodes.PrepareIISMainParamsV2JobNode"
168
          scope="prototype" p:xqueryMdStoreService="${dnet.openaire.iis.mdstore.endpoint.xquery}"
169
          p:xqueryDatasetStore="${dnet.openaire.iis.mdstore.dataset.xquery}"
170
          p:xqueryObjectStores="${dnet.openaire.iis.objecstores.xquery}"
171
          p:xqueryObjectStoreService="${dnet.openaire.iis.objecstore.endpoint.xquery}"
172
          p:xqueryIsLookupService="${dnet.openaire.iis.islookup.endpoint.xquery}"/>
173 173

  
174
	<bean id="wfNodePreparePreprocessParamsV2"
175
	      class="eu.dnetlib.msro.openaireplus.workflows.nodes.PrepareIISPreprocessingParamsV2JobNode"
176
	      scope="prototype" p:xqueryDatabaseService="${dnet.openaire.iis.dbservice.endpoint.xquery}"
177
	      p:xqueryMdStoreService="${dnet.openaire.iis.mdstore.endpoint.xquery}"
178
	      p:xqueryObjectStoreService="${dnet.openaire.iis.objecstore.endpoint.xquery}"
179
	      p:xqueryDatasetStore="${dnet.openaire.iis.mdstore.dataset.xquery}"
180
	      p:xqueryWosMDStore="${dnet.openaire.iis.mdstore.wos.xquery}"
181
	      p:xqueryDataciteObjectStore="${dnet.openaire.iis.objecstores.dataset.xquery}"
182
	      p:xqueryWosObjectStore="${dnet.openaire.iis.objecstores.wos.xquery}"
183
	      p:xqueryIsLookupService="${dnet.openaire.iis.islookup.endpoint.xquery}"/>
174
    <bean id="wfNodePreparePreprocessParamsV2"
175
          class="eu.dnetlib.msro.openaireplus.workflows.nodes.PrepareIISPreprocessingParamsV2JobNode"
176
          scope="prototype" p:xqueryDatabaseService="${dnet.openaire.iis.dbservice.endpoint.xquery}"
177
          p:xqueryMdStoreService="${dnet.openaire.iis.mdstore.endpoint.xquery}"
178
          p:xqueryObjectStoreService="${dnet.openaire.iis.objecstore.endpoint.xquery}"
179
          p:xqueryDatasetStore="${dnet.openaire.iis.mdstore.dataset.xquery}"
180
          p:xqueryWosMDStore="${dnet.openaire.iis.mdstore.wos.xquery}"
181
          p:xqueryDataciteObjectStore="${dnet.openaire.iis.objecstores.dataset.xquery}"
182
          p:xqueryWosObjectStore="${dnet.openaire.iis.objecstores.wos.xquery}"
183
          p:xqueryIsLookupService="${dnet.openaire.iis.islookup.endpoint.xquery}"/>
184 184

  
185
	<bean id="wfNodeIISCacheBuilder"
186
	      class="eu.dnetlib.msro.openaireplus.workflows.nodes.IISCacheBuilderJobNode"
187
	      scope="prototype" p:xqueryObjectStoreService="${dnet.openaire.iis.objecstore.endpoint.xquery}"/>
185
    <bean id="wfNodeIISCacheBuilder"
186
          class="eu.dnetlib.msro.openaireplus.workflows.nodes.IISCacheBuilderJobNode"
187
          scope="prototype" p:xqueryObjectStoreService="${dnet.openaire.iis.objecstore.endpoint.xquery}"/>
188 188

  
189
	<bean id="wfNodeDownloadFromMetadataOpenaire"
190
	      class="eu.dnetlib.msro.openaireplus.workflows.nodes.objectStore.DownloadFromMetadataOpenaire"
191
	      scope="prototype"/>
189
    <bean id="wfNodeDownloadFromMetadataOpenaire"
190
          class="eu.dnetlib.msro.openaireplus.workflows.nodes.objectStore.DownloadFromMetadataOpenaire"
191
          scope="prototype"/>
192 192

  
193
	<bean id="wfNodePatchHostedBy"
194
	      class="eu.dnetlib.msro.openaireplus.workflows.nodes.hostedby.PatchHostedByJobNode"
195
	      scope="prototype" p:mappedResultSetFactory-ref="mappedResultSetFactory"
196
	      p:resultSetClientFactory-ref="resultSetClientFactory"/>
193
    <bean id="wfNodePatchHostedBy"
194
          class="eu.dnetlib.msro.openaireplus.workflows.nodes.hostedby.PatchHostedByJobNode"
195
          scope="prototype" p:mappedResultSetFactory-ref="mappedResultSetFactory"
196
          p:resultSetClientFactory-ref="resultSetClientFactory"/>
197 197

  
198
	<bean id="wfNodeFindHostedBy"
199
	      class="eu.dnetlib.msro.openaireplus.workflows.nodes.hostedby.FindHostedByJobNode"
200
	      scope="prototype" p:mappedResultSetFactory-ref="mappedResultSetFactory"
201
	      p:resultSetClientFactory-ref="resultSetClientFactory"/>
198
    <bean id="wfNodeFindHostedBy"
199
          class="eu.dnetlib.msro.openaireplus.workflows.nodes.hostedby.FindHostedByJobNode"
200
          scope="prototype" p:mappedResultSetFactory-ref="mappedResultSetFactory"
201
          p:resultSetClientFactory-ref="resultSetClientFactory"/>
202 202

  
203
	<bean id="wfNodeUpsertHostedByApis"
204
	      class="eu.dnetlib.msro.openaireplus.workflows.nodes.hostedby.UpsertHostedByApisJobNode"
205
	      scope="prototype"/>
203
    <bean id="wfNodeUpsertHostedByApis"
204
          class="eu.dnetlib.msro.openaireplus.workflows.nodes.hostedby.UpsertHostedByApisJobNode"
205
          scope="prototype"/>
206 206

  
207
	<bean id="wfNodeSplitDatasetRecord"
208
	      class="eu.dnetlib.msro.openaireplus.workflows.nodes.datacite.SplitDatasetRecord"
209
	      p:resultSetClientFactory-ref="resultSetClientFactory" scope="prototype"/>
207
    <bean id="wfNodeSplitDatasetRecord"
208
          class="eu.dnetlib.msro.openaireplus.workflows.nodes.datacite.SplitDatasetRecord"
209
          p:resultSetClientFactory-ref="resultSetClientFactory" scope="prototype"/>
210 210

  
211
	<bean id="wfNodeCollectDatasetsByJournal"
212
	      class="eu.dnetlib.msro.openaireplus.workflows.nodes.datacite.CollectDatasetsByJournalJobNode"
213
	      p:resultSetClientFactory-ref="resultSetClientFactory" scope="prototype"/>
211
    <bean id="wfNodeCollectDatasetsByJournal"
212
          class="eu.dnetlib.msro.openaireplus.workflows.nodes.datacite.CollectDatasetsByJournalJobNode"
213
          p:resultSetClientFactory-ref="resultSetClientFactory" scope="prototype"/>
214 214

  
215
	<!-- Stats -->
216
	<bean id="wfNodeFindStatsService"
217
	      class="eu.dnetlib.msro.openaireplus.workflows.nodes.stats.FindStatsServiceJobNode"
218
	      scope="prototype"/>
215
    <!-- Stats -->
216
    <bean id="wfNodeFindStatsService"
217
          class="eu.dnetlib.msro.openaireplus.workflows.nodes.stats.FindStatsServiceJobNode"
218
          scope="prototype"/>
219 219

  
220
	<bean id="wfNodePromoteShadowStats"
221
	      class="eu.dnetlib.msro.openaireplus.workflows.nodes.stats.PromoteShadowStatsJobNode"
222
	      scope="prototype"/>
220
    <bean id="wfNodePromoteShadowStats"
221
          class="eu.dnetlib.msro.openaireplus.workflows.nodes.stats.PromoteShadowStatsJobNode"
222
          scope="prototype"/>
223 223

  
224
	<bean id="wfNodeRefreshShadowCache"
225
	      class="eu.dnetlib.msro.openaireplus.workflows.nodes.stats.RefreshShadowCacheJobNode"
226
	      scope="prototype"/>
224
    <bean id="wfNodeRefreshShadowCache"
225
          class="eu.dnetlib.msro.openaireplus.workflows.nodes.stats.RefreshShadowCacheJobNode"
226
          scope="prototype"/>
227 227

  
228
	<bean id="wfNodeValidateShadowStats"
229
	      class="eu.dnetlib.msro.openaireplus.workflows.nodes.stats.ValidateShadowStatsJobNode"
230
	      scope="prototype"/>
228
    <bean id="wfNodeValidateShadowStats"
229
          class="eu.dnetlib.msro.openaireplus.workflows.nodes.stats.ValidateShadowStatsJobNode"
230
          scope="prototype"/>
231 231

  
232
	<bean id="wfNodeBackupStatsCache"
233
	      class="eu.dnetlib.msro.openaireplus.workflows.nodes.stats.BackupStatsCacheJobNode"
234
	      scope="prototype"/>
232
    <bean id="wfNodeBackupStatsCache"
233
          class="eu.dnetlib.msro.openaireplus.workflows.nodes.stats.BackupStatsCacheJobNode"
234
          scope="prototype"/>
235 235

  
236
	<bean id="wfNodeRestoreStatsCache"
237
	      class="eu.dnetlib.msro.openaireplus.workflows.nodes.stats.RestoreStatsCacheJobNode"
238
	      scope="prototype"/>
236
    <bean id="wfNodeRestoreStatsCache"
237
          class="eu.dnetlib.msro.openaireplus.workflows.nodes.stats.RestoreStatsCacheJobNode"
238
          scope="prototype"/>
239 239

  
240
	<bean id="wfNodePromoteShadowCacheStats"
241
	      class="eu.dnetlib.msro.openaireplus.workflows.nodes.stats.PromoteShadowCacheStatsJobNode"
242
	      scope="prototype"/>
240
    <bean id="wfNodePromoteShadowCacheStats"
241
          class="eu.dnetlib.msro.openaireplus.workflows.nodes.stats.PromoteShadowCacheStatsJobNode"
242
          scope="prototype"/>
243 243

  
244
	<bean id="wfNodeMigrateStatsCache"
245
	      class="eu.dnetlib.msro.openaireplus.workflows.nodes.stats.MigrateStatsCacheJobNode"
246
	      scope="prototype"/>
244
    <bean id="wfNodeMigrateStatsCache"
245
          class="eu.dnetlib.msro.openaireplus.workflows.nodes.stats.MigrateStatsCacheJobNode"
246
          scope="prototype"/>
247 247

  
248
	<bean id="wfNodeRunMDStorePlugin"
249
	      class="eu.dnetlib.msro.openaireplus.workflows.nodes.RunMDStorePluginJobNode"
250
	      scope="prototype"/>
248
    <bean id="wfNodeRunMDStorePlugin"
249
          class="eu.dnetlib.msro.openaireplus.workflows.nodes.RunMDStorePluginJobNode"
250
          scope="prototype"/>
251 251

  
252
	<!-- Contexts -->
253
	<bean id="wfNodeProcessContexts"
254
	      class="eu.dnetlib.msro.openaireplus.workflows.nodes.contexts.ProcessContextsJobNode"
255
	      scope="prototype"/>
252
    <!-- Contexts -->
253
    <bean id="wfNodeProcessContexts"
254
          class="eu.dnetlib.msro.openaireplus.workflows.nodes.contexts.ProcessContextsJobNode"
255
          scope="prototype"/>
256 256

  
257
	<bean id="wfNodePrepareContextDbEntries"
258
	      class="eu.dnetlib.msro.openaireplus.workflows.nodes.contexts.PrepareContextDbEntriesJobNode"
259
	      scope="prototype"/>
257
    <bean id="wfNodePrepareContextDbEntries"
258
          class="eu.dnetlib.msro.openaireplus.workflows.nodes.contexts.PrepareContextDbEntriesJobNode"
259
          scope="prototype"/>
260 260

  
261
	<bean id="wfNodeSaveContextProfile"
262
	      class="eu.dnetlib.msro.openaireplus.workflows.nodes.contexts.SaveContextProfileJobNode"
263
	      scope="prototype"/>
261
    <bean id="wfNodeSaveContextProfile"
262
          class="eu.dnetlib.msro.openaireplus.workflows.nodes.contexts.SaveContextProfileJobNode"
263
          scope="prototype"/>
264 264

  
265
	<bean id="wfNodeCheckHDFSCounts"
266
	      class="eu.dnetlib.msro.openaireplus.workflows.nodes.CheckHDFSCountJobNode"
267
	      scope="prototype"/>
265
    <bean id="wfNodeCheckHDFSCounts"
266
          class="eu.dnetlib.msro.openaireplus.workflows.nodes.CheckHDFSCountJobNode"
267
          scope="prototype"/>
268 268

  
269
	<!-- Data Flow Monitoring -->
270
	<bean id="wfNodeTriggerPrepublicMonitoringScenario"
271
	      class="eu.dnetlib.msro.openaireplus.workflows.nodes.dataFlowMonitoring.TriggerPrepublicMonitoringScenarioJobNode"
272
	      scope="prototype"/>
273
	<bean id="wfNodeTriggerIndexMonitoringScenario"
274
	      class="eu.dnetlib.msro.openaireplus.workflows.nodes.dataFlowMonitoring.TriggerIndexMonitoringScenarioJobNode"
275
	      scope="prototype"/>
269
    <!-- Data Flow Monitoring -->
270
    <bean id="wfNodeTriggerPrepublicMonitoringScenario"
271
          class="eu.dnetlib.msro.openaireplus.workflows.nodes.dataFlowMonitoring.TriggerPrepublicMonitoringScenarioJobNode"
272
          scope="prototype"/>
273
    <bean id="wfNodeTriggerIndexMonitoringScenario"
274
          class="eu.dnetlib.msro.openaireplus.workflows.nodes.dataFlowMonitoring.TriggerIndexMonitoringScenarioJobNode"
275
          scope="prototype"/>
276 276

  
277
	<bean id="wfNodeFeedMissingClaims" class="eu.dnetlib.msro.openaireplus.workflows.nodes.index.FeedMissingClaimsJobNode"
278
	      p:queue-ref="recentResultsQueue" p:oafToIndexRecordFactory-ref="apiOafToIndexRecordFactory"
279
	      scope="prototype"/>
277
    <bean id="wfNodeFeedMissingClaims"
278
          class="eu.dnetlib.msro.openaireplus.workflows.nodes.index.FeedMissingClaimsJobNode"
279
          p:queue-ref="recentResultsQueue" p:oafToIndexRecordFactory-ref="apiOafToIndexRecordFactory"
280
          scope="prototype"/>
280 281

  
281 282

  
282
	<bean id="wfNodePrepareHostedbyUpdateSQL"
283
	      class="eu.dnetlib.msro.openaireplus.workflows.nodes.hostedby.PrepareHostedbyUpdateSQL"
284
	      scope="prototype"/>
283
    <bean id="wfNodePrepareHostedbyUpdateSQL"
284
          class="eu.dnetlib.msro.openaireplus.workflows.nodes.hostedby.PrepareHostedbyUpdateSQL"
285
          scope="prototype"/>
285 286

  
286
	<bean id="wfNodeVREPost"
287
	      class="eu.dnetlib.msro.openaireplus.workflows.nodes.vre.VREPostJobNode"
288
	      scope="prototype"/>
287
    <bean id="wfNodeVREPost"
288
          class="eu.dnetlib.msro.openaireplus.workflows.nodes.vre.VREPostJobNode"
289
          scope="prototype"/>
289 290

  
290
	<bean id="wfNodeGenerateFETContext"
291
	      class="eu.dnetlib.msro.openaireplus.workflows.nodes.contexts.GenerateFETH2020ContextJobNode"
292
	      scope="prototype"/>
291
    <bean id="wfNodeGenerateFETContext"
292
          class="eu.dnetlib.msro.openaireplus.workflows.nodes.contexts.GenerateFETH2020ContextJobNode"
293
          scope="prototype"/>
293 294

  
294
	<bean id="listActionManagerSetsValues" lazy-init="true"
295
	      class="eu.dnetlib.functionality.modular.ui.workflows.values.ListActionManagerSetsValues"
296
	      p:name="actionSets"/>
295
    <bean id="listActionManagerSetsValues" lazy-init="true"
296
          class="eu.dnetlib.functionality.modular.ui.workflows.values.ListActionManagerSetsValues"
297
          p:name="actionSets"/>
297 298

  
298
	<bean id="wfNodeApplyClaimRels"
299
	      class="eu.dnetlib.msro.openaireplus.workflows.nodes.claims.ApplyClaimRelsJobNode"
300
	      scope="prototype"/>
299
    <bean id="wfNodeApplyClaimRels"
300
          class="eu.dnetlib.msro.openaireplus.workflows.nodes.claims.ApplyClaimRelsJobNode"
301
          scope="prototype"/>
301 302

  
302
	<bean id="wfNodeApplyClaimUpdates"
303
	      class="eu.dnetlib.msro.openaireplus.workflows.nodes.claims.ApplyClaimUpdatesJobNode"
304
	      scope="prototype"/>
303
    <bean id="wfNodeApplyClaimUpdates"
304
          class="eu.dnetlib.msro.openaireplus.workflows.nodes.claims.ApplyClaimUpdatesJobNode"
305
          scope="prototype"/>
305 306

  
306
	<bean id="wfNodeFilterManagedDatasources"
307
	      class="eu.dnetlib.msro.openaireplus.workflows.nodes.FilterManagedDatasourcesJobNode"
308
	      scope="prototype"/>
307
    <bean id="wfNodeFilterManagedDatasources"
308
          class="eu.dnetlib.msro.openaireplus.workflows.nodes.FilterManagedDatasourcesJobNode"
309
          scope="prototype"/>
309 310

  
310 311

  
311 312
    <bean id="wfNodeExtractOutputPath"
312 313
          class="eu.dnetlib.msro.openaireplus.workflows.nodes.actions.ExtractOutputPathJobNode"
313 314
          scope="prototype"/>
314 315

  
315
	<bean id="wfNodeLoadBulkTaggingConfiguration"
316
		  class="eu.dnetlib.msro.openaireplus.workflows.nodes.bulktag.LoadBulkTaggingConfigurationJobNode"
317
		  p:xquery="${dnet.openaire.bulktag.xquery}"
318
		  scope="prototype"/>
319
		  
320
	 <!-- Consistency nodes -->
321
	 <bean id="wfNodeFixRepoMdstoreSizes"
316
    <bean id="wfNodeLoadBulkTaggingConfiguration"
317
          class="eu.dnetlib.msro.openaireplus.workflows.nodes.bulktag.LoadBulkTaggingConfigurationJobNode"
318
          p:xquery="${dnet.openaire.bulktag.xquery}"
319
          scope="prototype"/>
320

  
321
    <!-- Consistency nodes -->
322
    <bean id="wfNodeFixRepoMdstoreSizes"
322 323
          class="eu.dnetlib.msro.openaireplus.workflows.nodes.consistency.FixRepoMdstoreSizesJobNode"
323 324
          scope="prototype"/>
324
          
325
     <bean id="wfNodeVerifyMdStoreSizes"
325

  
326
    <bean id="wfNodeVerifyMdStoreSizes"
326 327
          class="eu.dnetlib.msro.openaireplus.workflows.nodes.consistency.VerifyMdStoreSizesJobNode"
327 328
          scope="prototype"/>
328 329

  
329
     <bean id="wfNodeFindInvalidRepoProfiles"
330
    <bean id="wfNodeFindInvalidRepoProfiles"
330 331
          class="eu.dnetlib.msro.openaireplus.workflows.nodes.consistency.FindInvalidRepoProfilesJobNode"
331 332
          scope="prototype"/>
332
          
333
     <bean id="wfNodeFindInvalidMetaWorkflows"
333

  
334
    <bean id="wfNodeFindInvalidMetaWorkflows"
334 335
          class="eu.dnetlib.msro.openaireplus.workflows.nodes.consistency.FindInvalidMetaWorkflowsJobNode"
335 336
          scope="prototype"/>
336 337

  
337
     <bean id="wfNodeFindInvalidWorkflows"
338
    <bean id="wfNodeFindInvalidWorkflows"
338 339
          class="eu.dnetlib.msro.openaireplus.workflows.nodes.consistency.FindInvalidWorkflowsJobNode"
339 340
          scope="prototype"/>
340
          
341
      <bean id="wfNodeFindInvalidStores"
341

  
342
    <bean id="wfNodeFindInvalidStores"
342 343
          class="eu.dnetlib.msro.openaireplus.workflows.nodes.consistency.FindInvalidStoresJobNode"
343 344
          scope="prototype"/>
344 345

  
346
    <bean id="wfNodeFetchOntologies"
347
          class="eu.dnetlib.msro.openaireplus.workflows.nodes.FetchOntologiesJobNode"
348
          scope="prototype"/>
349

  
345 350
</beans>
modules/dnet-openaireplus-workflows/branches/solr75/pom.xml
3 3
	<parent>
4 4
		<groupId>eu.dnetlib</groupId>
5 5
		<artifactId>dnet45-parent</artifactId>
6
		<version>1.0.0-SNAPSHOT</version>
6
		<version>1.0.0</version>
7 7
		<relativePath />
8 8
	</parent>
9 9
	<modelVersion>4.0.0</modelVersion>
......
55 55
		<dependency>
56 56
			<groupId>eu.dnetlib</groupId>
57 57
			<artifactId>dnet-openaireplus-mapping-utils</artifactId>
58
			<version>[6.2.20-solr75-SNAPSHOT]</version>
58
			<version>[6.2.21-solr75]</version>
59 59
		</dependency>
60 60
		<dependency>
61 61
			<groupId>eu.dnetlib</groupId>
......
98 98
		<dependency>
99 99
			<groupId>eu.dnetlib</groupId>
100 100
			<artifactId>dnet-index-client</artifactId>
101
			<version>[2.3.2-solr75-SNAPSHOT]</version>
101
			<version>[2.3.2-solr75]</version>
102 102
		</dependency>
103 103

  
104 104
		<dependency>
......
110 110
		<dependency>
111 111
			<groupId>eu.dnetlib</groupId>
112 112
			<artifactId>dnet-deduplication</artifactId>
113
			<version>[1.0.0,2.0.0)</version>
113
			<version>[1.6.1-solr75]</version>
114 114
		</dependency>
115 115

  
116 116
		<!-- modular ui and servlet api are here because of the stats controller -->
117 117
		<dependency>
118 118
			<groupId>eu.dnetlib</groupId>
119 119
			<artifactId>dnet-directindex-api</artifactId>
120
			<version>[2.0.5-solr75-SNAPSHOT]</version>
120
			<version>[2.1.6-solr75]</version>
121 121
		</dependency>
122 122

  
123 123
		<dependency>

Also available in: Unified diff