diff --git a/.github/workflows/update-from-template.yml b/.github/workflows/update-from-template.yml index 7da8af8..887553d 100644 --- a/.github/workflows/update-from-template.yml +++ b/.github/workflows/update-from-template.yml @@ -14,7 +14,7 @@ on: env: UPDATE_BRANCH: update-from-template - REMOTE_URL: https://github.com/xdev-software/standard-maven-template.git + REMOTE_URL: https://github.com/xdev-software/openapi-client-maven-template.git REMOTE_BRANCH: master permissions: diff --git a/.run/Run Demo.run.xml b/.run/Run Demo.run.xml index 764b3b9..ab7e1f7 100644 --- a/.run/Run Demo.run.xml +++ b/.run/Run Demo.run.xml @@ -1,7 +1,7 @@ - \ No newline at end of file + diff --git a/CONTRIBUTING.md b/CONTRIBUTING.md index 8468781..c597644 100644 --- a/CONTRIBUTING.md +++ b/CONTRIBUTING.md @@ -33,10 +33,10 @@ You should have the following things installed: * Ensure that the JDK/Java-Version is correct -## Releasing [![Build](https://img.shields.io/github/actions/workflow/status/xdev-software/standard-maven-template/release.yml?branch=master)](https://github.com/xdev-software/standard-maven-template/actions/workflows/release.yml) +## Releasing [![Build](https://img.shields.io/github/actions/workflow/status/xdev-software/openapi-client-maven-template/release.yml?branch=master)](https://github.com/xdev-software/openapi-client-maven-template/actions/workflows/release.yml) Before releasing: -* Consider doing a [test-deployment](https://github.com/xdev-software/standard-maven-template/actions/workflows/test-deploy.yml?query=branch%3Adevelop) before actually releasing. +* Consider doing a [test-deployment](https://github.com/xdev-software/openapi-client-maven-template/actions/workflows/test-deploy.yml?query=branch%3Adevelop) before actually releasing. * Check the [changelog](CHANGELOG.md) If the ``develop`` is ready for release, create a pull request to the ``master``-Branch and merge the changes diff --git a/README.md b/README.md index e288929..1e01827 100644 --- a/README.md +++ b/README.md @@ -1,13 +1,16 @@ -[![Latest version](https://img.shields.io/maven-central/v/com.xdev-software/standard-maven-template?logo=apache%20maven)](https://mvnrepository.com/artifact/com.xdev-software/standard-maven-template) -[![Build](https://img.shields.io/github/actions/workflow/status/xdev-software/standard-maven-template/checkBuild.yml?branch=develop)](https://github.com/xdev-software/standard-maven-template/actions/workflows/checkBuild.yml?query=branch%3Adevelop) -[![Quality Gate Status](https://sonarcloud.io/api/project_badges/measure?project=xdev-software_standard-maven-template&metric=alert_status)](https://sonarcloud.io/dashboard?id=xdev-software_standard-maven-template) +[![Latest version](https://img.shields.io/maven-central/v/com.xdev-software/openapi-client-maven-template?logo=apache%20maven)](https://mvnrepository.com/artifact/com.xdev-software/openapi-client-maven-template) +[![Build](https://img.shields.io/github/actions/workflow/status/xdev-software/openapi-client-maven-template/checkBuild.yml?branch=develop)](https://github.com/xdev-software/openapi-client-maven-template/actions/workflows/checkBuild.yml?query=branch%3Adevelop) +[![Quality Gate Status](https://sonarcloud.io/api/project_badges/measure?project=xdev-software_openapi-client-maven-template&metric=alert_status)](https://sonarcloud.io/dashboard?id=xdev-software_openapi-client-maven-template) -# standard-maven-template +# openapi-client-maven-template +This client [is generated](./openapi-client-maven-template/pom.xml) from an [``openapi.yml``](./openapi/openapi.yml) using [OpenAPI Generator](https://openapi-generator.tech/). ## Installation -[Installation guide for the latest release](https://github.com/xdev-software/standard-maven-template/releases/latest#Installation) +[Installation guide for the latest release](https://github.com/xdev-software/openapi-client-maven-template/releases/latest#Installation) +## Demo +A minimal demo is also available [here](./openapi-client-maven-template-demo/src/main/java/software/xdev/Application.java). ## Support If you need support as soon as possible and you can't wait for any pull request, feel free to use [our support](https://xdev.software/en/services/support). @@ -16,4 +19,4 @@ If you need support as soon as possible and you can't wait for any pull request, See the [contributing guide](./CONTRIBUTING.md) for detailed instructions on how to get started with our project. ## Dependencies and Licenses -View the [license of the current project](LICENSE) or the [summary including all dependencies](https://xdev-software.github.io/standard-maven-template/dependencies/) +View the [license of the current project](LICENSE) or the [summary including all dependencies](https://xdev-software.github.io/openapi-client-maven-template/dependencies/) diff --git a/SECURITY.md b/SECURITY.md index 92188f3..5c8df81 100644 --- a/SECURITY.md +++ b/SECURITY.md @@ -2,4 +2,4 @@ ## Reporting a Vulnerability -Please report a security vulnerability [on GitHub Security Advisories](https://github.com/xdev-software/standard-maven-template/security/advisories/new). +Please report a security vulnerability [on GitHub Security Advisories](https://github.com/xdev-software/openapi-client-maven-template/security/advisories/new). diff --git a/standard-maven-template-demo/pom.xml b/openapi-client-maven-template-demo/pom.xml similarity index 80% rename from standard-maven-template-demo/pom.xml rename to openapi-client-maven-template-demo/pom.xml index 018a999..90822c5 100644 --- a/standard-maven-template-demo/pom.xml +++ b/openapi-client-maven-template-demo/pom.xml @@ -5,7 +5,7 @@ 4.0.0 com.xdev-software - standard-maven-template-demo + openapi-client-maven-template-demo 1.0.0-SNAPSHOT jar @@ -24,14 +24,29 @@ UTF-8 software.xdev.Application + + 2.20.0 com.xdev-software - standard-maven-template + openapi-client-maven-template ${project.version} + + + + + org.apache.logging.log4j + log4j-core + ${log4j2-version} + + + org.apache.logging.log4j + log4j-slf4j-impl + ${log4j2-version} + diff --git a/openapi-client-maven-template/pom.xml b/openapi-client-maven-template/pom.xml new file mode 100644 index 0000000..868211d --- /dev/null +++ b/openapi-client-maven-template/pom.xml @@ -0,0 +1,390 @@ + + + 4.0.0 + + com.xdev-software + openapi-client-maven-template + 1.0.0-SNAPSHOT + jar + + openapi-client-maven-template + openapi-client-maven-template + https://github.com/xdev-software/openapi-client-maven-template + + + https://github.com/xdev-software/openapi-client-maven-template + https://github.com/xdev-software/openapi-client-maven-template.git + + + 2023 + + + XDEV Software + https://xdev.software + + + + + XDEV Software + XDEV Software + https://xdev.software + + + + + + Apache License, Version 2.0 + https://www.apache.org/licenses/LICENSE-2.0.txt + repo + + + + + 17 + ${javaVersion} + + UTF-8 + UTF-8 + + + + src/generated/** + + + + + + + central + https://repo.maven.apache.org/maven2 + + false + + + + + + + + central + https://repo.maven.apache.org/maven2 + + false + + + + + + + ossrh + https://oss.sonatype.org/content/repositories/snapshots + + + ossrh + https://oss.sonatype.org/service/local/staging/deploy/maven2/ + + + + + + + com.fasterxml.jackson + jackson-bom + 2.15.2 + pom + import + + + + + + + + org.apache.httpcomponents.client5 + httpclient5 + 5.2.1 + + + + + com.fasterxml.jackson.core + jackson-core + + + com.fasterxml.jackson.core + jackson-annotations + + + com.fasterxml.jackson.core + jackson-databind + + + com.fasterxml.jackson.jaxrs + jackson-jaxrs-json-provider + + + com.fasterxml.jackson.datatype + jackson-datatype-jsr310 + + + org.openapitools + jackson-databind-nullable + 0.2.6 + + + + jakarta.annotation + jakarta.annotation-api + 2.1.1 + + + + + + + com.mycila + license-maven-plugin + 4.2 + + + ${project.organization.url} + + + +
com/mycila/maven/plugin/license/templates/APACHE-2.txt
+ + src/main/java/** + src/test/java/** + +
+
+
+ + + first + + format + + process-sources + + +
+ + + org.apache.maven.plugins + maven-compiler-plugin + 3.11.0 + + ${maven.compiler.release} + + -proc:none + + + + + org.apache.maven.plugins + maven-javadoc-plugin + 3.5.0 + + + attach-javadocs + verify + + jar + + + + + true + none + + + + org.apache.maven.plugins + maven-source-plugin + 3.3.0 + + + attach-sources + verify + + jar-no-fork + + + + + + + org.codehaus.mojo + build-helper-maven-plugin + 3.4.0 + + + generate-sources + + add-source + + + + src/generated/java + + + + + +
+
+ + + ossrh + + + + org.apache.maven.plugins + maven-gpg-plugin + 3.1.0 + + + sign-artifacts + verify + + sign + + + + + + --pinentry-mode + loopback + + + + + + + + org.sonatype.plugins + nexus-staging-maven-plugin + 1.6.13 + true + + ossrh + https://oss.sonatype.org/ + + 30 + true + + + + + + + openapi-generator + + software.xdev.INSERT_NAME_HERE + + src/generated/java + ${project.basedir}/${generatedDirRelative} + src/gen + + ${project.basedir}/target/generated-sources/openapi/${openApiRelativeGeneratorDir} + + + + + + org.apache.maven.plugins + maven-clean-plugin + 3.3.1 + + + pre-generation-clean + initialize + + clean + + + true + + + ${generatedDir} + + + + + + post-generation-clean + process-resources + + clean + + + + + + org.openapitools + openapi-generator-maven-plugin + 6.6.0 + + + + generate + + + ${project.basedir}/../openapi/openapi.yml + java + + ${openApiRelativeGeneratorDir} + apache-httpclient + ${basePackage}.api + ${basePackage}.model + ${basePackage}.client + + true + + false + + + true + true + + false + false + false + false + + + + + + + org.apache.maven.plugins + maven-resources-plugin + 3.3.1 + + + copy-generated-resources + process-sources + + copy-resources + + + ${generatedDir} + + + ${openApiGeneratorDir} + + + + + + + + + + +
diff --git a/openapi/INFO.md b/openapi/INFO.md new file mode 100644 index 0000000..b540460 --- /dev/null +++ b/openapi/INFO.md @@ -0,0 +1,8 @@ +This ``openapi.yml`` was written manually as INSERT_NAME_HERE fails to provide an API schema or something similar. + +The Java API Client can be generated using ``mvn clean compile -P openapi-generator`` inside [``openapi-client-maven-template``](../openapi-client-maven-template/). + +Helpful links: +* https://jsonformatter.org/json-to-jsonschema +* https://swagger.io/specification/ +* https://editor.swagger.io/ diff --git a/openapi/openapi.yml b/openapi/openapi.yml new file mode 100644 index 0000000..8b13789 --- /dev/null +++ b/openapi/openapi.yml @@ -0,0 +1 @@ + diff --git a/pom.xml b/pom.xml index ada9282..47722ca 100644 --- a/pom.xml +++ b/pom.xml @@ -5,7 +5,7 @@ 4.0.0 com.xdev-software - standard-maven-template-root + openapi-client-maven-template-root 1.0.0-SNAPSHOT pom @@ -15,8 +15,8 @@ - standard-maven-template - standard-maven-template-demo + openapi-client-maven-template + openapi-client-maven-template-demo diff --git a/standard-maven-template/pom.xml b/standard-maven-template/pom.xml deleted file mode 100644 index 9f74dbf..0000000 --- a/standard-maven-template/pom.xml +++ /dev/null @@ -1,208 +0,0 @@ - - - 4.0.0 - - com.xdev-software - standard-maven-template - 1.0.0-SNAPSHOT - jar - - standard-maven-template - standard-maven-template - https://github.com/xdev-software/standard-maven-template - - - https://github.com/xdev-software/standard-maven-template - https://github.com/xdev-software/standard-maven-template.git - - - 2023 - - - XDEV Software - https://xdev.software - - - - - XDEV Software - XDEV Software - https://xdev.software - - - - - - Apache License, Version 2.0 - https://www.apache.org/licenses/LICENSE-2.0.txt - repo - - - - - 17 - ${javaVersion} - - UTF-8 - UTF-8 - - - - - - central - https://repo.maven.apache.org/maven2 - - false - - - - - - - - central - https://repo.maven.apache.org/maven2 - - false - - - - - - - ossrh - https://oss.sonatype.org/content/repositories/snapshots - - - ossrh - https://oss.sonatype.org/service/local/staging/deploy/maven2/ - - - - - - - com.mycila - license-maven-plugin - 4.2 - - - ${project.organization.url} - - - -
com/mycila/maven/plugin/license/templates/APACHE-2.txt
- - src/main/java/** - src/test/java/** - -
-
-
- - - first - - format - - process-sources - - -
- - - org.apache.maven.plugins - maven-compiler-plugin - 3.11.0 - - ${maven.compiler.release} - - -proc:none - - - - - org.apache.maven.plugins - maven-javadoc-plugin - 3.5.0 - - - attach-javadocs - verify - - jar - - - - - true - none - - - - org.apache.maven.plugins - maven-source-plugin - 3.3.0 - - - attach-sources - verify - - jar-no-fork - - - - -
-
- - - ossrh - - - - org.apache.maven.plugins - maven-gpg-plugin - 3.1.0 - - - sign-artifacts - verify - - sign - - - - - - --pinentry-mode - loopback - - - - - - - - org.sonatype.plugins - nexus-staging-maven-plugin - 1.6.13 - true - - ossrh - https://oss.sonatype.org/ - - 30 - true - - - - - - -