Skip to content
Snippets Groups Projects
  • gmantele's avatar
    56d47484
    [UWS,TAP] Fix bug about UPLOAD: file upload (multipart/form-data) with a POST... · 56d47484
    gmantele authored
    [UWS,TAP] Fix bug about UPLOAD: file upload (multipart/form-data) with a POST to the SetJobParam action was not possible & bug in the COS library about line termintation (it should be CRLF but some clients end lines with LF and that should have been managed by the COS lib but wasn't ; correction applied by myself but feedback from the lib developer is waited).
    56d47484
    History
    [UWS,TAP] Fix bug about UPLOAD: file upload (multipart/form-data) with a POST...
    gmantele authored
    [UWS,TAP] Fix bug about UPLOAD: file upload (multipart/form-data) with a POST to the SetJobParam action was not possible & bug in the COS library about line termintation (it should be CRLF but some clients end lines with LF and that should have been managed by the COS lib but wasn't ; correction applied by myself but feedback from the lib developer is waited).
buildTAP.xml 4.77 KiB
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE project>
<project name="tap" basedir="." default="buildLib">
	
	<property name="version" value="1.1b" />

	<property name="srcDir" value="src" />
	<property name="libDir" value="lib" />
	<property name="compileDir" value="antBuild" />
	<property name="classesDir" value="${compileDir}"/>
	<property name="javadocDir" value="javadoc/tap" />
	
	<property name="cosJar" value="${libDir}/cos-1.5beta.jar" />
	<property name="stilJar" value="${libDir}/stil3.0-5.jar" />
		
	<property name="tapPath" value="tap/**,adql/**,uws/**,cds/**" />
	<property name="jsonPath" value="org/json/**" />
	<property name="extLibsPath" value="com/oreilly/servlet/**,nom/tam/**,org/apache/tools/bzip2/**,uk/ac/starlink/**" />
	<property name="licensePath" value="COPYING.LESSER.txt" />
	<property name="includesList" value="${tapPath},${jsonPath},${extLibsPath},${licensePath}" />

	<property name="jarDest" value="." />
	<property name="libJarFile" value="${jarDest}/tap_${version}.jar" />
	<property name="srcJarFile" value="${jarDest}/tap_src_${version}.jar" />
	<property name="javadocJarFile" value="${jarDest}/tap_javadoc_${version}.jar" />
	
	<fail message="Missing property: CATALINA ! It provides the path toward a directory or a JAR which contains the following class: org.apache.catalina.connector.ClientAbortException.">
		<condition><not><isset property="CATALINA"/></not></condition>
	</fail>
	<fail message="The property SERVLET-API must be set! It provides the path toward a directory or a JAR which contains all classes inside javax.servlet.">
		<condition><not><isset property="SERVLET-API"/></not></condition>
	</fail>
	
	<path id="tap.classpath">
		<pathelement location="${cosJar}" />
		<pathelement location="${stilJar}" />
		<pathelement location="${CATALINA}" />
		<pathelement location="${SERVLET-API}" />
	</path>
	
	<echo>TAP LIBRARY VERSION = ${version}</echo>
	
	<!-- BUILD ALL TASK -->
	<target name="buildAll" depends="buildLibAndSrc,buildJavadoc"
			description="Build three JARs: the library (classes), its sources and its Javadoc. Then, except the JAR, all the compiled javadoc files are deleted." >
		<antcall target="cleanJavadocBuild" />
	</target>
	
	<target name="cleanAll" depends="clean,cleanJavadoc" description="Delete all files generated by this ANT file for the set version." />
			
	<!-- LIB & SOURCES -->
	<target name="clean" description="Delete the JARs for the library (classes) and for its sources for the set version.">
		<delete file="${libJarFile}" failonerror="false" />
		<delete file="${srcJarFile}" failonerror="false" />
		<delete dir="${compileDir}" failonerror="false" />
	</target>
	
	<target name="compileLib" depends="clean" description="Build all the classes of the TAP library. This target is particularly usefull because it lets highlighting missing dependencies.">
		<mkdir dir="${compileDir}" />
		<javac destdir="${compileDir}" srcdir="${srcDir}" includes="${includesList}" includeantruntime="false">
			<classpath refid="tap.classpath" />
		</javac>
	</target>
	
	<target name="buildLib" depends="compileLib" description="After 'clean', build the library JAR (only classes).">
		<echo>Generate the library:</echo>
		<jar basedir="${classesDir}" destfile="${libJarFile}" includes="${includesList}">
			<zipfileset src="${cosJar}" excludes="META-INF/*" />
			<zipfileset src="${stilJar}" excludes="META-INF/*" />
		</jar>
		<delete dir="${compileDir}" failonerror="true" />
	</target>
	
	<target name="buildLibAndSrc" depends="buildLib" description="After 'clean' and 'buildLib', build the sources JAR (only .java).">
		<jar compress="false" baseDir="${srcDir}" destfile="${srcJarFile}" includes="${includesList}">
			<fileset file="${cosJar}" />
			<fileset file="${stilJar}" />
		</jar>
	</target>
	
	<!-- JAVADOC -->
	<target name="cleanJavadocBuild" description="Delete the whole generated/compiled Javadoc directory.">
		<delete dir="${javadocDir}" failonerror="false" />
	</target>
		
	<target name="cleanJavadoc" depends="cleanJavadocBuild" description="Delete the Javadoc JAR AND the whole generated/compiled Javadoc directory.">
		<delete file="${jarDest}/${javadocJarFile}" failonerror="false" />
	</target>
	
	<target name="compileJavadoc" depends="cleanJavadoc" description="After 'cleanJavadoc', compile the whole Javadoc.">
		<javadoc access="protected" author="true" destdir="${javadocDir}" nodeprecated="false" nodeprecatedlist="false" noindex="false" nonavbar="false" notree="false" source="1.7" splitindex="true" use="true" version="true">
			<packageset dir="${srcDir}" includes="${includesList}" />
			<classpath refid="tap.classpath" />
		</javadoc>
    </target>
	
	<target name="buildJavadoc" depends="compileJavadoc" description="After 'compileJavadoc', build the Javadoc JAR.">
		<jar destfile="${javadocJarFile}" basedir="${javadocDir}" />
	</target>
	
</project>