hdoc_to_mongo.ant 2.36 KB
Newer Older
1
<project name="hdoc_to_mongo" default="mongoDB">
2
3
4

	<property file="build.properties"/>
	
5
6
7
8
9
10
	<taskdef resource="net/sf/antcontrib/antlib.xml">
        <classpath>
            <pathelement location="lib/ant-contrib.jar"/>
        </classpath>
    </taskdef> 
		
11
	<target name="preparation">
12
13
        <mkdir dir="${tmpdir}"/>
        <chmod perm="777" dir="${tmpdir}"></chmod>
14
15
16
17
18
		<delete dir="${outputPath}" />
        <mkdir dir="${outputPath}"/>
        <chmod perm="777" dir="${outputPath}"></chmod>
    </target>
	
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
	<target name="main" depends="preparation">
        <for param="file">
            <path>
                <fileset dir="${inputPath}" includes="*.hdoc"/>
            </path>
            <sequential>
                <var name="fileName" unset="true"/>
                <basename file="@{file}" property="fileName"/>
                
                <antcall target="unzipHdoc">
                    <param name="file" value="${fileName}"/>
                </antcall>
                
                <antcall target="convertHdoc">
                    <param name="file" value="${fileName}"/>
                </antcall>
				
				<antcall target="clean" />
            </sequential>
        </for>
    </target>
	
    <target name="unzipHdoc">        
        <echo>Unzip ${inputPath}/${file}</echo>
43
44
		
		<!--unzips the hdoc to be converted-->
45
		<unzip dest="${tmpdir}" src="${inputPath}/${file}"/>
46
47
    </target>
	
48
49
50
	<target name="convertHdoc">
		<echo>Convert ${inputPath}/${file}</echo>
		<basename property="basename" file="${inputPath}/${file}" suffix=".hdoc"/>
51
        <xslt in="${tmpdir}/content.xml" out="${outputPath}/${basename}.json" style="xsl/main.xsl">
52
			<param name="fileName" expression="${basename}"/>
53
54
			<param name="inputPath" expression="${inputPath}"/>
		</xslt>
55
56
    </target>
	
57
58
59
60
	<target name="clean">
		<delete dir="${tmpdir}" />
    </target>
	
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
	<condition property="isWindows">
		<os family="windows" />
	</condition>

	<condition property="isUnix">
		<os family="unix" />
	</condition>

	<target name="windowsMongoDB" if="isWindows" depends="main">
		<exec executable="node" dir="mongo">
			<arg line="main.js"/>
		</exec>
	</target>

	<target name="linuxMongoDB" if="isUnix" depends="main">
		<exec executable="nodejs" dir="mongo">
			<arg line="main.js"/>
		</exec>
	</target>

	<target name="mongoDB" depends="windowsMongoDB, linuxMongoDB">
		<echo>End</echo>
	</target>
84
</project>