Skip to content

Commit 866bb0b

Browse files
committed
feat(java-sdk): setup gradle project structure
relates to STACKITSDK-216
1 parent 7f111a5 commit 866bb0b

File tree

4 files changed

+68
-10
lines changed

4 files changed

+68
-10
lines changed

scripts/generate-sdk/.openapi-generator-ignore-java

Lines changed: 14 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,19 @@ git_push.sh
33
.gitignore
44
api/openapi.yaml
55
tox.ini
6-
**/.github/**
76
**/AndroidManifest.xml
7+
8+
# we have our own github workflows
9+
.github/**
10+
11+
# Ignore maven and simple build tool (sbt) stuff, because we use gradle
812
pom.xml
9-
build.sbt
13+
build.sbt
14+
15+
# there's no content in it
16+
gradle.properties
17+
18+
# gradle wrapper (we don't need it because we use the generated projects as gradle subprojects)
19+
gradlew.bat
20+
gradlew
21+
gradle/**

scripts/generate-sdk/languages/java.sh

Lines changed: 0 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -124,13 +124,6 @@ generate_java_sdk() {
124124
# Remove unnecessary files
125125
rm "${SERVICES_FOLDER}/${service}/.openapi-generator-ignore"
126126
rm -r "${SERVICES_FOLDER}/${service}/.openapi-generator/"
127-
rm "${SERVICES_FOLDER}/${service}/.github/workflows/maven.yml"
128-
129-
# If the service has a README.md file, move them inside the service folder
130-
if [ -f ${sdk_services_backup_dir}/${service}/README.md ]; then
131-
echo "Found ${service} \"README.md\" file"
132-
cp -r ${sdk_services_backup_dir}/${service}/README.md ${SERVICES_FOLDER}/${service}/README.md
133-
fi
134127

135128
# If the service has a CHANGELOG file, move it inside the service folder
136129
if [ -f ${sdk_services_backup_dir}/${service}/CHANGELOG.md ]; then

templates/java/README.mustache

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -16,7 +16,7 @@ This package is part of the STACKIT Java SDK. For additional information, please
1616
## Requirements
1717

1818
Building the API client library requires:
19-
1. Java 1.8+
19+
1. Java 11+
2020

2121
## Installation
2222

Lines changed: 53 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,53 @@
1+
{{! This template was customized to allow the services to be a subprojects in one big gradle project. }}
2+
{{! Original template: https://github.com/OpenAPITools/openapi-generator/blob/v7.14.0/modules/openapi-generator/src/main/resources/Java/libraries/okhttp-gson/build.gradle.mustache }}
3+
4+
ext {
5+
{{#swagger1AnnotationLibrary}}
6+
swagger_annotations_version = "1.6.9"
7+
{{/swagger1AnnotationLibrary}}
8+
{{#swagger2AnnotationLibrary}}
9+
swagger_annotations_version = "2.2.9"
10+
{{/swagger2AnnotationLibrary}}
11+
jakarta_annotation_version = "1.3.5"
12+
{{#useBeanValidation}}
13+
bean_validation_version = "2.0.2"
14+
{{/useBeanValidation}}
15+
}
16+
17+
dependencies {
18+
{{#swagger1AnnotationLibrary}}
19+
implementation "io.swagger:swagger-annotations:$swagger_annotations_version"
20+
{{/swagger1AnnotationLibrary}}
21+
{{#swagger2AnnotationLibrary}}
22+
implementation "io.swagger.core.v3:swagger-annotations:$swagger_annotations_version"
23+
{{/swagger2AnnotationLibrary}}
24+
implementation "com.google.code.findbugs:jsr305:3.0.2"
25+
implementation 'com.squareup.okhttp3:okhttp:4.12.0'
26+
implementation 'com.squareup.okhttp3:logging-interceptor:4.12.0'
27+
implementation 'com.google.code.gson:gson:2.9.1'
28+
implementation 'io.gsonfire:gson-fire:1.9.0'
29+
implementation 'jakarta.ws.rs:jakarta.ws.rs-api:2.1.6'
30+
{{#openApiNullable}}
31+
implementation 'org.openapitools:jackson-databind-nullable:0.2.6'
32+
{{/openApiNullable}}
33+
{{#withAWSV4Signature}}
34+
implementation 'software.amazon.awssdk:auth:2.20.157'
35+
{{/withAWSV4Signature}}
36+
{{#hasOAuthMethods}}
37+
implementation group: 'org.apache.oltu.oauth2', name: 'org.apache.oltu.oauth2.client', version: '1.0.2'
38+
{{/hasOAuthMethods}}
39+
implementation group: 'org.apache.commons', name: 'commons-lang3', version: '3.17.0'
40+
{{#joda}}
41+
implementation 'joda-time:joda-time:2.9.9'
42+
{{/joda}}
43+
{{#dynamicOperations}}
44+
implementation 'io.swagger.parser.v3:swagger-parser-v3:2.0.30'
45+
{{/dynamicOperations}}
46+
implementation "jakarta.annotation:jakarta.annotation-api:$jakarta_annotation_version"
47+
{{#useBeanValidation}}
48+
implementation "jakarta.validation:jakarta.validation-api:$bean_validation_version"
49+
{{/useBeanValidation}}
50+
testImplementation 'org.junit.jupiter:junit-jupiter-api:5.10.3'
51+
testImplementation 'org.mockito:mockito-core:3.12.4'
52+
testRuntimeOnly 'org.junit.jupiter:junit-jupiter-engine:5.10.3'
53+
}

0 commit comments

Comments
 (0)