Skip to content
Snippets Groups Projects
screening-api.gradle 6.12 KiB
Newer Older
  • Learn to ignore specific revisions
  • configurations.create('screeningApiJarExternalLibs')
    dependencies {
    
        screeningApiJarExternalLibs 'google:gwt-user:2.4'
    
    task screeningApiJar(type: Jar) {
    
        archiveName 'openbis_screening_api.jar'
        includeEmptyDirs false
    
        from project(':lib-commonbase').compileJava.outputs.getFiles().getAsFileTree().plus(
    
                project(':lib-common').compileJava.outputs.getFiles().getAsFileTree().plus(
    
                        project(':lib-openbis-common').compileJava.outputs.getFiles().getAsFileTree().plus(
    
                                project(':server-application-server').compileJava.outputs.getFiles().getAsFileTree().plus(
    
                                        project(':api-openbis-java').compileJava.outputs.getFiles().getAsFileTree().plus(
    
                                                project(':server-original-data-store').compileJava.outputs.getFiles().getAsFileTree().plus(
    
                                                        project(':server-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'
        }
    
    
            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(':lib-commonbase').files('source/java').getAsFileTree().plus(
    
                project(':lib-common').files('source/java').getAsFileTree().plus(
    
                        project(':lib-openbis-common').files('source/java').getAsFileTree().plus(
    
                                project(':server-application-server').files('source/java').getAsFileTree().plus(
    
                                        project(':api-openbis-java').files('source/java').getAsFileTree().plus(
    
                                                project(':server-original-data-store').files('source/java').getAsFileTree().plus(
    
                                                        project(':server-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(':server-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 'sis:sis-base:23.06.0',
    
                'apache:httpclient:4.3.6',
                'apache:httpcore:4.3.3',
                'apache:commons-lang3:3.11',
                'apache:log4j:1.2.15',
                'springframework:spring-aop:5.0.1.RELEASE',
                'springframework:spring-beans:5.0.1.RELEASE',
                'springframework:spring-context:5.0.1.RELEASE',
                'springframework:spring-core:5.0.1.RELEASE',
                'springframework:spring-web:5.0.1.RELEASE',
                'springframework:spring-webmvc:5.0.1.RELEASE',
                'springframework:spring-expression:5.0.1.RELEASE',
                'apache:commons-logging:1.2',
                'marathon:marathon-spring-util:1.2.5',
                'cisd:cisd-args4j:9.11.2',
                'python:jython:2.5.2',
                'aopalliance:aopalliance:1.0'
    
    }
    
    task springExt(type: Jar) {
    
        duplicatesStrategy 'include'
    
        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(':server-screening').files('dist/api/').getAsFileTree()