aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorChristian Maierhofer <cmaierhofer@iaik.tugraz.at>2016-07-01 13:36:51 +0200
committerAndreas Fitzek <andreas.fitzek@iaik.tugraz.at>2016-08-17 16:55:28 +0200
commitc98ea00dffa6f8eaf7d78411435df77e64f5f2cd (patch)
tree9768d064eb9b2ec0f42ca1636dce7dae0864f977
parentbfff992ce5e09e176b6509752e4404dd4286544b (diff)
downloadpdf-as-4-c98ea00dffa6f8eaf7d78411435df77e64f5f2cd.tar.gz
pdf-as-4-c98ea00dffa6f8eaf7d78411435df77e64f5f2cd.tar.bz2
pdf-as-4-c98ea00dffa6f8eaf7d78411435df77e64f5f2cd.zip
build tasks for pdfbox2
-rw-r--r--pdf-as-cli/build.gradle90
-rw-r--r--pdf-as-lib/src/configuration/cfg/advancedconfig.properties3
-rw-r--r--pdf-as-lib/src/main/resources/config/config.zipbin1276515 -> 1276538 bytes
-rw-r--r--pdf-as-pdfbox-2/build.gradle11
-rw-r--r--pdf-as-web/build.gradle216
5 files changed, 271 insertions, 49 deletions
diff --git a/pdf-as-cli/build.gradle b/pdf-as-cli/build.gradle
index 8cc9ef0f..51bdbe13 100644
--- a/pdf-as-cli/build.gradle
+++ b/pdf-as-cli/build.gradle
@@ -15,17 +15,29 @@ task releases(type: Copy) {
into rootDir.toString() + "/releases/" + version
}
-releases.dependsOn jar
-releases.dependsOn sourcesJar
-releases.dependsOn distZip
-releases.dependsOn distTar
+configurations {
+ pdfBox2Compile
+ pdfBox1Compile
+ }
+sourceSets{
+ pdfBox2{
+ compileClasspath = configurations.pdfBox2Compile
+ runtimeClasspath= configurations.pdfBox2Compile
+ }
+ pdfBox1{
+ compileClasspath = configurations.pdfBox1Compile
+ runtimeClasspath= configurations.pdfBox1Compile
+ }
+}
+
dependencies {
compile project (':pdf-as-lib')
compile project (':signature-standards:sigs-pkcs7detached')
compile project (':signature-standards:sigs-pades')
compile project (':pdf-as-moa')
- compile project (':pdf-as-pdfbox')
+ pdfBox1Compile project (':pdf-as-pdfbox')
+ pdfBox2Compile project (':pdf-as-pdfbox-2')
compile group: 'commons-collections', name: 'commons-collections', version: '3.2'
compile group: 'commons-cli', name: 'commons-cli', version: '1.2'
compile 'ch.qos.logback:logback-classic:1.1.2'
@@ -33,6 +45,74 @@ dependencies {
testCompile group: 'junit', name: 'junit', version: '4.+'
}
+
+startScripts{
+ classpath+=sourceSets.pdfBox1.compileClasspath
+}
+
+compileJava{
+ classpath=sourceSets.main.compileClasspath
+ classpath+=sourceSets.pdfBox1.compileClasspath
+ classpath+=sourceSets.pdfBox2.compileClasspath
+}
+
+
+task pdfbox2Startscript(type: CreateStartScripts) {
+ description "Creates OS specific scripts to call the 'other' entry point"
+
+ classpath = startScripts.classpath.minus(configurations.pdfBox1Compile) + sourceSets.pdfBox2.compileClasspath
+ outputDir = startScripts.outputDir
+ mainClassName = startScripts.mainClassName
+ applicationName = startScripts.applicationName+"-pdfbox2"
+}
+
+distZip {
+
+ doFirst{
+ baseName = archivesBaseName
+ duplicatesStrategy = DuplicatesStrategy.EXCLUDE
+
+ into("${baseName}-${version}/lib") {
+ from startScripts.classpath
+ }
+ into("${baseName}-${version}/lib") {
+ from pdfbox2Startscript.classpath
+ }
+ into("${baseName}-${version}/bin") {
+ from pdfbox2Startscript
+ }
+ }
+}
+
+distTar {
+ doFirst{
+ baseName = archivesBaseName
+ duplicatesStrategy = DuplicatesStrategy.EXCLUDE
+
+ into("${baseName}-${version}/lib") {
+ from startScripts.classpath
+ }
+ into("${baseName}-${version}/lib") {
+ from pdfbox2Startscript.classpath
+ }
+ into("${baseName}-${version}/bin") {
+ from pdfbox2Startscript
+ }
+ }
+}
+
+
+releases.dependsOn jar
+releases.dependsOn sourcesJar
+releases.dependsOn distZip
+releases.dependsOn distTar
+
+distZip.dependsOn startScripts
+startScripts.dependsOn pdfbox2Startscript
+
+
+
test {
systemProperties 'property': 'value'
}
+
diff --git a/pdf-as-lib/src/configuration/cfg/advancedconfig.properties b/pdf-as-lib/src/configuration/cfg/advancedconfig.properties
index 7cdb87b2..89e9ed1e 100644
--- a/pdf-as-lib/src/configuration/cfg/advancedconfig.properties
+++ b/pdf-as-lib/src/configuration/cfg/advancedconfig.properties
@@ -97,4 +97,5 @@ default.verifier.01=at.gv.egiz.pdfas.sigs.pades.PAdESVerifier
#Enable background color detection
#sigblock.placement.bgcolor.detection.enabled=true
-#sigblock.placement.debug.file=/home/cmaierhofer/temp/debugImg.png \ No newline at end of file
+#sigblock.placement.debug.file=/home/cmaierhofer/temp/debugImg.png
+#runtime.backend=PDFBOX_2_BACKEND \ No newline at end of file
diff --git a/pdf-as-lib/src/main/resources/config/config.zip b/pdf-as-lib/src/main/resources/config/config.zip
index 37416895..fb9dd1c6 100644
--- a/pdf-as-lib/src/main/resources/config/config.zip
+++ b/pdf-as-lib/src/main/resources/config/config.zip
Binary files differ
diff --git a/pdf-as-pdfbox-2/build.gradle b/pdf-as-pdfbox-2/build.gradle
index f62604a3..c4e51f5c 100644
--- a/pdf-as-pdfbox-2/build.gradle
+++ b/pdf-as-pdfbox-2/build.gradle
@@ -5,7 +5,15 @@ jar {
manifest {
attributes 'Implementation-Title': 'PDF-AS-4 PDFBOX 2 Backend'
}
-}
+
+// from {
+// configurations.compile.collect{it}
+
+// }{
+// include "pdfbox*"
+// }
+ }
+
repositories {
mavenCentral()
@@ -14,6 +22,7 @@ repositories {
task releases(type: Copy) {
from jar.outputs
into rootDir.toString() + "/releases/" + version
+
}
releases.dependsOn jar
diff --git a/pdf-as-web/build.gradle b/pdf-as-web/build.gradle
index f8e33ba0..de3cb96b 100644
--- a/pdf-as-web/build.gradle
+++ b/pdf-as-web/build.gradle
@@ -17,10 +17,16 @@ buildscript {
apply plugin: 'org.akhikhl.gretty'
+configurations { providedCompile
+ pdfbox2
+ pdfbox1
+ }
+
jar {
manifest {
attributes 'Implementation-Title': 'PDF-AS-WEB'
}
+
}
repositories {
@@ -28,18 +34,18 @@ repositories {
mavenCentral()
}
-configurations { providedCompile }
sourceSets.main.compileClasspath += configurations.providedCompile
sourceSets.test.compileClasspath += configurations.providedCompile
sourceSets.test.runtimeClasspath += configurations.providedCompile
+
dependencies {
compile project (':pdf-as-lib')
compile project (':pdf-as-moa')
compile project (':signature-standards:sigs-pkcs7detached')
compile project (':signature-standards:sigs-pades')
- compile project (':pdf-as-pdfbox-2')
+ pdfbox1 project (':pdf-as-pdfbox')
compile project (':pdf-as-web-status')
compile project (':pdf-as-web-statistic-api')
compile group: 'commons-fileupload', name: 'commons-fileupload', version: '1.3.1'
@@ -53,6 +59,8 @@ dependencies {
compile 'ch.qos.logback:logback-core:1.1.3'
compile 'org.json:json:20160212'
+ pdfbox2 project (':pdf-as-pdfbox-2')
+
providedCompile 'javax.servlet:javax.servlet-api:3.0.1'
testCompile group: 'junit', name: 'junit', version: '4.+'
}
@@ -71,6 +79,10 @@ test {
}
task downloadTomcat << {
+ if(!project.buildDir.exists()){
+ project.buildDir.mkdirs()
+ }
+
String url = "http://repo1.maven.org/maven2/org/apache/tomcat/tomcat/##VERSION##/tomcat-##VERSION##.zip"
String filename = project.buildDir.toString() + "/tomcat-##VERSION##.zip";
@@ -105,46 +117,72 @@ task extractTomcat(dependsOn: downloadTomcat, type: Copy) {
into outputDir
}
-task cleanWebAppsInTomcat(dependsOn: extractTomcat) << {
- String targetDir = project.buildDir.toString() + "/tomcat-##VERSION##/apache-tomcat-##VERSION##/webapps/";
- targetDir = targetDir.replaceAll("##VERSION##", project.tomcatVersion);
-
- def webappDir = new File(targetDir);
- println "Removing: " + webappDir.toString()
- def result = webappDir.deleteDir() // Returns true if all goes well, false otherwise.
- println result.toString()
-
- assert result
-
- webappDir.mkdirs()
+def deployVersions=['','-pdfbox2']
+
+task copyTomcat(dependsOn: extractTomcat)<<{
+ deployVersions.each{
+ String targetDir = project.buildDir.toString() + "/tomcat-##VERSION##"+it;
+ targetDir = targetDir.replaceAll("##VERSION##", project.tomcatVersion);
+ println "copiing to "+targetDir
+ copy{
+ with extractTomcat
+ into targetDir
+ }
+ }
}
-task putTemplateIntoTomcat(dependsOn: cleanWebAppsInTomcat, type: Copy) {
- String source = project.projectDir.toString() + "/";
-
- String targetDir = "build/tomcat-##VERSION##/apache-tomcat-##VERSION##";
- targetDir = targetDir.replaceAll("##VERSION##", project.tomcatVersion);
-
- from 'src/main/assembly/tomcat'
- into targetDir
+task cleanWebAppsInTomcat(dependsOn: copyTomcat) << {
+ deployVersions.each{
+ String targetDir = project.buildDir.toString() + "/tomcat-##VERSION##"+it+"/apache-tomcat-##VERSION##/webapps/";
+ targetDir = targetDir.replaceAll("##VERSION##", project.tomcatVersion);
+
+ def webappDir = new File(targetDir);
+ println "Removing: " + webappDir.toString()
+ def result = webappDir.deleteDir() // Returns true if all goes well, false otherwise.
+ println result.toString()
+
+ assert result
+
+ webappDir.mkdirs()
+ }
}
-task putConfigIntoTomcat(dependsOn: putTemplateIntoTomcat, type: Copy) {
- String source = "../pdf-as-lib/build/resources/main/config/config.zip";
-
- String targetDir = "build/tomcat-##VERSION##/apache-tomcat-##VERSION##/conf/pdf-as";
- targetDir = targetDir.replaceAll("##VERSION##", project.tomcatVersion);
-
- from zipTree(source)
- into targetDir
+task putTemplateIntoTomcat(dependsOn: cleanWebAppsInTomcat)<<{
+ deployVersions.each{
+ String source = project.projectDir.toString() + "/";
+
+ String targetDir = "build/tomcat-##VERSION##"+it+"/apache-tomcat-##VERSION##";
+ targetDir = targetDir.replaceAll("##VERSION##", project.tomcatVersion);
+ copy{
+ from "src/main/assembly/tomcat"
+ into targetDir
+ }
+ }
}
-task putWebConfigIntoTomcat(dependsOn: putConfigIntoTomcat, type: Copy) {
- String targetDir = "build/tomcat-##VERSION##/apache-tomcat-##VERSION##/conf/pdf-as";
- targetDir = targetDir.replaceAll("##VERSION##", project.tomcatVersion);
-
- from 'src/main/configuration/'
- into targetDir
+task putConfigIntoTomcat(dependsOn: putTemplateIntoTomcat)<<{
+ deployVersions.each{
+ String source = "../pdf-as-lib/build/resources/main/config/config.zip";
+
+ String targetDir = "build/tomcat-##VERSION##"+it+"/apache-tomcat-##VERSION##/conf/pdf-as";
+ targetDir = targetDir.replaceAll("##VERSION##", project.tomcatVersion);
+ copy{
+ from zipTree(source)
+ into targetDir
+ }
+ }
+}
+
+task putWebConfigIntoTomcat(dependsOn: putConfigIntoTomcat)<<{
+ deployVersions.each{
+ String targetDir = "build/tomcat-##VERSION##/apache-tomcat-##VERSION##/conf/pdf-as";
+ targetDir = targetDir.replaceAll("##VERSION##", project.tomcatVersion);
+
+ copy{
+ from 'src/main/configuration/'
+ into targetDir
+ }
+ }
}
task injectPdfAsWebApp(dependsOn: putWebConfigIntoTomcat, type: Copy) {
@@ -157,9 +195,34 @@ task injectPdfAsWebApp(dependsOn: putWebConfigIntoTomcat, type: Copy) {
into targetDir
rename '.*.war', 'pdf-as-web.war'
}
-
injectPdfAsWebApp.dependsOn war
+task createPdfbox2War(type:War){
+ destinationDir = file("$buildDir/libs/pdfbox2")
+
+ doFirst{
+ sourceSets.main.compileClasspath -= configurations.pdfbox1
+ sourceSets.test.compileClasspath -= configurations.pdfbox1
+ sourceSets.main.compileClasspath += configurations.pdfbox2
+ sourceSets.test.compileClasspath += configurations.pdfbox2
+ classpath=sourceSets.main.compileClasspath
+ }
+}
+
+
+
+task injectPdfAsWebAppPdfbox2(dependsOn: putWebConfigIntoTomcat, type: Copy) {
+ //war.execute();
+
+ String targetDir = project.buildDir.toString() + "/tomcat-##VERSION##"+deployVersions[1]+"/apache-tomcat-##VERSION##/webapps/";
+ targetDir = targetDir.replaceAll("##VERSION##", project.tomcatVersion);
+
+ from createPdfbox2War.outputs
+ into targetDir
+ rename '.*.war', 'pdf-as-web.war'
+}
+injectPdfAsWebAppPdfbox2.dependsOn createPdfbox2War
+
task buildTomcat(dependsOn: injectPdfAsWebApp, type: Zip) {
String targetDir = project.buildDir.toString() + "/tomcat-##VERSION##/apache-tomcat-##VERSION##";
targetDir = targetDir.replaceAll("##VERSION##", project.tomcatVersion);
@@ -172,8 +235,21 @@ task buildTomcat(dependsOn: injectPdfAsWebApp, type: Zip) {
archiveName archive
destinationDir project.buildDir
}
+task buildTomcatPdfbox2(dependsOn: injectPdfAsWebAppPdfbox2, type: Zip) {
+ String targetDir = project.buildDir.toString() + "/tomcat-##VERSION##"+deployVersions[1]+"/apache-tomcat-##VERSION##";
+ targetDir = targetDir.replaceAll("##VERSION##", project.tomcatVersion);
+
+ String archive = "apache-tomcat-##VERSION##"+deployVersions[1]+"-pdf-as-web-##PVERSION##.zip";
+ archive = archive.replaceAll("##VERSION##", project.tomcatVersion);
+ archive = archive.replaceAll("##PVERSION##", project.version);
+
+ from targetDir
+ archiveName archive
+ destinationDir project.buildDir
+}
task buildTomcatTar(dependsOn: injectPdfAsWebApp, type: Tar) {
+
String targetDir = project.buildDir.toString() + "/tomcat-##VERSION##/apache-tomcat-##VERSION##";
targetDir = targetDir.replaceAll("##VERSION##", project.tomcatVersion);
@@ -186,6 +262,40 @@ task buildTomcatTar(dependsOn: injectPdfAsWebApp, type: Tar) {
destinationDir project.buildDir
}
+task buildTomcatTarPdfbox2(dependsOn: injectPdfAsWebAppPdfbox2, type: Tar) {
+
+ String targetDir = project.buildDir.toString() + "/tomcat-##VERSION##"+deployVersions[1]+"/apache-tomcat-##VERSION##";
+ targetDir = targetDir.replaceAll("##VERSION##", project.tomcatVersion);
+
+ String archive = "apache-tomcat-##VERSION##"+deployVersions[1]+"-pdf-as-web-##PVERSION##.tar";
+ archive = archive.replaceAll("##VERSION##", project.tomcatVersion);
+ archive = archive.replaceAll("##PVERSION##", project.version);
+
+ from targetDir
+ archiveName archive
+ destinationDir project.buildDir
+}
+
+
+
+task releaseConfig(type: Copy) {
+ from 'src/main/configuration/pdf-as-web.properties'
+ into rootDir.toString() + "/releases/" + version + "/cfg"
+}
+
+
+
+
+war{
+ doFirst{
+ sourceSets.main.compileClasspath -= configurations.pdfbox2
+ sourceSets.test.compileClasspath -= configurations.pdfbox2
+ sourceSets.main.compileClasspath += configurations.pdfbox1
+ sourceSets.test.compileClasspath += configurations.pdfbox1
+ classpath=sourceSets.main.compileClasspath
+ }
+}
+
task releases(dependsOn: buildTomcat, type: Copy) {
String archive = project.buildDir.toString() + "/apache-tomcat-##VERSION##-pdf-as-web-##PVERSION##.zip";
archive = archive.replaceAll("##VERSION##", project.tomcatVersion);
@@ -195,19 +305,41 @@ task releases(dependsOn: buildTomcat, type: Copy) {
tararchive = tararchive.replaceAll("##VERSION##", project.tomcatVersion);
tararchive = tararchive.replaceAll("##PVERSION##", project.version);
- from war.outputs
+
+ from war
from archive
- from tararchive
+ from tararchive
into rootDir.toString() + "/releases/" + version
+
+
+
}
-task releaseConfig(type: Copy) {
- from 'src/main/configuration/pdf-as-web.properties'
- into rootDir.toString() + "/releases/" + version + "/cfg"
+task releaseCopyPdfbox2(type: Copy){
+ String archive = project.buildDir.toString() + "/apache-tomcat-##VERSION##"+deployVersions[1]+"-pdf-as-web-##PVERSION##.zip";
+ archive = archive.replaceAll("##VERSION##", project.tomcatVersion);
+ archive = archive.replaceAll("##PVERSION##", project.version);
+
+ String tararchive = project.buildDir.toString() + "/apache-tomcat-##VERSION##"+deployVersions[1]+"-pdf-as-web-##PVERSION##.tar";
+ tararchive = tararchive.replaceAll("##VERSION##", project.tomcatVersion);
+ tararchive = tararchive.replaceAll("##PVERSION##", project.version);
+
+ from archive
+ from tararchive
+ from createPdfbox2War
+ into rootDir.toString() + "/releases/" + version+"/pdf-as-web-pdfbox2"
}
+
releases.dependsOn jar
releases.dependsOn sourcesJar
releases.dependsOn war
releases.dependsOn releaseConfig
releases.dependsOn buildTomcatTar
+releases.dependsOn createPdfbox2War
+releases.dependsOn releaseCopyPdfbox2
+releases.dependsOn buildTomcatPdfbox2
+releases.dependsOn buildTomcatTarPdfbox2
+
+war.dependsOn createPdfbox2War
+