apply plugin: 'idea' apply plugin: 'eclipse' group = 'com.perforce' version = '2016.1.0' buildscript { repositories { jcenter() } dependencies { classpath 'com.android.tools.build:gradle:1.2.2' classpath 'com.github.dcendents:android-maven-plugin:1.2' } } repositories { jcenter() } if(hasProperty('target') && target == 'android') { apply plugin: 'com.android.library' apply plugin: 'com.github.dcendents.android-maven' android { compileSdkVersion 22 buildToolsVersion '22.0.0' defaultConfig { minSdkVersion 14 targetSdkVersion 22 } compileOptions { sourceCompatibility JavaVersion.VERSION_1_8 targetCompatibility JavaVersion.VERSION_1_8 } // Rename the aar correctly libraryVariants.all { variant -> variant.outputs.each { output -> def outputFile = output.outputFile if (outputFile != null && outputFile.name.endsWith('.aar')) { def fileName = "${project.name}-${variant.baseName}-${version}.aar" output.outputFile = new File(outputFile.parent, fileName) } } } dependencies { provided 'javax.annotation:jsr250-api:1.0' } } afterEvaluate { android.libraryVariants.all { variant -> def task = project.tasks.create "jar${variant.name.capitalize()}", Jar task.description = "Create jar artifact for ${variant.name}" task.dependsOn variant.javaCompile task.from variant.javaCompile.destinationDir task.destinationDir = project.file("${project.buildDir}/outputs/jar") task.archiveName = "${project.name}-${variant.baseName}-${version}.jar" artifacts.add('archives', task); } } task sourcesJar(type: Jar) { from android.sourceSets.main.java.srcDirs classifier = 'sources' } artifacts { archives sourcesJar } } else { apply plugin: 'java' apply plugin: 'maven' jar { baseName = 'helix-web-services-client' } sourceCompatibility = JavaVersion.VERSION_1_8 targetCompatibility = JavaVersion.VERSION_1_8 install { repositories.mavenInstaller { pom.artifactId = 'helix-web-services-client' } } task execute(type:JavaExec) { main = System.getProperty('mainClass') classpath = sourceSets.main.runtimeClasspath } } ext { okhttp_version = "2.3.0" oltu_version = "1.0.0" retrofit_version = "1.9.0" swagger_annotations_version = "1.5.0" junit_version = "4.12" } dependencies { compile fileTree(dir: 'vendor', include: '*.jar', exclude: '*-sources.jar') }
# | Change | User | Description | Committed | |
---|---|---|---|---|---|
#1 | 19553 | swellard | Move and rename clients | ||
//guest/perforce_software/helix-web-services/main/source/clients/2016.1.0/java/build.gradle | |||||
#3 | 19542 | swellard |
Gradle file is badly formatted and does not play well with Eclipse https://jira.perforce.com:8443/browse/P4WEBAPI-301 |
||
#2 | 18798 | tjuricek |
Report supported platform versions in the default request, if we accept application/json. Added a method to the Java client SDK to check if it's a supported version. |
||
#1 | 18795 | tjuricek | Use point-release versioning for the client SDKs and installers. | ||
//guest/perforce_software/helix-web-services/main/source/clients/2016.1/java/build.gradle | |||||
#3 | 18785 | tjuricek | Revise the git fusion repository models. | ||
#2 | 18700 | tjuricek |
Convert branch-related models, which includes CommandResponse, and framework for doing model conversion to/from our P4Java input maps. Dates are fun. Those are now being converted using the "tzoffset" from the server query. |
||
#1 | 18679 | tjuricek |
Revising HWS paths to work primarily at product version 2016.1. The swagger definitions will primarily work at a major platform release number. We will generate new clients for each major release, and ensure backwards compatibility as time goes on by keeping the older clients around in the tree. Note: These are JUST URLs, and do not include other revisions we plan on making shortly. |
||
//guest/perforce_software/helix-web-services/main/source/clients/java/build.gradle | |||||
#5 | 18555 | tjuricek | Added Java client libraries to installation, along with swagger source. | ||
#4 | 18524 | tjuricek |
Add a "trust everything" mode to the generated Java client for testing our installed packages. Also, check in the client's dependencies as well via our "vendor" declarations. It's unclear how we'll distribute the client SDK code, probably as a group of jar files. We'll see. |
||
#3 | 18522 | tjuricek | Increase the compiler level to 1.8 | ||
#2 | 18515 | tjuricek |
Replacing java_client with Swagger-based clients/java project. - Switched implementations of the Swagger client to use okhttp with gson. - Added the version to the "status" method, and hey, added that method to the spec - Added templates to the java code generator to add some default methods, fixing some import issues in Gradle NOTE: We may want to break down the API a bit and restructure it. |
||
#1 | 18488 | tjuricek |
Swagger Java client (initial version). This contains a basic configuration for the java client, which mostly decides package location, etc. Notably, the license must be ASL under the SmartBear copyright. |