Project

General

Profile

1
<workflow-app xmlns="uri:oozie:workflow:0.2" name="test-transformers_documentssimilarity_with_fulltext_sampledataproducer">
2
    <start to="producer"/>
3
    <action name="producer">
4
        <java>
5
            <job-tracker>${jobTracker}</job-tracker>
6
            <name-node>${nameNode}</name-node>
7
			<!-- The data generated by this node is deleted in this section -->
8
			<prepare>
9
				<delete path="${nameNode}${workingDir}/producer" />
10
				<mkdir path="${nameNode}${workingDir}/producer" />
11
			</prepare>
12
            <configuration>
13
                <property>
14
                    <name>mapred.job.queue.name</name>
15
                    <value>${queueName}</value>
16
                </property>
17
            </configuration>
18
            <!-- This is simple wrapper for the Java code -->
19
			<main-class>eu.dnetlib.iis.core.java.ProcessWrapper</main-class>
20
			<!-- The business Java code that gets to be executed -->
21
			<arg>eu.dnetlib.iis.core.java.jsonworkflownodes.Producer</arg>
22
			<!-- Specification of the output ports -->
23
            <arg>-C{input_person,
24
				eu.dnetlib.iis.importer.schemas.Person,
25
				eu/dnetlib/iis/transformers/documentssimilarity_with_fulltext/sampledataproducer/data/input_person.json}</arg>
26
            <arg>-C{input_metadata,
27
				eu.dnetlib.iis.transformers.metadatamerger.schemas.ExtractedDocumentMetadataMergedWithOriginal,
28
				eu/dnetlib/iis/transformers/documentssimilarity_with_fulltext/sampledataproducer/data/input_metadata.json}</arg>
29
            <arg>-C{input_document_text,
30
				eu.dnetlib.iis.metadataextraction.schemas.DocumentText,
31
				eu/dnetlib/iis/transformers/documentssimilarity_with_fulltext/sampledataproducer/data/input_document_text.json}</arg>
32

    
33
			<!-- All input and output ports have to be bound to paths in HDFS, working 
34
				directory has to be specified as well -->
35
            <arg>-SworkingDir=${workingDir}/producer/working_dir</arg>
36
            <arg>-Oinput_person=${workingDir}/producer/input_person</arg>
37
            <arg>-Oinput_metadata=${workingDir}/producer/input_metadata</arg>
38
            <arg>-Oinput_document_text=${workingDir}/producer/input_document_text</arg>
39
        </java>
40
        <ok to="transformer_documentssimilarity_with_fulltext"/>
41
        <error to="fail"/>
42
    </action>
43
    <action name="transformer_documentssimilarity_with_fulltext">
44
        <sub-workflow>
45
            <app-path>${wf:appPath()}/transformer_documentssimilarity_with_fulltext</app-path>
46
            <configuration>
47
                <property>
48
                    <name>jobTracker</name>
49
                    <value>${jobTracker}</value>
50
                </property>
51
                <property>
52
                    <name>nameNode</name>
53
                    <value>${nameNode}</value>
54
                </property>
55
                <property>
56
                    <name>queueName</name>
57
                    <value>${queueName}</value>
58
                </property>
59
                <!-- Working directory of the subworkflow -->
60
                <property>
61
                    <name>workingDir</name>
62
                    <value>${workingDir}/transformer_documentssimilarity_with_fulltext/working_dir</value>
63
                </property>
64
                <!-- Input ports. -->
65
                <property>
66
                    <name>input_person</name>
67
                    <value>${workingDir}/producer/input_person</value>
68
                </property>
69
                <property>
70
                    <name>input_metadata</name>
71
                    <value>${workingDir}/producer/input_metadata</value>
72
                </property>
73
                <property>
74
                    <name>input_document_text</name>
75
                    <value>${workingDir}/producer/input_document_text</value>
76
                </property>
77
                <!-- Output port bound to given path -->
78
                <property>
79
                    <name>output_document_metadata</name>
80
                    <value>${workingDir}/transformer_documentssimilarity_with_fulltext/output_document_metadata</value>
81
                </property>
82
            </configuration>
83
        </sub-workflow>
84
        <ok to="consumer"/>
85
        <error to="fail"/>
86
    </action>
87
    <action name="consumer">
88
		<java>
89
			<job-tracker>${jobTracker}</job-tracker>
90
			<name-node>${nameNode}</name-node>
91
			<configuration>
92
				<property>
93
					<name>mapred.job.queue.name</name>
94
					<value>${queueName}</value>
95
				</property>
96
			</configuration>
97
			<!-- This is simple wrapper for the Java code -->
98
			<main-class>eu.dnetlib.iis.core.java.ProcessWrapper</main-class>
99
			<!-- The business Java code that gets to be executed -->
100
			<arg>eu.dnetlib.iis.core.java.jsonworkflownodes.TestingConsumer</arg>
101
			<!-- Specification of the input ports -->
102
			<arg>-C{output_document_metadata,
103
				eu.dnetlib.iis.documentssimilarity_with_fulltext.schemas.DocumentMetadata,
104
				eu/dnetlib/iis/transformers/documentssimilarity_with_fulltext/sampledataproducer/data/output_document_metadata.json}</arg>
105
			<!-- All input and output ports have to be bound to paths in HDFS, working 
106
				directory has to be specified as well -->
107
			<arg>-SworkingDir=${workingDir}/consumer/working_dir</arg>
108
			<arg>-Ioutput_document_metadata=${workingDir}/transformer_documentssimilarity_with_fulltext/output_document_metadata</arg>
109
		</java>
110
		<ok to="end" />
111
		<error to="fail" />
112
	</action>    
113
    <kill name="fail">
114
		<message>Unfortunately, the workflow failed -- error message:
115
			[${wf:errorMessage(wf:lastErrorNode())}]</message>
116
    </kill>
117
    <end name="end"/>
118
</workflow-app>
(2-2/2)