configurations.create('screeningApiJarExternalLibs') dependencies { screeningApiJarExternalLibs 'google:gwt-user:2.4' } task screeningApiJar(type: Jar) { archiveName 'openbis_screening_api.jar' includeEmptyDirs false from project(':common').compileJava.outputs.getFiles().getAsFileTree().plus( project(':openbis-common').compileJava.outputs.getFiles().getAsFileTree().plus( project(':openbis').compileJava.outputs.getFiles().getAsFileTree().plus( project(':openbis_api').compileJava.outputs.getFiles().getAsFileTree().plus( project(':datastore_server').compileJava.outputs.getFiles().getAsFileTree().plus( project(':screening').compileJava.outputs.getFiles().getAsFileTree()))))).matching { include "OpenBISScreeningML*.class" include "ch/systemsx/cisd/common/api/**/*.class" exclude "ch/systemsx/cisd/common/api/server/**/*.class" include "ch/systemsx/cisd/openbis/common/api/**/*.class" include "ch/systemsx/cisd/openbis/dss/client/api/v1/**/*.class" include "ch/systemsx/cisd/openbis/dss/generic/shared/api/v1/**/*.class" include "ch/systemsx/cisd/openbis/dss/generic/shared/api/authorization/**/*.class" include "ch/systemsx/cisd/openbis/dss/screening/shared/api/**/*.class" include "ch/systemsx/cisd/openbis/generic/shared/basic/**/*.class" include "ch/systemsx/cisd/openbis/generic/shared/api/**/*.class" include "ch/systemsx/cisd/openbis/generic/shared/authorization/annotation/**/*.class" include "ch/systemsx/cisd/openbis/plugin/query/shared/**/*.class" include "ch/systemsx/cisd/openbis/plugin/screening/shared/api/**/*.class" include "ch/systemsx/cisd/openbis/plugin/screening/client/api/**/*.class" include "ch/systemsx/cisd/openbis/plugin/screening/client/cli/**/*.class" include "ch/systemsx/cisd/openbis/generic/client/cli/Login*.class" include "ch/systemsx/cisd/openbis/generic/shared/api/v1/**/*.class" include "ch/systemsx/cisd/common/**/*.class" include "ch/systemsx/cisd/openbis/common/**/*.class" } from zipTree(configurations.screeningApiJarExternalLibs.files.iterator().next()).matching { include '**/com/google/gwt/user/client/rpc/IsSerializable.class' include '**/com/google/gwt/user/client/rpc/SerializableException.class' } manifest { attributes("Main-Class": "ch.systemsx.cisd.openbis.plugin.screening.client.api.v1.ScreeningClientApiTest", "Version": versionNumber, "Build-Number": "${versionNumber} (r${revisionNumber},${cleanFlag})", "Class-Path": "spring-ext.jar") } } task screeningApiSources(type: Zip) { archiveName 'sources-screening-api.zip' from project(':common').files('source/java').getAsFileTree().plus( project(':openbis-common').files('source/java').getAsFileTree().plus( project(':openbis').files('source/java').getAsFileTree().plus( project(':openbis_api').files('source/java').getAsFileTree().plus( project(':datastore_server').files('source/java').getAsFileTree().plus( project(':screening').files('source/java').getAsFileTree()))))).matching { include "OpenBISScreeningML*.java" include "ch/systemsx/cisd/openbis/plugin/screening/shared/api/**/*.java" include "ch/systemsx/cisd/openbis/plugin/screening/client/api/**/*.java" } } configurations.create('screeningApiJavadoc') dependencies { screeningApiJavadoc project(':screening') } task screeningApiJavaDoc(type: Javadoc) { source screeningApiSources.inputs.getFiles().getAsFileTree().matching { include "**/*.java" } classpath = configurations.screeningApiJavadoc } task screeningApiJavaDocZip(type: Zip, dependsOn: screeningApiJavaDoc) { archiveName 'javadoc-screening-api.zip' from screeningApiJavaDoc.destinationDir } configurations.create('batteries') dependencies { batteries 'cisd:cisd-base:+', 'apache:httpclient:+', 'apache:httpcore:+', 'apache:log4j:+', 'springframework:spring-aop:+', 'springframework:spring-beans:+', 'springframework:spring-context:+', 'springframework:spring-core:+', 'springframework:spring-web:+', 'springframework:spring-webmvc:+', 'springframework:spring-expression:+', 'apache:commons-logging:+', 'marathon:marathon-spring-util:+', 'cisd:cisd-args4j:+', 'python:jython:+', 'aopalliance:aopalliance:+' } task springExt(type: Jar) { archiveName 'spring-ext.jar' for (File f : configurations.batteries.files) { from zipTree(f).matching { include '**/**' } } } task screeningApiBatteriesIncluded(type: Jar, dependsOn: [screeningApiJar, springExt]) { archiveName 'openbis_screening_api-batteries_included.jar' from zipTree(springExt.archivePath) from zipTree(screeningApiJar.archivePath) } task screeningApiZip(type: Zip, dependsOn: [screeningApiJavaDocZip, screeningApiSources, screeningApiBatteriesIncluded]) { baseName 'openBIS-screening-API' from screeningApiJar.archivePath from springExt.archivePath from screeningApiBatteriesIncluded.archivePath from screeningApiSources.archivePath from screeningApiJavaDocZip.archivePath from project(':screening').files('dist/api/').getAsFileTree() }