From 7b24e794c35af6eed43e8c611637e2a40d1307d3 Mon Sep 17 00:00:00 2001
From: Alex B <45384811+AB-xdev@users.noreply.github.com>
Date: Tue, 26 Mar 2024 13:50:11 +0100
Subject: [PATCH 01/28] Update pom.xml
replacementType is no longer required
---
openapi-client-maven-template/pom.xml | 3 ---
1 file changed, 3 deletions(-)
diff --git a/openapi-client-maven-template/pom.xml b/openapi-client-maven-template/pom.xml
index 2a8a1d1..066748b 100644
--- a/openapi-client-maven-template/pom.xml
+++ b/openapi-client-maven-template/pom.xml
@@ -407,7 +407,6 @@
file-contents
- file-contents
${generatedDirRelative}/software/xdev/${componentName}/client/
ApiClient.java
@@ -424,7 +423,6 @@
file-contents
- file-contents
${generatedDirRelative}/software/xdev/${componentName}/
true
.java
@@ -441,7 +439,6 @@
file-contents
- file-contents
${generatedDirRelative}/software/xdev/${componentName}/
true
.java
From b2a23b191ccad41f0621dc197503591274e30494 Mon Sep 17 00:00:00 2001
From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com>
Date: Tue, 2 Apr 2024 00:21:42 +0000
Subject: [PATCH 02/28] Bump com.puppycrawl.tools:checkstyle from 10.14.2 to
10.15.0
Bumps [com.puppycrawl.tools:checkstyle](https://github.com/checkstyle/checkstyle) from 10.14.2 to 10.15.0.
- [Release notes](https://github.com/checkstyle/checkstyle/releases)
- [Commits](https://github.com/checkstyle/checkstyle/compare/checkstyle-10.14.2...checkstyle-10.15.0)
---
updated-dependencies:
- dependency-name: com.puppycrawl.tools:checkstyle
dependency-type: direct:production
update-type: version-update:semver-minor
...
Signed-off-by: dependabot[bot]
---
standard-maven-template-demo/pom.xml | 2 +-
standard-maven-template/pom.xml | 2 +-
2 files changed, 2 insertions(+), 2 deletions(-)
diff --git a/standard-maven-template-demo/pom.xml b/standard-maven-template-demo/pom.xml
index 2e466d4..0a4432d 100644
--- a/standard-maven-template-demo/pom.xml
+++ b/standard-maven-template-demo/pom.xml
@@ -92,7 +92,7 @@
com.puppycrawl.tools
checkstyle
- 10.14.2
+ 10.15.0
diff --git a/standard-maven-template/pom.xml b/standard-maven-template/pom.xml
index e84ddff..b7b0fc3 100644
--- a/standard-maven-template/pom.xml
+++ b/standard-maven-template/pom.xml
@@ -230,7 +230,7 @@
com.puppycrawl.tools
checkstyle
- 10.14.2
+ 10.15.0
From 0af9590c417fb708ffe83f838f5308c9652143d3 Mon Sep 17 00:00:00 2001
From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com>
Date: Fri, 5 Apr 2024 00:42:48 +0000
Subject: [PATCH 03/28] Bump org.apache.maven.plugins:maven-source-plugin from
3.3.0 to 3.3.1
Bumps [org.apache.maven.plugins:maven-source-plugin](https://github.com/apache/maven-source-plugin) from 3.3.0 to 3.3.1.
- [Commits](https://github.com/apache/maven-source-plugin/compare/maven-source-plugin-3.3.0...maven-source-plugin-3.3.1)
---
updated-dependencies:
- dependency-name: org.apache.maven.plugins:maven-source-plugin
dependency-type: direct:production
update-type: version-update:semver-patch
...
Signed-off-by: dependabot[bot]
---
standard-maven-template/pom.xml | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/standard-maven-template/pom.xml b/standard-maven-template/pom.xml
index b7b0fc3..f25578a 100644
--- a/standard-maven-template/pom.xml
+++ b/standard-maven-template/pom.xml
@@ -161,7 +161,7 @@
org.apache.maven.plugins
maven-source-plugin
- 3.3.0
+ 3.3.1
attach-sources
From 8f204f5650eebdde102beb935053fac8be9a4105 Mon Sep 17 00:00:00 2001
From: AB
Date: Wed, 10 Apr 2024 13:11:40 +0200
Subject: [PATCH 04/28] Introduce Renovate
---
.github/dependabot.yml | 22 ----------------------
renovate.json5 | 4 ++++
2 files changed, 4 insertions(+), 22 deletions(-)
delete mode 100644 .github/dependabot.yml
create mode 100644 renovate.json5
diff --git a/.github/dependabot.yml b/.github/dependabot.yml
deleted file mode 100644
index 28d6d7b..0000000
--- a/.github/dependabot.yml
+++ /dev/null
@@ -1,22 +0,0 @@
-version: 2
-updates:
-- package-ecosystem: github-actions
- directory: "/"
- schedule:
- interval: daily
- # Run it at a specific time so that we don't get emails all day long
- time: "00:00"
- open-pull-requests-limit: 10
- ignore:
- - dependency-name: "*"
- # GitHub actions are using git tags (v1 = v1.2 = v1.2.3) which should be compatible until a major change is performed
- update-types:
- - "version-update:semver-minor"
- - "version-update:semver-patch"
-- package-ecosystem: maven
- directory: "/"
- schedule:
- interval: daily
- # Run it at a specific time so that we don't get emails all day long
- time: "00:00"
- open-pull-requests-limit: 10
diff --git a/renovate.json5 b/renovate.json5
new file mode 100644
index 0000000..11a77b2
--- /dev/null
+++ b/renovate.json5
@@ -0,0 +1,4 @@
+{
+ "$schema": "https://docs.renovatebot.com/renovate-schema.json",
+ "rebaseWhen": "behind-base-branch"
+}
From 84e5c3875da79de06f79ce1bbbf58c6d31ec6010 Mon Sep 17 00:00:00 2001
From: XDEV Renovate Bot
Date: Wed, 10 Apr 2024 11:18:26 +0000
Subject: [PATCH 05/28] Update dependency maven to v3.9.6
---
.mvn/wrapper/maven-wrapper.properties | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/.mvn/wrapper/maven-wrapper.properties b/.mvn/wrapper/maven-wrapper.properties
index eacdc9e..346d645 100644
--- a/.mvn/wrapper/maven-wrapper.properties
+++ b/.mvn/wrapper/maven-wrapper.properties
@@ -14,5 +14,5 @@
# KIND, either express or implied. See the License for the
# specific language governing permissions and limitations
# under the License.
-distributionUrl=https://repo.maven.apache.org/maven2/org/apache/maven/apache-maven/3.9.5/apache-maven-3.9.5-bin.zip
+distributionUrl=https://repo.maven.apache.org/maven2/org/apache/maven/apache-maven/3.9.6/apache-maven-3.9.6-bin.zip
wrapperUrl=https://repo.maven.apache.org/maven2/org/apache/maven/wrapper/maven-wrapper/3.2.0/maven-wrapper-3.2.0.jar
From a27c4efe8b86e58a5eb28e49e0192aec6a13a714 Mon Sep 17 00:00:00 2001
From: XDEV Renovate Bot
Date: Wed, 10 Apr 2024 11:18:27 +0000
Subject: [PATCH 06/28] Update peaceiris/actions-gh-pages action to v4
---
.github/workflows/release.yml | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/.github/workflows/release.yml b/.github/workflows/release.yml
index 46873c7..4ad042f 100644
--- a/.github/workflows/release.yml
+++ b/.github/workflows/release.yml
@@ -161,7 +161,7 @@ jobs:
working-directory: ${{ env.PRIMARY_MAVEN_MODULE }}
- name: Deploy to Github pages
- uses: peaceiris/actions-gh-pages@v3
+ uses: peaceiris/actions-gh-pages@v4
with:
github_token: ${{ secrets.GITHUB_TOKEN }}
publish_dir: ./${{ env.PRIMARY_MAVEN_MODULE }}/target/site
From 4865729466fda65da0fcc02386fa8b987c36d451 Mon Sep 17 00:00:00 2001
From: AB
Date: Wed, 10 Apr 2024 13:22:12 +0200
Subject: [PATCH 07/28] Modify workflows for renovate
---
.github/workflows/checkBuild.yml | 1 +
.github/workflows/sonar.yml | 3 +--
2 files changed, 2 insertions(+), 2 deletions(-)
diff --git a/.github/workflows/checkBuild.yml b/.github/workflows/checkBuild.yml
index d3993c2..fa9b7f5 100644
--- a/.github/workflows/checkBuild.yml
+++ b/.github/workflows/checkBuild.yml
@@ -72,6 +72,7 @@ jobs:
code-style:
runs-on: ubuntu-latest
+ if: ${{ github.event_name != 'pull_request' || !startsWith(github.head_ref, 'renovate/') }}
strategy:
matrix:
diff --git a/.github/workflows/sonar.yml b/.github/workflows/sonar.yml
index db10f67..1c9b0f8 100644
--- a/.github/workflows/sonar.yml
+++ b/.github/workflows/sonar.yml
@@ -27,8 +27,7 @@ jobs:
sonar:
name: SonarCloud Scan
runs-on: ubuntu-latest
- # Dependabot PRs have no access to secrets (SONAR_TOKEN) -> Ignore them
- if: ${{ github.event_name != 'pull_request' || !startsWith(github.head_ref, 'dependabot/') }}
+ if: ${{ github.event_name != 'pull_request' || !startsWith(github.head_ref, 'renovate/') }}
steps:
- uses: actions/checkout@v4
with:
From 57a2cd92227c569c2c6d1d011f4175e8d9862a89 Mon Sep 17 00:00:00 2001
From: AB
Date: Wed, 10 Apr 2024 15:12:15 +0200
Subject: [PATCH 08/28] Rename
---
.../pom.xml | 0
.../pom.xml | 0
2 files changed, 0 insertions(+), 0 deletions(-)
rename {standard-maven-template-demo => openapi-client-maven-template-demo}/pom.xml (100%)
rename {standard-maven-template => openapi-client-maven-template}/pom.xml (100%)
diff --git a/standard-maven-template-demo/pom.xml b/openapi-client-maven-template-demo/pom.xml
similarity index 100%
rename from standard-maven-template-demo/pom.xml
rename to openapi-client-maven-template-demo/pom.xml
diff --git a/standard-maven-template/pom.xml b/openapi-client-maven-template/pom.xml
similarity index 100%
rename from standard-maven-template/pom.xml
rename to openapi-client-maven-template/pom.xml
From 46b3f182dc3b6f6c305f702f402ca1ab13cd71ad Mon Sep 17 00:00:00 2001
From: XDEV Renovate Bot
Date: Wed, 10 Apr 2024 13:14:26 +0000
Subject: [PATCH 09/28] Update dependency
jakarta.annotation:jakarta.annotation-api to v3
---
openapi-client-maven-template/pom.xml | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/openapi-client-maven-template/pom.xml b/openapi-client-maven-template/pom.xml
index 4a2f83f..e1074f1 100644
--- a/openapi-client-maven-template/pom.xml
+++ b/openapi-client-maven-template/pom.xml
@@ -137,7 +137,7 @@
jakarta.annotation
jakarta.annotation-api
- 2.1.1
+ 3.0.0
From d21aae6a70a926740e6448eda93e894efa2b2712 Mon Sep 17 00:00:00 2001
From: XDEV Renovate Bot
Date: Thu, 11 Apr 2024 07:27:55 +0000
Subject: [PATCH 10/28] Update dependency
org.apache.maven.plugins:maven-gpg-plugin to v3.2.3
---
standard-maven-template/pom.xml | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/standard-maven-template/pom.xml b/standard-maven-template/pom.xml
index f25578a..5ee5275 100644
--- a/standard-maven-template/pom.xml
+++ b/standard-maven-template/pom.xml
@@ -182,7 +182,7 @@
org.apache.maven.plugins
maven-gpg-plugin
- 3.2.2
+ 3.2.3
sign-artifacts
From d1748a5779236e34017842ac8c2c759448261cad Mon Sep 17 00:00:00 2001
From: Alex B <45384811+AB-xdev@users.noreply.github.com>
Date: Tue, 16 Apr 2024 08:43:54 +0200
Subject: [PATCH 11/28] Update pom.xml
Remove unused inception year in demo
---
standard-maven-template-demo/pom.xml | 2 --
1 file changed, 2 deletions(-)
diff --git a/standard-maven-template-demo/pom.xml b/standard-maven-template-demo/pom.xml
index 0a4432d..a401ade 100644
--- a/standard-maven-template-demo/pom.xml
+++ b/standard-maven-template-demo/pom.xml
@@ -9,8 +9,6 @@
1.0.0-SNAPSHOT
jar
- 2022
-
XDEV Software
https://xdev.software
From 66507b7722dc48907273ff6dce848e0d3482dd97 Mon Sep 17 00:00:00 2001
From: Alex B <45384811+AB-xdev@users.noreply.github.com>
Date: Thu, 18 Apr 2024 09:37:24 +0200
Subject: [PATCH 12/28] Remove invalid space
---
LICENSE | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/LICENSE b/LICENSE
index 864bb41..ccaa2b3 100644
--- a/LICENSE
+++ b/LICENSE
@@ -186,7 +186,7 @@
same "printed page" as the copyright notice for easier
identification within third-party archives.
- Copyright 2024 XDEV Software
+ Copyright 2024 XDEV Software
Licensed under the Apache License, Version 2.0 (the "License");
you may not use this file except in compliance with the License.
From fd9656a52e736915f5867868bfb7e2bec09968db Mon Sep 17 00:00:00 2001
From: XDEV Renovate Bot
Date: Sat, 20 Apr 2024 02:15:22 +0000
Subject: [PATCH 13/28] Update dependency
org.apache.maven.plugins:maven-gpg-plugin to v3.2.4
---
standard-maven-template/pom.xml | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/standard-maven-template/pom.xml b/standard-maven-template/pom.xml
index 5ee5275..f8facd6 100644
--- a/standard-maven-template/pom.xml
+++ b/standard-maven-template/pom.xml
@@ -182,7 +182,7 @@
org.apache.maven.plugins
maven-gpg-plugin
- 3.2.3
+ 3.2.4
sign-artifacts
From 34acb7c46c304632c0a5dede676c5857d12a76f5 Mon Sep 17 00:00:00 2001
From: XDEV Renovate Bot
Date: Sun, 21 Apr 2024 02:19:24 +0000
Subject: [PATCH 14/28] Update dependency maven-wrapper to v3.3.0
---
.mvn/wrapper/maven-wrapper.properties | 1 -
mvnw | 428 +++++++++++---------------
mvnw.cmd | 301 ++++++++----------
3 files changed, 306 insertions(+), 424 deletions(-)
diff --git a/.mvn/wrapper/maven-wrapper.properties b/.mvn/wrapper/maven-wrapper.properties
index 346d645..7f15621 100644
--- a/.mvn/wrapper/maven-wrapper.properties
+++ b/.mvn/wrapper/maven-wrapper.properties
@@ -15,4 +15,3 @@
# specific language governing permissions and limitations
# under the License.
distributionUrl=https://repo.maven.apache.org/maven2/org/apache/maven/apache-maven/3.9.6/apache-maven-3.9.6-bin.zip
-wrapperUrl=https://repo.maven.apache.org/maven2/org/apache/maven/wrapper/maven-wrapper/3.2.0/maven-wrapper-3.2.0.jar
diff --git a/mvnw b/mvnw
index 8d937f4..0830332 100755
--- a/mvnw
+++ b/mvnw
@@ -19,290 +19,232 @@
# ----------------------------------------------------------------------------
# ----------------------------------------------------------------------------
-# Apache Maven Wrapper startup batch script, version 3.2.0
-#
-# Required ENV vars:
-# ------------------
-# JAVA_HOME - location of a JDK home dir
+# Apache Maven Wrapper startup batch script, version 3.3.0
#
# Optional ENV vars
# -----------------
-# MAVEN_OPTS - parameters passed to the Java VM when running Maven
-# e.g. to debug Maven itself, use
-# set MAVEN_OPTS=-Xdebug -Xrunjdwp:transport=dt_socket,server=y,suspend=y,address=8000
-# MAVEN_SKIP_RC - flag to disable loading of mavenrc files
+# JAVA_HOME - location of a JDK home dir, required when download maven via java source
+# MVNW_REPOURL - repo url base for downloading maven distribution
+# MVNW_USERNAME/MVNW_PASSWORD - user and password for downloading maven
+# MVNW_VERBOSE - true: enable verbose log; debug: trace the mvnw script; others: silence the output
# ----------------------------------------------------------------------------
-if [ -z "$MAVEN_SKIP_RC" ] ; then
-
- if [ -f /usr/local/etc/mavenrc ] ; then
- . /usr/local/etc/mavenrc
- fi
-
- if [ -f /etc/mavenrc ] ; then
- . /etc/mavenrc
- fi
-
- if [ -f "$HOME/.mavenrc" ] ; then
- . "$HOME/.mavenrc"
- fi
-
-fi
+set -euf
+[ "${MVNW_VERBOSE-}" != debug ] || set -x
-# OS specific support. $var _must_ be set to either true or false.
-cygwin=false;
-darwin=false;
-mingw=false
+# OS specific support.
+native_path() { printf %s\\n "$1"; }
case "$(uname)" in
- CYGWIN*) cygwin=true ;;
- MINGW*) mingw=true;;
- Darwin*) darwin=true
- # Use /usr/libexec/java_home if available, otherwise fall back to /Library/Java/Home
- # See https://developer.apple.com/library/mac/qa/qa1170/_index.html
- if [ -z "$JAVA_HOME" ]; then
- if [ -x "/usr/libexec/java_home" ]; then
- JAVA_HOME="$(/usr/libexec/java_home)"; export JAVA_HOME
- else
- JAVA_HOME="/Library/Java/Home"; export JAVA_HOME
- fi
- fi
- ;;
+CYGWIN* | MINGW*)
+ [ -z "${JAVA_HOME-}" ] || JAVA_HOME="$(cygpath --unix "$JAVA_HOME")"
+ native_path() { cygpath --path --windows "$1"; }
+ ;;
esac
-if [ -z "$JAVA_HOME" ] ; then
- if [ -r /etc/gentoo-release ] ; then
- JAVA_HOME=$(java-config --jre-home)
- fi
-fi
-
-# For Cygwin, ensure paths are in UNIX format before anything is touched
-if $cygwin ; then
- [ -n "$JAVA_HOME" ] &&
- JAVA_HOME=$(cygpath --unix "$JAVA_HOME")
- [ -n "$CLASSPATH" ] &&
- CLASSPATH=$(cygpath --path --unix "$CLASSPATH")
-fi
-
-# For Mingw, ensure paths are in UNIX format before anything is touched
-if $mingw ; then
- [ -n "$JAVA_HOME" ] && [ -d "$JAVA_HOME" ] &&
- JAVA_HOME="$(cd "$JAVA_HOME" || (echo "cannot cd into $JAVA_HOME."; exit 1); pwd)"
-fi
-
-if [ -z "$JAVA_HOME" ]; then
- javaExecutable="$(which javac)"
- if [ -n "$javaExecutable" ] && ! [ "$(expr "\"$javaExecutable\"" : '\([^ ]*\)')" = "no" ]; then
- # readlink(1) is not available as standard on Solaris 10.
- readLink=$(which readlink)
- if [ ! "$(expr "$readLink" : '\([^ ]*\)')" = "no" ]; then
- if $darwin ; then
- javaHome="$(dirname "\"$javaExecutable\"")"
- javaExecutable="$(cd "\"$javaHome\"" && pwd -P)/javac"
- else
- javaExecutable="$(readlink -f "\"$javaExecutable\"")"
- fi
- javaHome="$(dirname "\"$javaExecutable\"")"
- javaHome=$(expr "$javaHome" : '\(.*\)/bin')
- JAVA_HOME="$javaHome"
- export JAVA_HOME
- fi
- fi
-fi
-
-if [ -z "$JAVACMD" ] ; then
- if [ -n "$JAVA_HOME" ] ; then
- if [ -x "$JAVA_HOME/jre/sh/java" ] ; then
+# set JAVACMD and JAVACCMD
+set_java_home() {
+ # For Cygwin and MinGW, ensure paths are in Unix format before anything is touched
+ if [ -n "${JAVA_HOME-}" ]; then
+ if [ -x "$JAVA_HOME/jre/sh/java" ]; then
# IBM's JDK on AIX uses strange locations for the executables
JAVACMD="$JAVA_HOME/jre/sh/java"
+ JAVACCMD="$JAVA_HOME/jre/sh/javac"
else
JAVACMD="$JAVA_HOME/bin/java"
+ JAVACCMD="$JAVA_HOME/bin/javac"
+
+ if [ ! -x "$JAVACMD" ] || [ ! -x "$JAVACCMD" ]; then
+ echo "The JAVA_HOME environment variable is not defined correctly, so mvnw cannot run." >&2
+ echo "JAVA_HOME is set to \"$JAVA_HOME\", but \"\$JAVA_HOME/bin/java\" or \"\$JAVA_HOME/bin/javac\" does not exist." >&2
+ return 1
+ fi
fi
else
- JAVACMD="$(\unset -f command 2>/dev/null; \command -v java)"
- fi
-fi
-
-if [ ! -x "$JAVACMD" ] ; then
- echo "Error: JAVA_HOME is not defined correctly." >&2
- echo " We cannot execute $JAVACMD" >&2
- exit 1
-fi
-
-if [ -z "$JAVA_HOME" ] ; then
- echo "Warning: JAVA_HOME environment variable is not set."
-fi
-
-# traverses directory structure from process work directory to filesystem root
-# first directory with .mvn subdirectory is considered project base directory
-find_maven_basedir() {
- if [ -z "$1" ]
- then
- echo "Path not specified to find_maven_basedir"
- return 1
+ JAVACMD="$(
+ 'set' +e
+ 'unset' -f command 2>/dev/null
+ 'command' -v java
+ )" || :
+ JAVACCMD="$(
+ 'set' +e
+ 'unset' -f command 2>/dev/null
+ 'command' -v javac
+ )" || :
+
+ if [ ! -x "${JAVACMD-}" ] || [ ! -x "${JAVACCMD-}" ]; then
+ echo "The java/javac command does not exist in PATH nor is JAVA_HOME set, so mvnw cannot run." >&2
+ return 1
+ fi
fi
+}
- basedir="$1"
- wdir="$1"
- while [ "$wdir" != '/' ] ; do
- if [ -d "$wdir"/.mvn ] ; then
- basedir=$wdir
- break
- fi
- # workaround for JBEAP-8937 (on Solaris 10/Sparc)
- if [ -d "${wdir}" ]; then
- wdir=$(cd "$wdir/.." || exit 1; pwd)
- fi
- # end of workaround
+# hash string like Java String::hashCode
+hash_string() {
+ str="${1:-}" h=0
+ while [ -n "$str" ]; do
+ char="${str%"${str#?}"}"
+ h=$(((h * 31 + $(LC_CTYPE=C printf %d "'$char")) % 4294967296))
+ str="${str#?}"
done
- printf '%s' "$(cd "$basedir" || exit 1; pwd)"
+ printf %x\\n $h
}
-# concatenates all lines of a file
-concat_lines() {
- if [ -f "$1" ]; then
- # Remove \r in case we run on Windows within Git Bash
- # and check out the repository with auto CRLF management
- # enabled. Otherwise, we may read lines that are delimited with
- # \r\n and produce $'-Xarg\r' rather than -Xarg due to word
- # splitting rules.
- tr -s '\r\n' ' ' < "$1"
- fi
+verbose() { :; }
+[ "${MVNW_VERBOSE-}" != true ] || verbose() { printf %s\\n "${1-}"; }
+
+die() {
+ printf %s\\n "$1" >&2
+ exit 1
}
-log() {
- if [ "$MVNW_VERBOSE" = true ]; then
- printf '%s\n' "$1"
- fi
+# parse distributionUrl and optional distributionSha256Sum, requires .mvn/wrapper/maven-wrapper.properties
+while IFS="=" read -r key value; do
+ case "${key-}" in
+ distributionUrl) distributionUrl="${value-}" ;;
+ distributionSha256Sum) distributionSha256Sum="${value-}" ;;
+ esac
+done <"${0%/*}/.mvn/wrapper/maven-wrapper.properties"
+[ -n "${distributionUrl-}" ] || die "cannot read distributionUrl property in ${0%/*}/.mvn/wrapper/maven-wrapper.properties"
+
+case "${distributionUrl##*/}" in
+maven-mvnd-*bin.*)
+ MVN_CMD=mvnd.sh _MVNW_REPO_PATTERN=/maven/mvnd/
+ case "${PROCESSOR_ARCHITECTURE-}${PROCESSOR_ARCHITEW6432-}:$(uname -a)" in
+ *AMD64:CYGWIN* | *AMD64:MINGW*) distributionPlatform=windows-amd64 ;;
+ :Darwin*x86_64) distributionPlatform=darwin-amd64 ;;
+ :Darwin*arm64) distributionPlatform=darwin-aarch64 ;;
+ :Linux*x86_64*) distributionPlatform=linux-amd64 ;;
+ *)
+ echo "Cannot detect native platform for mvnd on $(uname)-$(uname -m), use pure java version" >&2
+ distributionPlatform=linux-amd64
+ ;;
+ esac
+ distributionUrl="${distributionUrl%-bin.*}-$distributionPlatform.zip"
+ ;;
+maven-mvnd-*) MVN_CMD=mvnd.sh _MVNW_REPO_PATTERN=/maven/mvnd/ ;;
+*) MVN_CMD="mvn${0##*/mvnw}" _MVNW_REPO_PATTERN=/org/apache/maven/ ;;
+esac
+
+# apply MVNW_REPOURL and calculate MAVEN_HOME
+# maven home pattern: ~/.m2/wrapper/dists/{apache-maven-,maven-mvnd--}/
+[ -z "${MVNW_REPOURL-}" ] || distributionUrl="$MVNW_REPOURL$_MVNW_REPO_PATTERN${distributionUrl#*"$_MVNW_REPO_PATTERN"}"
+distributionUrlName="${distributionUrl##*/}"
+distributionUrlNameMain="${distributionUrlName%.*}"
+distributionUrlNameMain="${distributionUrlNameMain%-bin}"
+MAVEN_HOME="$HOME/.m2/wrapper/dists/${distributionUrlNameMain-}/$(hash_string "$distributionUrl")"
+
+exec_maven() {
+ unset MVNW_VERBOSE MVNW_USERNAME MVNW_PASSWORD MVNW_REPOURL || :
+ exec "$MAVEN_HOME/bin/$MVN_CMD" "$@" || die "cannot exec $MAVEN_HOME/bin/$MVN_CMD"
}
-BASE_DIR=$(find_maven_basedir "$(dirname "$0")")
-if [ -z "$BASE_DIR" ]; then
- exit 1;
+if [ -d "$MAVEN_HOME" ]; then
+ verbose "found existing MAVEN_HOME at $MAVEN_HOME"
+ exec_maven "$@"
fi
-MAVEN_PROJECTBASEDIR=${MAVEN_BASEDIR:-"$BASE_DIR"}; export MAVEN_PROJECTBASEDIR
-log "$MAVEN_PROJECTBASEDIR"
+case "${distributionUrl-}" in
+*?-bin.zip | *?maven-mvnd-?*-?*.zip) ;;
+*) die "distributionUrl is not valid, must match *-bin.zip or maven-mvnd-*.zip, but found '${distributionUrl-}'" ;;
+esac
-##########################################################################################
-# Extension to allow automatically downloading the maven-wrapper.jar from Maven-central
-# This allows using the maven wrapper in projects that prohibit checking in binary data.
-##########################################################################################
-wrapperJarPath="$MAVEN_PROJECTBASEDIR/.mvn/wrapper/maven-wrapper.jar"
-if [ -r "$wrapperJarPath" ]; then
- log "Found $wrapperJarPath"
+# prepare tmp dir
+if TMP_DOWNLOAD_DIR="$(mktemp -d)" && [ -d "$TMP_DOWNLOAD_DIR" ]; then
+ clean() { rm -rf -- "$TMP_DOWNLOAD_DIR"; }
+ trap clean HUP INT TERM EXIT
else
- log "Couldn't find $wrapperJarPath, downloading it ..."
+ die "cannot create temp dir"
+fi
- if [ -n "$MVNW_REPOURL" ]; then
- wrapperUrl="$MVNW_REPOURL/org/apache/maven/wrapper/maven-wrapper/3.2.0/maven-wrapper-3.2.0.jar"
- else
- wrapperUrl="https://repo.maven.apache.org/maven2/org/apache/maven/wrapper/maven-wrapper/3.2.0/maven-wrapper-3.2.0.jar"
- fi
- while IFS="=" read -r key value; do
- # Remove '\r' from value to allow usage on windows as IFS does not consider '\r' as a separator ( considers space, tab, new line ('\n'), and custom '=' )
- safeValue=$(echo "$value" | tr -d '\r')
- case "$key" in (wrapperUrl) wrapperUrl="$safeValue"; break ;;
- esac
- done < "$MAVEN_PROJECTBASEDIR/.mvn/wrapper/maven-wrapper.properties"
- log "Downloading from: $wrapperUrl"
+mkdir -p -- "${MAVEN_HOME%/*}"
- if $cygwin; then
- wrapperJarPath=$(cygpath --path --windows "$wrapperJarPath")
- fi
+# Download and Install Apache Maven
+verbose "Couldn't find MAVEN_HOME, downloading and installing it ..."
+verbose "Downloading from: $distributionUrl"
+verbose "Downloading to: $TMP_DOWNLOAD_DIR/$distributionUrlName"
- if command -v wget > /dev/null; then
- log "Found wget ... using wget"
- [ "$MVNW_VERBOSE" = true ] && QUIET="" || QUIET="--quiet"
- if [ -z "$MVNW_USERNAME" ] || [ -z "$MVNW_PASSWORD" ]; then
- wget $QUIET "$wrapperUrl" -O "$wrapperJarPath" || rm -f "$wrapperJarPath"
- else
- wget $QUIET --http-user="$MVNW_USERNAME" --http-password="$MVNW_PASSWORD" "$wrapperUrl" -O "$wrapperJarPath" || rm -f "$wrapperJarPath"
- fi
- elif command -v curl > /dev/null; then
- log "Found curl ... using curl"
- [ "$MVNW_VERBOSE" = true ] && QUIET="" || QUIET="--silent"
- if [ -z "$MVNW_USERNAME" ] || [ -z "$MVNW_PASSWORD" ]; then
- curl $QUIET -o "$wrapperJarPath" "$wrapperUrl" -f -L || rm -f "$wrapperJarPath"
- else
- curl $QUIET --user "$MVNW_USERNAME:$MVNW_PASSWORD" -o "$wrapperJarPath" "$wrapperUrl" -f -L || rm -f "$wrapperJarPath"
- fi
- else
- log "Falling back to using Java to download"
- javaSource="$MAVEN_PROJECTBASEDIR/.mvn/wrapper/MavenWrapperDownloader.java"
- javaClass="$MAVEN_PROJECTBASEDIR/.mvn/wrapper/MavenWrapperDownloader.class"
- # For Cygwin, switch paths to Windows format before running javac
- if $cygwin; then
- javaSource=$(cygpath --path --windows "$javaSource")
- javaClass=$(cygpath --path --windows "$javaClass")
- fi
- if [ -e "$javaSource" ]; then
- if [ ! -e "$javaClass" ]; then
- log " - Compiling MavenWrapperDownloader.java ..."
- ("$JAVA_HOME/bin/javac" "$javaSource")
- fi
- if [ -e "$javaClass" ]; then
- log " - Running MavenWrapperDownloader.java ..."
- ("$JAVA_HOME/bin/java" -cp .mvn/wrapper MavenWrapperDownloader "$wrapperUrl" "$wrapperJarPath") || rm -f "$wrapperJarPath"
- fi
- fi
- fi
+# select .zip or .tar.gz
+if ! command -v unzip >/dev/null; then
+ distributionUrl="${distributionUrl%.zip}.tar.gz"
+ distributionUrlName="${distributionUrl##*/}"
fi
-##########################################################################################
-# End of extension
-##########################################################################################
-# If specified, validate the SHA-256 sum of the Maven wrapper jar file
-wrapperSha256Sum=""
-while IFS="=" read -r key value; do
- case "$key" in (wrapperSha256Sum) wrapperSha256Sum=$value; break ;;
- esac
-done < "$MAVEN_PROJECTBASEDIR/.mvn/wrapper/maven-wrapper.properties"
-if [ -n "$wrapperSha256Sum" ]; then
- wrapperSha256Result=false
- if command -v sha256sum > /dev/null; then
- if echo "$wrapperSha256Sum $wrapperJarPath" | sha256sum -c > /dev/null 2>&1; then
- wrapperSha256Result=true
+# verbose opt
+__MVNW_QUIET_WGET=--quiet __MVNW_QUIET_CURL=--silent __MVNW_QUIET_UNZIP=-q __MVNW_QUIET_TAR=''
+[ "${MVNW_VERBOSE-}" != true ] || __MVNW_QUIET_WGET='' __MVNW_QUIET_CURL='' __MVNW_QUIET_UNZIP='' __MVNW_QUIET_TAR=v
+
+# normalize http auth
+case "${MVNW_PASSWORD:+has-password}" in
+'') MVNW_USERNAME='' MVNW_PASSWORD='' ;;
+has-password) [ -n "${MVNW_USERNAME-}" ] || MVNW_USERNAME='' MVNW_PASSWORD='' ;;
+esac
+
+if [ -z "${MVNW_USERNAME-}" ] && command -v wget >/dev/null; then
+ verbose "Found wget ... using wget"
+ wget ${__MVNW_QUIET_WGET:+"$__MVNW_QUIET_WGET"} "$distributionUrl" -O "$TMP_DOWNLOAD_DIR/$distributionUrlName" || die "wget: Failed to fetch $distributionUrl"
+elif [ -z "${MVNW_USERNAME-}" ] && command -v curl >/dev/null; then
+ verbose "Found curl ... using curl"
+ curl ${__MVNW_QUIET_CURL:+"$__MVNW_QUIET_CURL"} -f -L -o "$TMP_DOWNLOAD_DIR/$distributionUrlName" "$distributionUrl" || die "curl: Failed to fetch $distributionUrl"
+elif set_java_home; then
+ verbose "Falling back to use Java to download"
+ javaSource="$TMP_DOWNLOAD_DIR/Downloader.java"
+ targetZip="$TMP_DOWNLOAD_DIR/$distributionUrlName"
+ cat >"$javaSource" <<-END
+ public class Downloader extends java.net.Authenticator
+ {
+ protected java.net.PasswordAuthentication getPasswordAuthentication()
+ {
+ return new java.net.PasswordAuthentication( System.getenv( "MVNW_USERNAME" ), System.getenv( "MVNW_PASSWORD" ).toCharArray() );
+ }
+ public static void main( String[] args ) throws Exception
+ {
+ setDefault( new Downloader() );
+ java.nio.file.Files.copy( new java.net.URL( args[0] ).openStream(), java.nio.file.Paths.get( args[1] ).toAbsolutePath().normalize() );
+ }
+ }
+ END
+ # For Cygwin/MinGW, switch paths to Windows format before running javac and java
+ verbose " - Compiling Downloader.java ..."
+ "$(native_path "$JAVACCMD")" "$(native_path "$javaSource")" || die "Failed to compile Downloader.java"
+ verbose " - Running Downloader.java ..."
+ "$(native_path "$JAVACMD")" -cp "$(native_path "$TMP_DOWNLOAD_DIR")" Downloader "$distributionUrl" "$(native_path "$targetZip")"
+fi
+
+# If specified, validate the SHA-256 sum of the Maven distribution zip file
+if [ -n "${distributionSha256Sum-}" ]; then
+ distributionSha256Result=false
+ if [ "$MVN_CMD" = mvnd.sh ]; then
+ echo "Checksum validation is not supported for maven-mvnd." >&2
+ echo "Please disable validation by removing 'distributionSha256Sum' from your maven-wrapper.properties." >&2
+ exit 1
+ elif command -v sha256sum >/dev/null; then
+ if echo "$distributionSha256Sum $TMP_DOWNLOAD_DIR/$distributionUrlName" | sha256sum -c >/dev/null 2>&1; then
+ distributionSha256Result=true
fi
- elif command -v shasum > /dev/null; then
- if echo "$wrapperSha256Sum $wrapperJarPath" | shasum -a 256 -c > /dev/null 2>&1; then
- wrapperSha256Result=true
+ elif command -v shasum >/dev/null; then
+ if echo "$distributionSha256Sum $TMP_DOWNLOAD_DIR/$distributionUrlName" | shasum -a 256 -c >/dev/null 2>&1; then
+ distributionSha256Result=true
fi
else
- echo "Checksum validation was requested but neither 'sha256sum' or 'shasum' are available."
- echo "Please install either command, or disable validation by removing 'wrapperSha256Sum' from your maven-wrapper.properties."
+ echo "Checksum validation was requested but neither 'sha256sum' or 'shasum' are available." >&2
+ echo "Please install either command, or disable validation by removing 'distributionSha256Sum' from your maven-wrapper.properties." >&2
exit 1
fi
- if [ $wrapperSha256Result = false ]; then
- echo "Error: Failed to validate Maven wrapper SHA-256, your Maven wrapper might be compromised." >&2
- echo "Investigate or delete $wrapperJarPath to attempt a clean download." >&2
- echo "If you updated your Maven version, you need to update the specified wrapperSha256Sum property." >&2
+ if [ $distributionSha256Result = false ]; then
+ echo "Error: Failed to validate Maven distribution SHA-256, your Maven distribution might be compromised." >&2
+ echo "If you updated your Maven version, you need to update the specified distributionSha256Sum property." >&2
exit 1
fi
fi
-MAVEN_OPTS="$(concat_lines "$MAVEN_PROJECTBASEDIR/.mvn/jvm.config") $MAVEN_OPTS"
-
-# For Cygwin, switch paths to Windows format before running java
-if $cygwin; then
- [ -n "$JAVA_HOME" ] &&
- JAVA_HOME=$(cygpath --path --windows "$JAVA_HOME")
- [ -n "$CLASSPATH" ] &&
- CLASSPATH=$(cygpath --path --windows "$CLASSPATH")
- [ -n "$MAVEN_PROJECTBASEDIR" ] &&
- MAVEN_PROJECTBASEDIR=$(cygpath --path --windows "$MAVEN_PROJECTBASEDIR")
+# unzip and move
+if command -v unzip >/dev/null; then
+ unzip ${__MVNW_QUIET_UNZIP:+"$__MVNW_QUIET_UNZIP"} "$TMP_DOWNLOAD_DIR/$distributionUrlName" -d "$TMP_DOWNLOAD_DIR" || die "failed to unzip"
+else
+ tar xzf${__MVNW_QUIET_TAR:+"$__MVNW_QUIET_TAR"} "$TMP_DOWNLOAD_DIR/$distributionUrlName" -C "$TMP_DOWNLOAD_DIR" || die "failed to untar"
fi
+printf %s\\n "$distributionUrl" >"$TMP_DOWNLOAD_DIR/$distributionUrlNameMain/mvnw.url"
+mv -- "$TMP_DOWNLOAD_DIR/$distributionUrlNameMain" "$MAVEN_HOME" || [ -d "$MAVEN_HOME" ] || die "fail to move MAVEN_HOME"
-# Provide a "standardized" way to retrieve the CLI args that will
-# work with both Windows and non-Windows executions.
-MAVEN_CMD_LINE_ARGS="$MAVEN_CONFIG $*"
-export MAVEN_CMD_LINE_ARGS
-
-WRAPPER_LAUNCHER=org.apache.maven.wrapper.MavenWrapperMain
-
-# shellcheck disable=SC2086 # safe args
-exec "$JAVACMD" \
- $MAVEN_OPTS \
- $MAVEN_DEBUG_OPTS \
- -classpath "$MAVEN_PROJECTBASEDIR/.mvn/wrapper/maven-wrapper.jar" \
- "-Dmaven.multiModuleProjectDirectory=${MAVEN_PROJECTBASEDIR}" \
- ${WRAPPER_LAUNCHER} $MAVEN_CONFIG "$@"
+clean || :
+exec_maven "$@"
diff --git a/mvnw.cmd b/mvnw.cmd
index c4586b5..136e686 100644
--- a/mvnw.cmd
+++ b/mvnw.cmd
@@ -1,3 +1,4 @@
+<# : batch portion
@REM ----------------------------------------------------------------------------
@REM Licensed to the Apache Software Foundation (ASF) under one
@REM or more contributor license agreements. See the NOTICE file
@@ -18,188 +19,128 @@
@REM ----------------------------------------------------------------------------
@REM ----------------------------------------------------------------------------
-@REM Apache Maven Wrapper startup batch script, version 3.2.0
-@REM
-@REM Required ENV vars:
-@REM JAVA_HOME - location of a JDK home dir
+@REM Apache Maven Wrapper startup batch script, version 3.3.0
@REM
@REM Optional ENV vars
-@REM MAVEN_BATCH_ECHO - set to 'on' to enable the echoing of the batch commands
-@REM MAVEN_BATCH_PAUSE - set to 'on' to wait for a keystroke before ending
-@REM MAVEN_OPTS - parameters passed to the Java VM when running Maven
-@REM e.g. to debug Maven itself, use
-@REM set MAVEN_OPTS=-Xdebug -Xrunjdwp:transport=dt_socket,server=y,suspend=y,address=8000
-@REM MAVEN_SKIP_RC - flag to disable loading of mavenrc files
+@REM MVNW_REPOURL - repo url base for downloading maven distribution
+@REM MVNW_USERNAME/MVNW_PASSWORD - user and password for downloading maven
+@REM MVNW_VERBOSE - true: enable verbose log; others: silence the output
@REM ----------------------------------------------------------------------------
-@REM Begin all REM lines with '@' in case MAVEN_BATCH_ECHO is 'on'
-@echo off
-@REM set title of command window
-title %0
-@REM enable echoing by setting MAVEN_BATCH_ECHO to 'on'
-@if "%MAVEN_BATCH_ECHO%" == "on" echo %MAVEN_BATCH_ECHO%
-
-@REM set %HOME% to equivalent of $HOME
-if "%HOME%" == "" (set "HOME=%HOMEDRIVE%%HOMEPATH%")
-
-@REM Execute a user defined script before this one
-if not "%MAVEN_SKIP_RC%" == "" goto skipRcPre
-@REM check for pre script, once with legacy .bat ending and once with .cmd ending
-if exist "%USERPROFILE%\mavenrc_pre.bat" call "%USERPROFILE%\mavenrc_pre.bat" %*
-if exist "%USERPROFILE%\mavenrc_pre.cmd" call "%USERPROFILE%\mavenrc_pre.cmd" %*
-:skipRcPre
-
-@setlocal
-
-set ERROR_CODE=0
-
-@REM To isolate internal variables from possible post scripts, we use another setlocal
-@setlocal
-
-@REM ==== START VALIDATION ====
-if not "%JAVA_HOME%" == "" goto OkJHome
-
-echo.
-echo Error: JAVA_HOME not found in your environment. >&2
-echo Please set the JAVA_HOME variable in your environment to match the >&2
-echo location of your Java installation. >&2
-echo.
-goto error
-
-:OkJHome
-if exist "%JAVA_HOME%\bin\java.exe" goto init
-
-echo.
-echo Error: JAVA_HOME is set to an invalid directory. >&2
-echo JAVA_HOME = "%JAVA_HOME%" >&2
-echo Please set the JAVA_HOME variable in your environment to match the >&2
-echo location of your Java installation. >&2
-echo.
-goto error
-
-@REM ==== END VALIDATION ====
-
-:init
-
-@REM Find the project base dir, i.e. the directory that contains the folder ".mvn".
-@REM Fallback to current working directory if not found.
-
-set MAVEN_PROJECTBASEDIR=%MAVEN_BASEDIR%
-IF NOT "%MAVEN_PROJECTBASEDIR%"=="" goto endDetectBaseDir
-
-set EXEC_DIR=%CD%
-set WDIR=%EXEC_DIR%
-:findBaseDir
-IF EXIST "%WDIR%"\.mvn goto baseDirFound
-cd ..
-IF "%WDIR%"=="%CD%" goto baseDirNotFound
-set WDIR=%CD%
-goto findBaseDir
-
-:baseDirFound
-set MAVEN_PROJECTBASEDIR=%WDIR%
-cd "%EXEC_DIR%"
-goto endDetectBaseDir
-
-:baseDirNotFound
-set MAVEN_PROJECTBASEDIR=%EXEC_DIR%
-cd "%EXEC_DIR%"
-
-:endDetectBaseDir
-
-IF NOT EXIST "%MAVEN_PROJECTBASEDIR%\.mvn\jvm.config" goto endReadAdditionalConfig
-
-@setlocal EnableExtensions EnableDelayedExpansion
-for /F "usebackq delims=" %%a in ("%MAVEN_PROJECTBASEDIR%\.mvn\jvm.config") do set JVM_CONFIG_MAVEN_PROPS=!JVM_CONFIG_MAVEN_PROPS! %%a
-@endlocal & set JVM_CONFIG_MAVEN_PROPS=%JVM_CONFIG_MAVEN_PROPS%
-
-:endReadAdditionalConfig
-
-SET MAVEN_JAVA_EXE="%JAVA_HOME%\bin\java.exe"
-set WRAPPER_JAR="%MAVEN_PROJECTBASEDIR%\.mvn\wrapper\maven-wrapper.jar"
-set WRAPPER_LAUNCHER=org.apache.maven.wrapper.MavenWrapperMain
-
-set WRAPPER_URL="https://repo.maven.apache.org/maven2/org/apache/maven/wrapper/maven-wrapper/3.2.0/maven-wrapper-3.2.0.jar"
-
-FOR /F "usebackq tokens=1,2 delims==" %%A IN ("%MAVEN_PROJECTBASEDIR%\.mvn\wrapper\maven-wrapper.properties") DO (
- IF "%%A"=="wrapperUrl" SET WRAPPER_URL=%%B
-)
-
-@REM Extension to allow automatically downloading the maven-wrapper.jar from Maven-central
-@REM This allows using the maven wrapper in projects that prohibit checking in binary data.
-if exist %WRAPPER_JAR% (
- if "%MVNW_VERBOSE%" == "true" (
- echo Found %WRAPPER_JAR%
- )
-) else (
- if not "%MVNW_REPOURL%" == "" (
- SET WRAPPER_URL="%MVNW_REPOURL%/org/apache/maven/wrapper/maven-wrapper/3.2.0/maven-wrapper-3.2.0.jar"
- )
- if "%MVNW_VERBOSE%" == "true" (
- echo Couldn't find %WRAPPER_JAR%, downloading it ...
- echo Downloading from: %WRAPPER_URL%
- )
-
- powershell -Command "&{"^
- "$webclient = new-object System.Net.WebClient;"^
- "if (-not ([string]::IsNullOrEmpty('%MVNW_USERNAME%') -and [string]::IsNullOrEmpty('%MVNW_PASSWORD%'))) {"^
- "$webclient.Credentials = new-object System.Net.NetworkCredential('%MVNW_USERNAME%', '%MVNW_PASSWORD%');"^
- "}"^
- "[Net.ServicePointManager]::SecurityProtocol = [Net.SecurityProtocolType]::Tls12; $webclient.DownloadFile('%WRAPPER_URL%', '%WRAPPER_JAR%')"^
- "}"
- if "%MVNW_VERBOSE%" == "true" (
- echo Finished downloading %WRAPPER_JAR%
- )
-)
-@REM End of extension
-
-@REM If specified, validate the SHA-256 sum of the Maven wrapper jar file
-SET WRAPPER_SHA_256_SUM=""
-FOR /F "usebackq tokens=1,2 delims==" %%A IN ("%MAVEN_PROJECTBASEDIR%\.mvn\wrapper\maven-wrapper.properties") DO (
- IF "%%A"=="wrapperSha256Sum" SET WRAPPER_SHA_256_SUM=%%B
+@IF "%__MVNW_ARG0_NAME__%"=="" (SET __MVNW_ARG0_NAME__=%~nx0)
+@SET __MVNW_CMD__=
+@SET __MVNW_ERROR__=
+@SET __MVNW_PSMODULEP_SAVE=%PSModulePath%
+@SET PSModulePath=
+@FOR /F "usebackq tokens=1* delims==" %%A IN (`powershell -noprofile "& {$scriptDir='%~dp0'; $script='%__MVNW_ARG0_NAME__%'; icm -ScriptBlock ([Scriptblock]::Create((Get-Content -Raw '%~f0'))) -NoNewScope}"`) DO @(
+ IF "%%A"=="MVN_CMD" (set __MVNW_CMD__=%%B) ELSE IF "%%B"=="" (echo %%A) ELSE (echo %%A=%%B)
)
-IF NOT %WRAPPER_SHA_256_SUM%=="" (
- powershell -Command "&{"^
- "$hash = (Get-FileHash \"%WRAPPER_JAR%\" -Algorithm SHA256).Hash.ToLower();"^
- "If('%WRAPPER_SHA_256_SUM%' -ne $hash){"^
- " Write-Output 'Error: Failed to validate Maven wrapper SHA-256, your Maven wrapper might be compromised.';"^
- " Write-Output 'Investigate or delete %WRAPPER_JAR% to attempt a clean download.';"^
- " Write-Output 'If you updated your Maven version, you need to update the specified wrapperSha256Sum property.';"^
- " exit 1;"^
- "}"^
- "}"
- if ERRORLEVEL 1 goto error
-)
-
-@REM Provide a "standardized" way to retrieve the CLI args that will
-@REM work with both Windows and non-Windows executions.
-set MAVEN_CMD_LINE_ARGS=%*
-
-%MAVEN_JAVA_EXE% ^
- %JVM_CONFIG_MAVEN_PROPS% ^
- %MAVEN_OPTS% ^
- %MAVEN_DEBUG_OPTS% ^
- -classpath %WRAPPER_JAR% ^
- "-Dmaven.multiModuleProjectDirectory=%MAVEN_PROJECTBASEDIR%" ^
- %WRAPPER_LAUNCHER% %MAVEN_CONFIG% %*
-if ERRORLEVEL 1 goto error
-goto end
-
-:error
-set ERROR_CODE=1
-
-:end
-@endlocal & set ERROR_CODE=%ERROR_CODE%
-
-if not "%MAVEN_SKIP_RC%"=="" goto skipRcPost
-@REM check for post script, once with legacy .bat ending and once with .cmd ending
-if exist "%USERPROFILE%\mavenrc_post.bat" call "%USERPROFILE%\mavenrc_post.bat"
-if exist "%USERPROFILE%\mavenrc_post.cmd" call "%USERPROFILE%\mavenrc_post.cmd"
-:skipRcPost
-
-@REM pause the script if MAVEN_BATCH_PAUSE is set to 'on'
-if "%MAVEN_BATCH_PAUSE%"=="on" pause
-
-if "%MAVEN_TERMINATE_CMD%"=="on" exit %ERROR_CODE%
-
-cmd /C exit /B %ERROR_CODE%
+@SET PSModulePath=%__MVNW_PSMODULEP_SAVE%
+@SET __MVNW_PSMODULEP_SAVE=
+@SET __MVNW_ARG0_NAME__=
+@SET MVNW_USERNAME=
+@SET MVNW_PASSWORD=
+@IF NOT "%__MVNW_CMD__%"=="" (%__MVNW_CMD__% %*)
+@echo Cannot start maven from wrapper >&2 && exit /b 1
+@GOTO :EOF
+: end batch / begin powershell #>
+
+$ErrorActionPreference = "Stop"
+if ($env:MVNW_VERBOSE -eq "true") {
+ $VerbosePreference = "Continue"
+}
+
+# calculate distributionUrl, requires .mvn/wrapper/maven-wrapper.properties
+$distributionUrl = (Get-Content -Raw "$scriptDir/.mvn/wrapper/maven-wrapper.properties" | ConvertFrom-StringData).distributionUrl
+if (!$distributionUrl) {
+ Write-Error "cannot read distributionUrl property in $scriptDir/.mvn/wrapper/maven-wrapper.properties"
+}
+
+switch -wildcard -casesensitive ( $($distributionUrl -replace '^.*/','') ) {
+ "maven-mvnd-*" {
+ $USE_MVND = $true
+ $distributionUrl = $distributionUrl -replace '-bin\.[^.]*$',"-windows-amd64.zip"
+ $MVN_CMD = "mvnd.cmd"
+ break
+ }
+ default {
+ $USE_MVND = $false
+ $MVN_CMD = $script -replace '^mvnw','mvn'
+ break
+ }
+}
+
+# apply MVNW_REPOURL and calculate MAVEN_HOME
+# maven home pattern: ~/.m2/wrapper/dists/{apache-maven-,maven-mvnd--}/
+if ($env:MVNW_REPOURL) {
+ $MVNW_REPO_PATTERN = if ($USE_MVND) { "/org/apache/maven/" } else { "/maven/mvnd/" }
+ $distributionUrl = "$env:MVNW_REPOURL$MVNW_REPO_PATTERN$($distributionUrl -replace '^.*'+$MVNW_REPO_PATTERN,'')"
+}
+$distributionUrlName = $distributionUrl -replace '^.*/',''
+$distributionUrlNameMain = $distributionUrlName -replace '\.[^.]*$','' -replace '-bin$',''
+$MAVEN_HOME_PARENT = "$HOME/.m2/wrapper/dists/$distributionUrlNameMain"
+$MAVEN_HOME_NAME = ([System.Security.Cryptography.MD5]::Create().ComputeHash([byte[]][char[]]$distributionUrl) | ForEach-Object {$_.ToString("x2")}) -join ''
+$MAVEN_HOME = "$MAVEN_HOME_PARENT/$MAVEN_HOME_NAME"
+
+if (Test-Path -Path "$MAVEN_HOME" -PathType Container) {
+ Write-Verbose "found existing MAVEN_HOME at $MAVEN_HOME"
+ Write-Output "MVN_CMD=$MAVEN_HOME/bin/$MVN_CMD"
+ exit $?
+}
+
+if (! $distributionUrlNameMain -or ($distributionUrlName -eq $distributionUrlNameMain)) {
+ Write-Error "distributionUrl is not valid, must end with *-bin.zip, but found $distributionUrl"
+}
+
+# prepare tmp dir
+$TMP_DOWNLOAD_DIR_HOLDER = New-TemporaryFile
+$TMP_DOWNLOAD_DIR = New-Item -Itemtype Directory -Path "$TMP_DOWNLOAD_DIR_HOLDER.dir"
+$TMP_DOWNLOAD_DIR_HOLDER.Delete() | Out-Null
+trap {
+ if ($TMP_DOWNLOAD_DIR.Exists) {
+ try { Remove-Item $TMP_DOWNLOAD_DIR -Recurse -Force | Out-Null }
+ catch { Write-Warning "Cannot remove $TMP_DOWNLOAD_DIR" }
+ }
+}
+
+New-Item -Itemtype Directory -Path "$MAVEN_HOME_PARENT" -Force | Out-Null
+
+# Download and Install Apache Maven
+Write-Verbose "Couldn't find MAVEN_HOME, downloading and installing it ..."
+Write-Verbose "Downloading from: $distributionUrl"
+Write-Verbose "Downloading to: $TMP_DOWNLOAD_DIR/$distributionUrlName"
+
+$webclient = New-Object System.Net.WebClient
+if ($env:MVNW_USERNAME -and $env:MVNW_PASSWORD) {
+ $webclient.Credentials = New-Object System.Net.NetworkCredential($env:MVNW_USERNAME, $env:MVNW_PASSWORD)
+}
+[Net.ServicePointManager]::SecurityProtocol = [Net.SecurityProtocolType]::Tls12
+$webclient.DownloadFile($distributionUrl, "$TMP_DOWNLOAD_DIR/$distributionUrlName") | Out-Null
+
+# If specified, validate the SHA-256 sum of the Maven distribution zip file
+$distributionSha256Sum = (Get-Content -Raw "$scriptDir/.mvn/wrapper/maven-wrapper.properties" | ConvertFrom-StringData).distributionSha256Sum
+if ($distributionSha256Sum) {
+ if ($USE_MVND) {
+ Write-Error "Checksum validation is not supported for maven-mvnd. `nPlease disable validation by removing 'distributionSha256Sum' from your maven-wrapper.properties."
+ }
+ Import-Module $PSHOME\Modules\Microsoft.PowerShell.Utility -Function Get-FileHash
+ if ((Get-FileHash "$TMP_DOWNLOAD_DIR/$distributionUrlName" -Algorithm SHA256).Hash.ToLower() -ne $distributionSha256Sum) {
+ Write-Error "Error: Failed to validate Maven distribution SHA-256, your Maven distribution might be compromised. If you updated your Maven version, you need to update the specified distributionSha256Sum property."
+ }
+}
+
+# unzip and move
+Expand-Archive "$TMP_DOWNLOAD_DIR/$distributionUrlName" -DestinationPath "$TMP_DOWNLOAD_DIR" | Out-Null
+Rename-Item -Path "$TMP_DOWNLOAD_DIR/$distributionUrlNameMain" -NewName $MAVEN_HOME_NAME | Out-Null
+try {
+ Move-Item -Path "$TMP_DOWNLOAD_DIR/$MAVEN_HOME_NAME" -Destination $MAVEN_HOME_PARENT | Out-Null
+} catch {
+ if (! (Test-Path -Path "$MAVEN_HOME" -PathType Container)) {
+ Write-Error "fail to move MAVEN_HOME"
+ }
+} finally {
+ try { Remove-Item $TMP_DOWNLOAD_DIR -Recurse -Force | Out-Null }
+ catch { Write-Warning "Cannot remove $TMP_DOWNLOAD_DIR" }
+}
+
+Write-Output "MVN_CMD=$MAVEN_HOME/bin/$MVN_CMD"
From cbaab7d6ff6ec692bd38fc0e8c6ffd1b5c49a39e Mon Sep 17 00:00:00 2001
From: AB
Date: Tue, 23 Apr 2024 08:35:54 +0200
Subject: [PATCH 15/28] Rename repo
---
.github/workflows/update-from-template.yml | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/.github/workflows/update-from-template.yml b/.github/workflows/update-from-template.yml
index 3d35a5c..41a1bcd 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/base-template.git
+ REMOTE_URL: https://github.com/xdev-software/java-template.git
REMOTE_BRANCH: master
permissions:
From 8c1ae59052b358e2a6f6532221a97931c4ef9723 Mon Sep 17 00:00:00 2001
From: AB
Date: Tue, 23 Apr 2024 08:37:20 +0200
Subject: [PATCH 16/28] Update checkstyle
---
.idea/checkstyle-idea.xml | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/.idea/checkstyle-idea.xml b/.idea/checkstyle-idea.xml
index 5c1e528..eb3fcd8 100644
--- a/.idea/checkstyle-idea.xml
+++ b/.idea/checkstyle-idea.xml
@@ -1,7 +1,7 @@
- 10.14.0
+ 10.15.0
JavaOnlyWithTests
true
true
From e1c2ac2c20c954d7747ed8a349f750076ab76d15 Mon Sep 17 00:00:00 2001
From: AB
Date: Tue, 23 Apr 2024 08:37:49 +0200
Subject: [PATCH 17/28] Standardize template-placeholder
---
SECURITY.md | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/SECURITY.md b/SECURITY.md
index 36d6305..34b9514 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/base-template/security/advisories/new).
+Please report a security vulnerability [on GitHub Security Advisories](https://github.com/xdev-software/template-placeholder/security/advisories/new).
From 29fd4deb26b6b013c857053364e1137556240c63 Mon Sep 17 00:00:00 2001
From: AB
Date: Tue, 23 Apr 2024 08:43:43 +0200
Subject: [PATCH 18/28] Standardize template-placeholder I
---
.run/Run Demo.run.xml | 2 +-
CONTRIBUTING.md | 4 ++--
README.md | 12 ++++++------
pom.xml | 6 +++---
standard-maven-template-demo/pom.xml | 4 ++--
standard-maven-template/pom.xml | 12 ++++++------
6 files changed, 20 insertions(+), 20 deletions(-)
diff --git a/.run/Run Demo.run.xml b/.run/Run Demo.run.xml
index 764b3b9..5fb2bc2 100644
--- a/.run/Run Demo.run.xml
+++ b/.run/Run Demo.run.xml
@@ -1,7 +1,7 @@
-
+
diff --git a/CONTRIBUTING.md b/CONTRIBUTING.md
index cbb31c6..d241a28 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 [](https://github.com/xdev-software/standard-maven-template/actions/workflows/release.yml)
+## Releasing [](https://github.com/xdev-software/template-placeholder/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/template-placeholder/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 db9412b..0760da8 100644
--- a/README.md
+++ b/README.md
@@ -1,12 +1,12 @@
-[](https://mvnrepository.com/artifact/software.xdev/standard-maven-template)
-[](https://github.com/xdev-software/standard-maven-template/actions/workflows/checkBuild.yml?query=branch%3Adevelop)
-[](https://sonarcloud.io/dashboard?id=xdev-software_standard-maven-template)
+[](https://mvnrepository.com/artifact/software.xdev/template-placeholder)
+[](https://github.com/xdev-software/template-placeholder/actions/workflows/checkBuild.yml?query=branch%3Adevelop)
+[](https://sonarcloud.io/dashboard?id=xdev-software_template-placeholder)
-# standard-maven-template
+# template-placeholder
## 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/template-placeholder/releases/latest#Installation)
## Support
@@ -16,4 +16,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/template-placeholder/dependencies)
diff --git a/pom.xml b/pom.xml
index 4e48f7a..5da2110 100644
--- a/pom.xml
+++ b/pom.xml
@@ -5,7 +5,7 @@
4.0.0
software.xdev
- standard-maven-template-root
+ template-placeholder-root
1.0.0-SNAPSHOT
pom
@@ -15,8 +15,8 @@
- standard-maven-template
- standard-maven-template-demo
+ template-placeholder
+ template-placeholder-demo
diff --git a/standard-maven-template-demo/pom.xml b/standard-maven-template-demo/pom.xml
index a401ade..78b4a3e 100644
--- a/standard-maven-template-demo/pom.xml
+++ b/standard-maven-template-demo/pom.xml
@@ -5,7 +5,7 @@
4.0.0
software.xdev
- standard-maven-template-demo
+ template-placeholder-demo
1.0.0-SNAPSHOT
jar
@@ -27,7 +27,7 @@
software.xdev
- standard-maven-template
+ template-placeholder
${project.version}
diff --git a/standard-maven-template/pom.xml b/standard-maven-template/pom.xml
index f8facd6..b72a766 100644
--- a/standard-maven-template/pom.xml
+++ b/standard-maven-template/pom.xml
@@ -5,17 +5,17 @@
4.0.0
software.xdev
- standard-maven-template
+ template-placeholder
1.0.0-SNAPSHOT
jar
- standard-maven-template
- standard-maven-template
- https://github.com/xdev-software/standard-maven-template
+ template-placeholder
+ template-placeholder
+ https://github.com/xdev-software/template-placeholder
- https://github.com/xdev-software/standard-maven-template
- scm:git:https://github.com/xdev-software/standard-maven-template.git
+ https://github.com/xdev-software/template-placeholder
+ scm:git:https://github.com/xdev-software/template-placeholder.git
2023
From 7bed85040287fc665c6f60e7fd19c6534b16f886 Mon Sep 17 00:00:00 2001
From: AB
Date: Tue, 23 Apr 2024 08:44:10 +0200
Subject: [PATCH 19/28] Standardize template-placeholder II
---
.../pom.xml | 0
{standard-maven-template => template-placeholder}/pom.xml | 0
2 files changed, 0 insertions(+), 0 deletions(-)
rename {standard-maven-template-demo => template-placeholder-demo}/pom.xml (100%)
rename {standard-maven-template => template-placeholder}/pom.xml (100%)
diff --git a/standard-maven-template-demo/pom.xml b/template-placeholder-demo/pom.xml
similarity index 100%
rename from standard-maven-template-demo/pom.xml
rename to template-placeholder-demo/pom.xml
diff --git a/standard-maven-template/pom.xml b/template-placeholder/pom.xml
similarity index 100%
rename from standard-maven-template/pom.xml
rename to template-placeholder/pom.xml
From d012f26c7755111ebf833800e3b3862ed98cb62b Mon Sep 17 00:00:00 2001
From: AB
Date: Tue, 23 Apr 2024 08:57:41 +0200
Subject: [PATCH 20/28] Standardize template-placeholder I
---
.run/Run Demo.run.xml | 2 +-
CONTRIBUTING.md | 4 ++--
README.md | 18 +++++++++---------
SECURITY.md | 2 +-
openapi-client-maven-template-demo/pom.xml | 4 ++--
openapi-client-maven-template/pom.xml | 12 ++++++------
openapi/INFO.md | 2 +-
pom.xml | 6 +++---
8 files changed, 25 insertions(+), 25 deletions(-)
diff --git a/.run/Run Demo.run.xml b/.run/Run Demo.run.xml
index ab7e1f7..ff66806 100644
--- a/.run/Run Demo.run.xml
+++ b/.run/Run Demo.run.xml
@@ -1,7 +1,7 @@
-
+
diff --git a/CONTRIBUTING.md b/CONTRIBUTING.md
index 9d9d147..d241a28 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 [](https://github.com/xdev-software/openapi-client-maven-template/actions/workflows/release.yml)
+## Releasing [](https://github.com/xdev-software/template-placeholder/actions/workflows/release.yml)
Before 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.
+* Consider doing a [test-deployment](https://github.com/xdev-software/template-placeholder/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 9c745f5..d22913e 100644
--- a/README.md
+++ b/README.md
@@ -1,17 +1,17 @@
-[](https://mvnrepository.com/artifact/software.xdev/openapi-client-maven-template)
-[](https://github.com/xdev-software/openapi-client-maven-template/actions/workflows/checkBuild.yml?query=branch%3Adevelop)
-[](https://sonarcloud.io/dashboard?id=xdev-software_openapi-client-maven-template)
-[](https://editor.swagger.io/?url=https://raw.githubusercontent.com/xdev-software/openapi-client-maven-template/develop/openapi/openapi.yml)
+[](https://mvnrepository.com/artifact/software.xdev/template-placeholder)
+[](https://github.com/xdev-software/template-placeholder/actions/workflows/checkBuild.yml?query=branch%3Adevelop)
+[](https://sonarcloud.io/dashboard?id=xdev-software_template-placeholder)
+[](https://editor.swagger.io/?url=https://raw.githubusercontent.com/xdev-software/template-placeholder/develop/openapi/openapi.yml)
-# openapi-client-maven-template
+# template-placeholder
-This client [is generated](./openapi-client-maven-template/pom.xml) from an [``openapi.yml``](./openapi/openapi.yml) using [OpenAPI Generator](https://openapi-generator.tech/).
+This client [is generated](./template-placeholder/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/openapi-client-maven-template/releases/latest#Installation)
+[Installation guide for the latest release](https://github.com/xdev-software/template-placeholder/releases/latest#Installation)
## Demo
-A minimal demo is also available [here](./openapi-client-maven-template-demo/src/main/java/software/xdev/Application.java).
+A minimal demo is also available [here](./template-placeholder-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).
@@ -20,4 +20,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/openapi-client-maven-template/dependencies)
+View the [license of the current project](LICENSE) or the [summary including all dependencies](https://xdev-software.github.io/template-placeholder/dependencies)
diff --git a/SECURITY.md b/SECURITY.md
index 5c8df81..34b9514 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/openapi-client-maven-template/security/advisories/new).
+Please report a security vulnerability [on GitHub Security Advisories](https://github.com/xdev-software/template-placeholder/security/advisories/new).
diff --git a/openapi-client-maven-template-demo/pom.xml b/openapi-client-maven-template-demo/pom.xml
index 7ae0f17..4d887cc 100644
--- a/openapi-client-maven-template-demo/pom.xml
+++ b/openapi-client-maven-template-demo/pom.xml
@@ -5,7 +5,7 @@
4.0.0
software.xdev
- openapi-client-maven-template-demo
+ template-placeholder-demo
1.0.0-SNAPSHOT
jar
@@ -31,7 +31,7 @@
software.xdev
- openapi-client-maven-template
+ template-placeholder
${project.version}
diff --git a/openapi-client-maven-template/pom.xml b/openapi-client-maven-template/pom.xml
index e1074f1..aa25b29 100644
--- a/openapi-client-maven-template/pom.xml
+++ b/openapi-client-maven-template/pom.xml
@@ -5,17 +5,17 @@
4.0.0
software.xdev
- openapi-client-maven-template
+ template-placeholder
1.0.0-SNAPSHOT
jar
- openapi-client-maven-template
- openapi-client-maven-template
- https://github.com/xdev-software/openapi-client-maven-template
+ template-placeholder
+ template-placeholder
+ https://github.com/xdev-software/template-placeholder
- https://github.com/xdev-software/openapi-client-maven-template
- scm:git:https://github.com/xdev-software/openapi-client-maven-template.git
+ https://github.com/xdev-software/template-placeholder
+ scm:git:https://github.com/xdev-software/template-placeholder.git
2023
diff --git a/openapi/INFO.md b/openapi/INFO.md
index b540460..98fb6a0 100644
--- a/openapi/INFO.md
+++ b/openapi/INFO.md
@@ -1,6 +1,6 @@
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/).
+The Java API Client can be generated using ``mvn clean compile -P openapi-generator`` inside [``template-placeholder``](../template-placeholder/).
Helpful links:
* https://jsonformatter.org/json-to-jsonschema
diff --git a/pom.xml b/pom.xml
index 58221aa..5da2110 100644
--- a/pom.xml
+++ b/pom.xml
@@ -5,7 +5,7 @@
4.0.0
software.xdev
- openapi-client-maven-template-root
+ template-placeholder-root
1.0.0-SNAPSHOT
pom
@@ -15,8 +15,8 @@
- openapi-client-maven-template
- openapi-client-maven-template-demo
+ template-placeholder
+ template-placeholder-demo
From 49ca7ff937007e0988d429959ac85fbd89bd82eb Mon Sep 17 00:00:00 2001
From: AB
Date: Tue, 23 Apr 2024 08:58:23 +0200
Subject: [PATCH 21/28] Standardize template-placeholder II
---
.../pom.xml | 0
{openapi-client-maven-template => template-placeholder}/pom.xml | 0
2 files changed, 0 insertions(+), 0 deletions(-)
rename {openapi-client-maven-template-demo => template-placeholder-demo}/pom.xml (100%)
rename {openapi-client-maven-template => template-placeholder}/pom.xml (100%)
diff --git a/openapi-client-maven-template-demo/pom.xml b/template-placeholder-demo/pom.xml
similarity index 100%
rename from openapi-client-maven-template-demo/pom.xml
rename to template-placeholder-demo/pom.xml
diff --git a/openapi-client-maven-template/pom.xml b/template-placeholder/pom.xml
similarity index 100%
rename from openapi-client-maven-template/pom.xml
rename to template-placeholder/pom.xml
From 85b2b0c37b33d57a1cf20fbcb8c4ecf004c2d225 Mon Sep 17 00:00:00 2001
From: XDEV Renovate Bot
Date: Tue, 23 Apr 2024 07:01:42 +0000
Subject: [PATCH 22/28] Update dependency
org.openapitools:openapi-generator-maven-plugin to v7.5.0
---
template-placeholder/pom.xml | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/template-placeholder/pom.xml b/template-placeholder/pom.xml
index eefb2f5..9e9032d 100644
--- a/template-placeholder/pom.xml
+++ b/template-placeholder/pom.xml
@@ -339,7 +339,7 @@
org.openapitools
openapi-generator-maven-plugin
- 7.4.0
+ 7.5.0
From 2d3d4d7846d584d8cf9afef1ea302b601cdb6700 Mon Sep 17 00:00:00 2001
From: AB
Date: Tue, 23 Apr 2024 10:23:43 +0200
Subject: [PATCH 23/28] Rename I
---
.run/Run Demo.run.xml | 2 +-
CONTRIBUTING.md | 4 ++--
README.md | 18 +++++++++---------
SECURITY.md | 2 +-
openapi/INFO.md | 2 +-
pom.xml | 6 +++---
template-placeholder-demo/pom.xml | 4 ++--
template-placeholder/pom.xml | 12 ++++++------
8 files changed, 25 insertions(+), 25 deletions(-)
diff --git a/.run/Run Demo.run.xml b/.run/Run Demo.run.xml
index ff66806..c3b0773 100644
--- a/.run/Run Demo.run.xml
+++ b/.run/Run Demo.run.xml
@@ -1,7 +1,7 @@
-
+
diff --git a/CONTRIBUTING.md b/CONTRIBUTING.md
index d241a28..09686f7 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 [](https://github.com/xdev-software/template-placeholder/actions/workflows/release.yml)
+## Releasing [](https://github.com/xdev-software/sessionize-java-client/actions/workflows/release.yml)
Before releasing:
-* Consider doing a [test-deployment](https://github.com/xdev-software/template-placeholder/actions/workflows/test-deploy.yml?query=branch%3Adevelop) before actually releasing.
+* Consider doing a [test-deployment](https://github.com/xdev-software/sessionize-java-client/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 d22913e..58093f7 100644
--- a/README.md
+++ b/README.md
@@ -1,17 +1,17 @@
-[](https://mvnrepository.com/artifact/software.xdev/template-placeholder)
-[](https://github.com/xdev-software/template-placeholder/actions/workflows/checkBuild.yml?query=branch%3Adevelop)
-[](https://sonarcloud.io/dashboard?id=xdev-software_template-placeholder)
-[](https://editor.swagger.io/?url=https://raw.githubusercontent.com/xdev-software/template-placeholder/develop/openapi/openapi.yml)
+[](https://mvnrepository.com/artifact/software.xdev/sessionize-java-client)
+[](https://github.com/xdev-software/sessionize-java-client/actions/workflows/checkBuild.yml?query=branch%3Adevelop)
+[](https://sonarcloud.io/dashboard?id=xdev-software_sessionize-java-client)
+[](https://editor.swagger.io/?url=https://raw.githubusercontent.com/xdev-software/sessionize-java-client/develop/openapi/openapi.yml)
-# template-placeholder
+# sessionize-java-client
-This client [is generated](./template-placeholder/pom.xml) from an [``openapi.yml``](./openapi/openapi.yml) using [OpenAPI Generator](https://openapi-generator.tech/).
+This client [is generated](./sessionize-java-client/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/template-placeholder/releases/latest#Installation)
+[Installation guide for the latest release](https://github.com/xdev-software/sessionize-java-client/releases/latest#Installation)
## Demo
-A minimal demo is also available [here](./template-placeholder-demo/src/main/java/software/xdev/Application.java).
+A minimal demo is also available [here](./sessionize-java-client-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).
@@ -20,4 +20,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/template-placeholder/dependencies)
+View the [license of the current project](LICENSE) or the [summary including all dependencies](https://xdev-software.github.io/sessionize-java-client/dependencies)
diff --git a/SECURITY.md b/SECURITY.md
index 34b9514..50ee7d0 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/template-placeholder/security/advisories/new).
+Please report a security vulnerability [on GitHub Security Advisories](https://github.com/xdev-software/sessionize-java-client/security/advisories/new).
diff --git a/openapi/INFO.md b/openapi/INFO.md
index 98fb6a0..525a8a3 100644
--- a/openapi/INFO.md
+++ b/openapi/INFO.md
@@ -1,6 +1,6 @@
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 [``template-placeholder``](../template-placeholder/).
+The Java API Client can be generated using ``mvn clean compile -P openapi-generator`` inside [``sessionize-java-client``](../sessionize-java-client/).
Helpful links:
* https://jsonformatter.org/json-to-jsonschema
diff --git a/pom.xml b/pom.xml
index 5da2110..4a44a79 100644
--- a/pom.xml
+++ b/pom.xml
@@ -5,7 +5,7 @@
4.0.0
software.xdev
- template-placeholder-root
+ sessionize-java-client-root
1.0.0-SNAPSHOT
pom
@@ -15,8 +15,8 @@
- template-placeholder
- template-placeholder-demo
+ sessionize-java-client
+ sessionize-java-client-demo
diff --git a/template-placeholder-demo/pom.xml b/template-placeholder-demo/pom.xml
index d26bfed..2b6e87d 100644
--- a/template-placeholder-demo/pom.xml
+++ b/template-placeholder-demo/pom.xml
@@ -5,7 +5,7 @@
4.0.0
software.xdev
- template-placeholder-demo
+ sessionize-java-client-demo
1.0.0-SNAPSHOT
jar
@@ -29,7 +29,7 @@
software.xdev
- template-placeholder
+ sessionize-java-client
${project.version}
diff --git a/template-placeholder/pom.xml b/template-placeholder/pom.xml
index 9e9032d..ba36817 100644
--- a/template-placeholder/pom.xml
+++ b/template-placeholder/pom.xml
@@ -5,17 +5,17 @@
4.0.0
software.xdev
- template-placeholder
+ sessionize-java-client
1.0.0-SNAPSHOT
jar
- template-placeholder
- template-placeholder
- https://github.com/xdev-software/template-placeholder
+ sessionize-java-client
+ sessionize-java-client
+ https://github.com/xdev-software/sessionize-java-client
- https://github.com/xdev-software/template-placeholder
- scm:git:https://github.com/xdev-software/template-placeholder.git
+ https://github.com/xdev-software/sessionize-java-client
+ scm:git:https://github.com/xdev-software/sessionize-java-client.git
2023
From d1ff57774bbe6f4124a9c3c5313956c3c9020d55 Mon Sep 17 00:00:00 2001
From: AB
Date: Tue, 23 Apr 2024 10:24:02 +0200
Subject: [PATCH 24/28] Rename II
---
.../pom.xml | 0
{template-placeholder => sessionize-java-client}/pom.xml | 0
2 files changed, 0 insertions(+), 0 deletions(-)
rename {template-placeholder-demo => sessionize-java-client-demo}/pom.xml (100%)
rename {template-placeholder => sessionize-java-client}/pom.xml (100%)
diff --git a/template-placeholder-demo/pom.xml b/sessionize-java-client-demo/pom.xml
similarity index 100%
rename from template-placeholder-demo/pom.xml
rename to sessionize-java-client-demo/pom.xml
diff --git a/template-placeholder/pom.xml b/sessionize-java-client/pom.xml
similarity index 100%
rename from template-placeholder/pom.xml
rename to sessionize-java-client/pom.xml
From 9313ca1e01da53b0cd527dc627428a3d59c95d60 Mon Sep 17 00:00:00 2001
From: AB
Date: Tue, 23 Apr 2024 10:26:18 +0200
Subject: [PATCH 25/28] Update generated code
---
.../software/xdev/sessionize/api/AllApi.java | 58 +++++++--
.../xdev/sessionize/api/SessionsApi.java | 58 +++++++--
.../xdev/sessionize/api/SpeakersApi.java | 58 +++++++--
.../xdev/sessionize/client/ApiClient.java | 24 +++-
.../xdev/sessionize/client/BaseApi.java | 120 ++++++++++++++++++
.../sessionize/client/RFC3339DateFormat.java | 2 +-
.../xdev/sessionize/model/SessionGroup.java | 2 +-
7 files changed, 271 insertions(+), 51 deletions(-)
create mode 100644 sessionize-java-client/src/generated/java/software/xdev/sessionize/client/BaseApi.java
diff --git a/sessionize-java-client/src/generated/java/software/xdev/sessionize/api/AllApi.java b/sessionize-java-client/src/generated/java/software/xdev/sessionize/api/AllApi.java
index 280311d..40dffa1 100644
--- a/sessionize-java-client/src/generated/java/software/xdev/sessionize/api/AllApi.java
+++ b/sessionize-java-client/src/generated/java/software/xdev/sessionize/api/AllApi.java
@@ -16,6 +16,7 @@
import software.xdev.sessionize.client.ApiException;
import software.xdev.sessionize.client.ApiClient;
+import software.xdev.sessionize.client.BaseApi;
import software.xdev.sessionize.client.Configuration;
import software.xdev.sessionize.client.Pair;
@@ -29,25 +30,14 @@
import java.util.Map;
import java.util.StringJoiner;
-public class AllApi {
-
-
- private ApiClient apiClient;
+public class AllApi extends BaseApi {
public AllApi() {
- this(Configuration.getDefaultApiClient());
+ super(Configuration.getDefaultApiClient());
}
public AllApi(ApiClient apiClient) {
- this.apiClient = apiClient;
- }
-
- public ApiClient getApiClient() {
- return apiClient;
- }
-
- public void setApiClient(ApiClient apiClient) {
- this.apiClient = apiClient;
+ super(apiClient);
}
/**
@@ -125,4 +115,44 @@ public AllResult getAll(String endpointId, Map additionalHeaders
);
}
+ @Override
+ public T invokeAPI(String url, String method, Object request, TypeReference returnType, Map additionalHeaders) throws ApiException {
+ String localVarPath = url.replace(apiClient.getBaseURL(), "");
+ StringJoiner localVarQueryStringJoiner = new StringJoiner("&");
+ List localVarQueryParams = new ArrayList();
+ List localVarCollectionQueryParams = new ArrayList();
+ Map localVarHeaderParams = new HashMap();
+ Map localVarCookieParams = new HashMap();
+ Map localVarFormParams = new HashMap();
+
+ localVarHeaderParams.putAll(additionalHeaders);
+
+ final String[] localVarAccepts = {
+ "application/json"
+ };
+ final String localVarAccept = apiClient.selectHeaderAccept(localVarAccepts);
+
+ final String[] localVarContentTypes = {
+
+ };
+ final String localVarContentType = apiClient.selectHeaderContentType(localVarContentTypes);
+
+ String[] localVarAuthNames = new String[] { };
+
+ return apiClient.invokeAPI(
+ localVarPath,
+ method,
+ localVarQueryParams,
+ localVarCollectionQueryParams,
+ localVarQueryStringJoiner.toString(),
+ request,
+ localVarHeaderParams,
+ localVarCookieParams,
+ localVarFormParams,
+ localVarAccept,
+ localVarContentType,
+ localVarAuthNames,
+ returnType
+ );
+ }
}
diff --git a/sessionize-java-client/src/generated/java/software/xdev/sessionize/api/SessionsApi.java b/sessionize-java-client/src/generated/java/software/xdev/sessionize/api/SessionsApi.java
index ad35978..dc68b32 100644
--- a/sessionize-java-client/src/generated/java/software/xdev/sessionize/api/SessionsApi.java
+++ b/sessionize-java-client/src/generated/java/software/xdev/sessionize/api/SessionsApi.java
@@ -16,6 +16,7 @@
import software.xdev.sessionize.client.ApiException;
import software.xdev.sessionize.client.ApiClient;
+import software.xdev.sessionize.client.BaseApi;
import software.xdev.sessionize.client.Configuration;
import software.xdev.sessionize.client.Pair;
@@ -29,25 +30,14 @@
import java.util.Map;
import java.util.StringJoiner;
-public class SessionsApi {
-
-
- private ApiClient apiClient;
+public class SessionsApi extends BaseApi {
public SessionsApi() {
- this(Configuration.getDefaultApiClient());
+ super(Configuration.getDefaultApiClient());
}
public SessionsApi(ApiClient apiClient) {
- this.apiClient = apiClient;
- }
-
- public ApiClient getApiClient() {
- return apiClient;
- }
-
- public void setApiClient(ApiClient apiClient) {
- this.apiClient = apiClient;
+ super(apiClient);
}
/**
@@ -125,4 +115,44 @@ public List getAllSessions(String endpointId, Map
);
}
+ @Override
+ public T invokeAPI(String url, String method, Object request, TypeReference returnType, Map additionalHeaders) throws ApiException {
+ String localVarPath = url.replace(apiClient.getBaseURL(), "");
+ StringJoiner localVarQueryStringJoiner = new StringJoiner("&");
+ List localVarQueryParams = new ArrayList();
+ List localVarCollectionQueryParams = new ArrayList();
+ Map localVarHeaderParams = new HashMap();
+ Map localVarCookieParams = new HashMap();
+ Map localVarFormParams = new HashMap();
+
+ localVarHeaderParams.putAll(additionalHeaders);
+
+ final String[] localVarAccepts = {
+ "application/json"
+ };
+ final String localVarAccept = apiClient.selectHeaderAccept(localVarAccepts);
+
+ final String[] localVarContentTypes = {
+
+ };
+ final String localVarContentType = apiClient.selectHeaderContentType(localVarContentTypes);
+
+ String[] localVarAuthNames = new String[] { };
+
+ return apiClient.invokeAPI(
+ localVarPath,
+ method,
+ localVarQueryParams,
+ localVarCollectionQueryParams,
+ localVarQueryStringJoiner.toString(),
+ request,
+ localVarHeaderParams,
+ localVarCookieParams,
+ localVarFormParams,
+ localVarAccept,
+ localVarContentType,
+ localVarAuthNames,
+ returnType
+ );
+ }
}
diff --git a/sessionize-java-client/src/generated/java/software/xdev/sessionize/api/SpeakersApi.java b/sessionize-java-client/src/generated/java/software/xdev/sessionize/api/SpeakersApi.java
index 1910341..bade3ed 100644
--- a/sessionize-java-client/src/generated/java/software/xdev/sessionize/api/SpeakersApi.java
+++ b/sessionize-java-client/src/generated/java/software/xdev/sessionize/api/SpeakersApi.java
@@ -16,6 +16,7 @@
import software.xdev.sessionize.client.ApiException;
import software.xdev.sessionize.client.ApiClient;
+import software.xdev.sessionize.client.BaseApi;
import software.xdev.sessionize.client.Configuration;
import software.xdev.sessionize.client.Pair;
@@ -30,25 +31,14 @@
import java.util.Map;
import java.util.StringJoiner;
-public class SpeakersApi {
-
-
- private ApiClient apiClient;
+public class SpeakersApi extends BaseApi {
public SpeakersApi() {
- this(Configuration.getDefaultApiClient());
+ super(Configuration.getDefaultApiClient());
}
public SpeakersApi(ApiClient apiClient) {
- this.apiClient = apiClient;
- }
-
- public ApiClient getApiClient() {
- return apiClient;
- }
-
- public void setApiClient(ApiClient apiClient) {
- this.apiClient = apiClient;
+ super(apiClient);
}
/**
@@ -209,4 +199,44 @@ public List getAllSpeakersEmails(String endpointId, String s,
);
}
+ @Override
+ public T invokeAPI(String url, String method, Object request, TypeReference returnType, Map additionalHeaders) throws ApiException {
+ String localVarPath = url.replace(apiClient.getBaseURL(), "");
+ StringJoiner localVarQueryStringJoiner = new StringJoiner("&");
+ List localVarQueryParams = new ArrayList();
+ List localVarCollectionQueryParams = new ArrayList();
+ Map localVarHeaderParams = new HashMap();
+ Map localVarCookieParams = new HashMap();
+ Map localVarFormParams = new HashMap();
+
+ localVarHeaderParams.putAll(additionalHeaders);
+
+ final String[] localVarAccepts = {
+ "application/json"
+ };
+ final String localVarAccept = apiClient.selectHeaderAccept(localVarAccepts);
+
+ final String[] localVarContentTypes = {
+
+ };
+ final String localVarContentType = apiClient.selectHeaderContentType(localVarContentTypes);
+
+ String[] localVarAuthNames = new String[] { };
+
+ return apiClient.invokeAPI(
+ localVarPath,
+ method,
+ localVarQueryParams,
+ localVarCollectionQueryParams,
+ localVarQueryStringJoiner.toString(),
+ request,
+ localVarHeaderParams,
+ localVarCookieParams,
+ localVarFormParams,
+ localVarAccept,
+ localVarContentType,
+ localVarAuthNames,
+ returnType
+ );
+ }
}
diff --git a/sessionize-java-client/src/generated/java/software/xdev/sessionize/client/ApiClient.java b/sessionize-java-client/src/generated/java/software/xdev/sessionize/client/ApiClient.java
index 4eba6c8..e2ab96f 100644
--- a/sessionize-java-client/src/generated/java/software/xdev/sessionize/client/ApiClient.java
+++ b/sessionize-java-client/src/generated/java/software/xdev/sessionize/client/ApiClient.java
@@ -769,15 +769,11 @@ protected File prepareDownloadFile(String contentDisposition) throws IOException
}
/**
- * Build full URL by concatenating base path, the given sub path and query parameters.
+ * Returns the URL of the client as defined by the server (if exists) or the base path.
*
- * @param path The sub path
- * @param queryParams The query parameters
- * @param collectionQueryParams The collection query parameters
- * @param urlQueryDeepObject URL query string of the deep object parameters
- * @return The full URL
+ * @return The URL for the client.
*/
- private String buildUrl(String path, List queryParams, List collectionQueryParams, String urlQueryDeepObject) {
+ public String getBaseURL() {
String baseURL;
if (serverIndex != null) {
if (serverIndex < 0 || serverIndex >= servers.size()) {
@@ -789,6 +785,20 @@ private String buildUrl(String path, List queryParams, List collecti
} else {
baseURL = basePath;
}
+ return baseURL;
+ }
+
+ /**
+ * Build full URL by concatenating base URL, the given sub path and query parameters.
+ *
+ * @param path The sub path
+ * @param queryParams The query parameters
+ * @param collectionQueryParams The collection query parameters
+ * @param urlQueryDeepObject URL query string of the deep object parameters
+ * @return The full URL
+ */
+ private String buildUrl(String path, List queryParams, List collectionQueryParams, String urlQueryDeepObject) {
+ String baseURL = getBaseURL();
final StringBuilder url = new StringBuilder();
url.append(baseURL).append(path);
diff --git a/sessionize-java-client/src/generated/java/software/xdev/sessionize/client/BaseApi.java b/sessionize-java-client/src/generated/java/software/xdev/sessionize/client/BaseApi.java
new file mode 100644
index 0000000..8842ebb
--- /dev/null
+++ b/sessionize-java-client/src/generated/java/software/xdev/sessionize/client/BaseApi.java
@@ -0,0 +1,120 @@
+/*
+ * Sessionize JSON-REST API
+ * Sessionize JSON-REST API documentation by XDEV Software
+ *
+ * The version of the OpenAPI document: 2.0
+ *
+ *
+ * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
+ * https://openapi-generator.tech
+ * Do not edit the class manually.
+ */
+
+package software.xdev.sessionize.client;
+
+import com.fasterxml.jackson.core.type.TypeReference;
+
+import java.util.Collections;
+import java.util.Map;
+
+public abstract class BaseApi {
+
+ protected ApiClient apiClient;
+
+ public BaseApi() {
+ this(Configuration.getDefaultApiClient());
+ }
+
+ public BaseApi(ApiClient apiClient) {
+ this.apiClient = apiClient;
+ }
+
+ public ApiClient getApiClient() {
+ return apiClient;
+ }
+
+ public void setApiClient(ApiClient apiClient) {
+ this.apiClient = apiClient;
+ }
+
+ /**
+ * Directly invoke the API for the given URL. Useful if the API returns direct links/URLs for subsequent requests.
+ * @param url The URL for the request, either full URL or only the path.
+ * @param method The HTTP method for the request.
+ * @throws ApiException if fails to make API call.
+ */
+ public void invokeAPI(String url, String method) throws ApiException {
+ invokeAPI(url, method, null, null, Collections.emptyMap());
+ }
+
+ /**
+ * Directly invoke the API for the given URL. Useful if the API returns direct links/URLs for subsequent requests.
+ * @param url The URL for the request, either full URL or only the path.
+ * @param method The HTTP method for the request.
+ * @param additionalHeaders Additional headers for the request.
+ * @throws ApiException if fails to make API call.
+ */
+ public void invokeAPI(String url, String method, Map additionalHeaders) throws ApiException {
+ invokeAPI(url, method, null, null, additionalHeaders);
+ }
+
+ /**
+ * Directly invoke the API for the given URL. Useful if the API returns direct links/URLs for subsequent requests.
+ * @param url The URL for the request, either full URL or only the path.
+ * @param method The HTTP method for the request.
+ * @param request The request object.
+ * @throws ApiException if fails to make API call.
+ */
+ public void invokeAPI(String url, String method, Object request) throws ApiException {
+ invokeAPI(url, method, request, null, Collections.emptyMap());
+ }
+
+ /**
+ * Directly invoke the API for the given URL. Useful if the API returns direct links/URLs for subsequent requests.
+ * @param url The URL for the request, either full URL or only the path.
+ * @param method The HTTP method for the request.
+ * @param request The request object.
+ * @param additionalHeaders Additional headers for the request.
+ * @throws ApiException if fails to make API call.
+ */
+ public void invokeAPI(String url, String method, Object request, Map additionalHeaders) throws ApiException {
+ invokeAPI(url, method, request, null, additionalHeaders);
+ }
+
+ /**
+ * Directly invoke the API for the given URL. Useful if the API returns direct links/URLs for subsequent requests.
+ * @param url The URL for the request, either full URL or only the path.
+ * @param method The HTTP method for the request.
+ * @param returnType The return type.
+ * @return The API response in the specified type.
+ * @throws ApiException if fails to make API call.
+ */
+ public T invokeAPI(String url, String method, TypeReference returnType) throws ApiException {
+ return invokeAPI(url, method, null, returnType, Collections.emptyMap());
+ }
+
+ /**
+ * Directly invoke the API for the given URL. Useful if the API returns direct links/URLs for subsequent requests.
+ * @param url The URL for the request, either full URL or only the path.
+ * @param method The HTTP method for the request.
+ * @param request The request object.
+ * @param returnType The return type.
+ * @return The API response in the specified type.
+ * @throws ApiException if fails to make API call.
+ */
+ public T invokeAPI(String url, String method, Object request, TypeReference returnType) throws ApiException {
+ return invokeAPI(url, method, request, returnType, Collections.emptyMap());
+ }
+
+ /**
+ * Directly invoke the API for the given URL. Useful if the API returns direct links/URLs for subsequent requests.
+ * @param url The URL for the request, either full URL or only the path.
+ * @param method The HTTP method for the request.
+ * @param request The request object.
+ * @param returnType The return type.
+ * @param additionalHeaders Additional headers for the request.
+ * @return The API response in the specified type.
+ * @throws ApiException if fails to make API call.
+ */
+ public abstract T invokeAPI(String url, String method, Object request, TypeReference returnType, Map additionalHeaders) throws ApiException;
+}
diff --git a/sessionize-java-client/src/generated/java/software/xdev/sessionize/client/RFC3339DateFormat.java b/sessionize-java-client/src/generated/java/software/xdev/sessionize/client/RFC3339DateFormat.java
index 2fd5200..f0f2243 100644
--- a/sessionize-java-client/src/generated/java/software/xdev/sessionize/client/RFC3339DateFormat.java
+++ b/sessionize-java-client/src/generated/java/software/xdev/sessionize/client/RFC3339DateFormat.java
@@ -53,4 +53,4 @@ public StringBuffer format(Date date, StringBuffer toAppendTo, FieldPosition fie
public Object clone() {
return super.clone();
}
-}
\ No newline at end of file
+}
diff --git a/sessionize-java-client/src/generated/java/software/xdev/sessionize/model/SessionGroup.java b/sessionize-java-client/src/generated/java/software/xdev/sessionize/model/SessionGroup.java
index ea5ff6f..22c3ff1 100644
--- a/sessionize-java-client/src/generated/java/software/xdev/sessionize/model/SessionGroup.java
+++ b/sessionize-java-client/src/generated/java/software/xdev/sessionize/model/SessionGroup.java
@@ -47,7 +47,7 @@ public class SessionGroup {
private String groupName;
public static final String JSON_PROPERTY_SESSIONS = "sessions";
- private List sessions;
+ private List sessions = new ArrayList<>();
public static final String JSON_PROPERTY_IS_DEFAULT = "isDefault";
private Boolean isDefault;
From 0c02844d998366afcb9618b3a1c7b57bd33e5a70 Mon Sep 17 00:00:00 2001
From: Alex B <45384811+AB-xdev@users.noreply.github.com>
Date: Fri, 26 Apr 2024 14:52:07 +0200
Subject: [PATCH 26/28] Update README.md
---
README.md | 3 +++
1 file changed, 3 insertions(+)
diff --git a/README.md b/README.md
index 200d45a..d50664b 100644
--- a/README.md
+++ b/README.md
@@ -21,6 +21,9 @@ Sessionize API ``v2``:
+> [!NOTE]
+> Make sure to enable "Use UTC timezone for schedule" in the API endpoint on Sessionize
+
## Installation
[Installation guide for the latest release](https://github.com/xdev-software/sessionize-java-client/releases/latest#Installation)
From c8eef8047df6fa7b09864b28948732d04c46e231 Mon Sep 17 00:00:00 2001
From: AB
Date: Fri, 26 Apr 2024 15:01:13 +0200
Subject: [PATCH 27/28] Make SessionId a string everywhere
Fixes #100
---
CHANGELOG.md | 4 +
openapi/openapi.yml | 32 +++----
.../xdev/sessionize/model/BaseSession.java | 46 +++++++++-
.../xdev/sessionize/model/Session.java | 88 +++++++++----------
.../xdev/sessionize/model/SessionAll.java | 88 +++++++++----------
5 files changed, 150 insertions(+), 108 deletions(-)
diff --git a/CHANGELOG.md b/CHANGELOG.md
index 410e833..0363027 100644
--- a/CHANGELOG.md
+++ b/CHANGELOG.md
@@ -1,3 +1,7 @@
+# 1.2.3
+* ``Session#id`` is now a String #100
+* Updated dependencies
+
# 1.2.2
* Updated dependencies
* Updated to OpenAPI Generator 7.4
diff --git a/openapi/openapi.yml b/openapi/openapi.yml
index 5fb1a61..f63c18c 100644
--- a/openapi/openapi.yml
+++ b/openapi/openapi.yml
@@ -289,6 +289,8 @@ components:
type: object
readOnly: true
properties:
+ id:
+ type: string
title:
type: string
description:
@@ -325,6 +327,7 @@ components:
$ref: '#/components/schemas/Status'
nullable: true
required:
+ - id
- categoryItems
- endsAt
- isPlenumSession
@@ -339,9 +342,6 @@ components:
- type: object
readOnly: true
properties:
- id:
- type: string
- format: integer # Sessions Endpoint contains only numeric IDs
room:
type: string
nullable: true
@@ -358,7 +358,6 @@ components:
items:
$ref: '#/components/schemas/CategorySession'
required:
- - id
- questionAnswers
- speakers
- categories
@@ -368,8 +367,6 @@ components:
- type: object
readOnly: true
properties:
- id:
- type: string # All Endpoint contains numeric IDs mixed with UUIDs
speakers:
type: array
items:
@@ -379,9 +376,19 @@ components:
items:
$ref: '#/components/schemas/QuestionAnswer' # All Endpoint
required:
- - id
- questionAnswers
- speakers
+ SessionMinimal:
+ type: object
+ readOnly: true
+ properties:
+ id:
+ type: integer
+ name:
+ type: string
+ required:
+ - id
+ - name
SessionGroup:
type: object
readOnly: true
@@ -396,17 +403,6 @@ components:
$ref: '#/components/schemas/Session'
isDefault:
type: boolean
- SessionMinimal:
- type: object
- readOnly: true
- properties:
- id:
- type: integer
- name:
- type: string
- required:
- - id
- - name
BaseSpeakerEssential:
type: object
readOnly: true
diff --git a/sessionize-java-client/src/generated/java/software/xdev/sessionize/model/BaseSession.java b/sessionize-java-client/src/generated/java/software/xdev/sessionize/model/BaseSession.java
index bae2742..98e6cf0 100644
--- a/sessionize-java-client/src/generated/java/software/xdev/sessionize/model/BaseSession.java
+++ b/sessionize-java-client/src/generated/java/software/xdev/sessionize/model/BaseSession.java
@@ -40,6 +40,7 @@
* BaseSession
*/
@JsonPropertyOrder({
+ BaseSession.JSON_PROPERTY_ID,
BaseSession.JSON_PROPERTY_TITLE,
BaseSession.JSON_PROPERTY_DESCRIPTION,
BaseSession.JSON_PROPERTY_STARTS_AT,
@@ -53,6 +54,9 @@
BaseSession.JSON_PROPERTY_STATUS
})
public class BaseSession {
+ public static final String JSON_PROPERTY_ID = "id";
+ private String id;
+
public static final String JSON_PROPERTY_TITLE = "title";
private String title;
@@ -89,6 +93,32 @@ public class BaseSession {
public BaseSession() {
}
+ public BaseSession id(String id) {
+
+ this.id = id;
+ return this;
+ }
+
+ /**
+ * Get id
+ * @return id
+ **/
+ @jakarta.annotation.Nonnull
+ @JsonProperty(JSON_PROPERTY_ID)
+ @JsonInclude(value = JsonInclude.Include.ALWAYS)
+
+ public String getId() {
+ return id;
+ }
+
+
+ @JsonProperty(JSON_PROPERTY_ID)
+ @JsonInclude(value = JsonInclude.Include.ALWAYS)
+ public void setId(String id) {
+ this.id = id;
+ }
+
+
public BaseSession title(String title) {
this.title = title;
@@ -415,7 +445,8 @@ public boolean equals(Object o) {
return false;
}
BaseSession baseSession = (BaseSession) o;
- return Objects.equals(this.title, baseSession.title) &&
+ return Objects.equals(this.id, baseSession.id) &&
+ Objects.equals(this.title, baseSession.title) &&
equalsNullable(this.description, baseSession.description) &&
Objects.equals(this.startsAt, baseSession.startsAt) &&
Objects.equals(this.endsAt, baseSession.endsAt) &&
@@ -434,7 +465,7 @@ private static boolean equalsNullable(JsonNullable a, JsonNullable b)
@Override
public int hashCode() {
- return Objects.hash(title, hashCodeNullable(description), startsAt, endsAt, isServiceSession, isPlenumSession, categoryItems, roomId, hashCodeNullable(liveUrl), hashCodeNullable(recordingUrl), status);
+ return Objects.hash(id, title, hashCodeNullable(description), startsAt, endsAt, isServiceSession, isPlenumSession, categoryItems, roomId, hashCodeNullable(liveUrl), hashCodeNullable(recordingUrl), status);
}
private static int hashCodeNullable(JsonNullable a) {
@@ -448,6 +479,7 @@ private static int hashCodeNullable(JsonNullable a) {
public String toString() {
StringBuilder sb = new StringBuilder();
sb.append("class BaseSession {\n");
+ sb.append(" id: ").append(toIndentedString(id)).append("\n");
sb.append(" title: ").append(toIndentedString(title)).append("\n");
sb.append(" description: ").append(toIndentedString(description)).append("\n");
sb.append(" startsAt: ").append(toIndentedString(startsAt)).append("\n");
@@ -506,6 +538,16 @@ public String toUrlQueryString(String prefix) {
StringJoiner joiner = new StringJoiner("&");
+ // add `id` to the URL query string
+ if (getId() != null) {
+ try {
+ joiner.add(String.format("%sid%s=%s", prefix, suffix, URLEncoder.encode(String.valueOf(getId()), "UTF-8").replaceAll("\\+", "%20")));
+ } catch (UnsupportedEncodingException e) {
+ // Should never happen, UTF-8 is always supported
+ throw new RuntimeException(e);
+ }
+ }
+
// add `title` to the URL query string
if (getTitle() != null) {
try {
diff --git a/sessionize-java-client/src/generated/java/software/xdev/sessionize/model/Session.java b/sessionize-java-client/src/generated/java/software/xdev/sessionize/model/Session.java
index 5f27ab0..d9c3563 100644
--- a/sessionize-java-client/src/generated/java/software/xdev/sessionize/model/Session.java
+++ b/sessionize-java-client/src/generated/java/software/xdev/sessionize/model/Session.java
@@ -43,6 +43,7 @@
* Session
*/
@JsonPropertyOrder({
+ Session.JSON_PROPERTY_ID,
Session.JSON_PROPERTY_TITLE,
Session.JSON_PROPERTY_DESCRIPTION,
Session.JSON_PROPERTY_STARTS_AT,
@@ -54,13 +55,15 @@
Session.JSON_PROPERTY_LIVE_URL,
Session.JSON_PROPERTY_RECORDING_URL,
Session.JSON_PROPERTY_STATUS,
- Session.JSON_PROPERTY_ID,
Session.JSON_PROPERTY_ROOM,
Session.JSON_PROPERTY_SPEAKERS,
Session.JSON_PROPERTY_QUESTION_ANSWERS,
Session.JSON_PROPERTY_CATEGORIES
})
public class Session {
+ public static final String JSON_PROPERTY_ID = "id";
+ private String id;
+
public static final String JSON_PROPERTY_TITLE = "title";
private String title;
@@ -94,9 +97,6 @@ public class Session {
public static final String JSON_PROPERTY_STATUS = "status";
private Status status;
- public static final String JSON_PROPERTY_ID = "id";
- private Integer id;
-
public static final String JSON_PROPERTY_ROOM = "room";
private JsonNullable room = JsonNullable.undefined();
@@ -112,6 +112,32 @@ public class Session {
public Session() {
}
+ public Session id(String id) {
+
+ this.id = id;
+ return this;
+ }
+
+ /**
+ * Get id
+ * @return id
+ **/
+ @jakarta.annotation.Nonnull
+ @JsonProperty(JSON_PROPERTY_ID)
+ @JsonInclude(value = JsonInclude.Include.ALWAYS)
+
+ public String getId() {
+ return id;
+ }
+
+
+ @JsonProperty(JSON_PROPERTY_ID)
+ @JsonInclude(value = JsonInclude.Include.ALWAYS)
+ public void setId(String id) {
+ this.id = id;
+ }
+
+
public Session title(String title) {
this.title = title;
@@ -430,32 +456,6 @@ public void setStatus(Status status) {
}
- public Session id(Integer id) {
-
- this.id = id;
- return this;
- }
-
- /**
- * Get id
- * @return id
- **/
- @jakarta.annotation.Nonnull
- @JsonProperty(JSON_PROPERTY_ID)
- @JsonInclude(value = JsonInclude.Include.ALWAYS)
-
- public Integer getId() {
- return id;
- }
-
-
- @JsonProperty(JSON_PROPERTY_ID)
- @JsonInclude(value = JsonInclude.Include.ALWAYS)
- public void setId(Integer id) {
- this.id = id;
- }
-
-
public Session room(String room) {
this.room = JsonNullable.of(room);
@@ -600,7 +600,8 @@ public boolean equals(Object o) {
return false;
}
Session session = (Session) o;
- return Objects.equals(this.title, session.title) &&
+ return Objects.equals(this.id, session.id) &&
+ Objects.equals(this.title, session.title) &&
equalsNullable(this.description, session.description) &&
Objects.equals(this.startsAt, session.startsAt) &&
Objects.equals(this.endsAt, session.endsAt) &&
@@ -611,7 +612,6 @@ public boolean equals(Object o) {
equalsNullable(this.liveUrl, session.liveUrl) &&
equalsNullable(this.recordingUrl, session.recordingUrl) &&
Objects.equals(this.status, session.status) &&
- Objects.equals(this.id, session.id) &&
equalsNullable(this.room, session.room) &&
Objects.equals(this.speakers, session.speakers) &&
Objects.equals(this.questionAnswers, session.questionAnswers) &&
@@ -624,7 +624,7 @@ private static boolean equalsNullable(JsonNullable a, JsonNullable b)
@Override
public int hashCode() {
- return Objects.hash(title, hashCodeNullable(description), startsAt, endsAt, isServiceSession, isPlenumSession, categoryItems, roomId, hashCodeNullable(liveUrl), hashCodeNullable(recordingUrl), status, id, hashCodeNullable(room), speakers, questionAnswers, categories);
+ return Objects.hash(id, title, hashCodeNullable(description), startsAt, endsAt, isServiceSession, isPlenumSession, categoryItems, roomId, hashCodeNullable(liveUrl), hashCodeNullable(recordingUrl), status, hashCodeNullable(room), speakers, questionAnswers, categories);
}
private static int hashCodeNullable(JsonNullable a) {
@@ -638,6 +638,7 @@ private static int hashCodeNullable(JsonNullable a) {
public String toString() {
StringBuilder sb = new StringBuilder();
sb.append("class Session {\n");
+ sb.append(" id: ").append(toIndentedString(id)).append("\n");
sb.append(" title: ").append(toIndentedString(title)).append("\n");
sb.append(" description: ").append(toIndentedString(description)).append("\n");
sb.append(" startsAt: ").append(toIndentedString(startsAt)).append("\n");
@@ -649,7 +650,6 @@ public String toString() {
sb.append(" liveUrl: ").append(toIndentedString(liveUrl)).append("\n");
sb.append(" recordingUrl: ").append(toIndentedString(recordingUrl)).append("\n");
sb.append(" status: ").append(toIndentedString(status)).append("\n");
- sb.append(" id: ").append(toIndentedString(id)).append("\n");
sb.append(" room: ").append(toIndentedString(room)).append("\n");
sb.append(" speakers: ").append(toIndentedString(speakers)).append("\n");
sb.append(" questionAnswers: ").append(toIndentedString(questionAnswers)).append("\n");
@@ -701,6 +701,16 @@ public String toUrlQueryString(String prefix) {
StringJoiner joiner = new StringJoiner("&");
+ // add `id` to the URL query string
+ if (getId() != null) {
+ try {
+ joiner.add(String.format("%sid%s=%s", prefix, suffix, URLEncoder.encode(String.valueOf(getId()), "UTF-8").replaceAll("\\+", "%20")));
+ } catch (UnsupportedEncodingException e) {
+ // Should never happen, UTF-8 is always supported
+ throw new RuntimeException(e);
+ }
+ }
+
// add `title` to the URL query string
if (getTitle() != null) {
try {
@@ -815,16 +825,6 @@ public String toUrlQueryString(String prefix) {
}
}
- // add `id` to the URL query string
- if (getId() != null) {
- try {
- joiner.add(String.format("%sid%s=%s", prefix, suffix, URLEncoder.encode(String.valueOf(getId()), "UTF-8").replaceAll("\\+", "%20")));
- } catch (UnsupportedEncodingException e) {
- // Should never happen, UTF-8 is always supported
- throw new RuntimeException(e);
- }
- }
-
// add `room` to the URL query string
if (getRoom() != null) {
try {
diff --git a/sessionize-java-client/src/generated/java/software/xdev/sessionize/model/SessionAll.java b/sessionize-java-client/src/generated/java/software/xdev/sessionize/model/SessionAll.java
index 5f4c737..340f9e0 100644
--- a/sessionize-java-client/src/generated/java/software/xdev/sessionize/model/SessionAll.java
+++ b/sessionize-java-client/src/generated/java/software/xdev/sessionize/model/SessionAll.java
@@ -41,6 +41,7 @@
* SessionAll
*/
@JsonPropertyOrder({
+ SessionAll.JSON_PROPERTY_ID,
SessionAll.JSON_PROPERTY_TITLE,
SessionAll.JSON_PROPERTY_DESCRIPTION,
SessionAll.JSON_PROPERTY_STARTS_AT,
@@ -52,11 +53,13 @@
SessionAll.JSON_PROPERTY_LIVE_URL,
SessionAll.JSON_PROPERTY_RECORDING_URL,
SessionAll.JSON_PROPERTY_STATUS,
- SessionAll.JSON_PROPERTY_ID,
SessionAll.JSON_PROPERTY_SPEAKERS,
SessionAll.JSON_PROPERTY_QUESTION_ANSWERS
})
public class SessionAll {
+ public static final String JSON_PROPERTY_ID = "id";
+ private String id;
+
public static final String JSON_PROPERTY_TITLE = "title";
private String title;
@@ -90,9 +93,6 @@ public class SessionAll {
public static final String JSON_PROPERTY_STATUS = "status";
private Status status;
- public static final String JSON_PROPERTY_ID = "id";
- private String id;
-
public static final String JSON_PROPERTY_SPEAKERS = "speakers";
private List speakers = new ArrayList<>();
@@ -102,6 +102,32 @@ public class SessionAll {
public SessionAll() {
}
+ public SessionAll id(String id) {
+
+ this.id = id;
+ return this;
+ }
+
+ /**
+ * Get id
+ * @return id
+ **/
+ @jakarta.annotation.Nonnull
+ @JsonProperty(JSON_PROPERTY_ID)
+ @JsonInclude(value = JsonInclude.Include.ALWAYS)
+
+ public String getId() {
+ return id;
+ }
+
+
+ @JsonProperty(JSON_PROPERTY_ID)
+ @JsonInclude(value = JsonInclude.Include.ALWAYS)
+ public void setId(String id) {
+ this.id = id;
+ }
+
+
public SessionAll title(String title) {
this.title = title;
@@ -420,32 +446,6 @@ public void setStatus(Status status) {
}
- public SessionAll id(String id) {
-
- this.id = id;
- return this;
- }
-
- /**
- * Get id
- * @return id
- **/
- @jakarta.annotation.Nonnull
- @JsonProperty(JSON_PROPERTY_ID)
- @JsonInclude(value = JsonInclude.Include.ALWAYS)
-
- public String getId() {
- return id;
- }
-
-
- @JsonProperty(JSON_PROPERTY_ID)
- @JsonInclude(value = JsonInclude.Include.ALWAYS)
- public void setId(String id) {
- this.id = id;
- }
-
-
public SessionAll speakers(List speakers) {
this.speakers = speakers;
@@ -522,7 +522,8 @@ public boolean equals(Object o) {
return false;
}
SessionAll sessionAll = (SessionAll) o;
- return Objects.equals(this.title, sessionAll.title) &&
+ return Objects.equals(this.id, sessionAll.id) &&
+ Objects.equals(this.title, sessionAll.title) &&
equalsNullable(this.description, sessionAll.description) &&
Objects.equals(this.startsAt, sessionAll.startsAt) &&
Objects.equals(this.endsAt, sessionAll.endsAt) &&
@@ -533,7 +534,6 @@ public boolean equals(Object o) {
equalsNullable(this.liveUrl, sessionAll.liveUrl) &&
equalsNullable(this.recordingUrl, sessionAll.recordingUrl) &&
Objects.equals(this.status, sessionAll.status) &&
- Objects.equals(this.id, sessionAll.id) &&
Objects.equals(this.speakers, sessionAll.speakers) &&
Objects.equals(this.questionAnswers, sessionAll.questionAnswers);
}
@@ -544,7 +544,7 @@ private static boolean equalsNullable(JsonNullable a, JsonNullable b)
@Override
public int hashCode() {
- return Objects.hash(title, hashCodeNullable(description), startsAt, endsAt, isServiceSession, isPlenumSession, categoryItems, roomId, hashCodeNullable(liveUrl), hashCodeNullable(recordingUrl), status, id, speakers, questionAnswers);
+ return Objects.hash(id, title, hashCodeNullable(description), startsAt, endsAt, isServiceSession, isPlenumSession, categoryItems, roomId, hashCodeNullable(liveUrl), hashCodeNullable(recordingUrl), status, speakers, questionAnswers);
}
private static int hashCodeNullable(JsonNullable a) {
@@ -558,6 +558,7 @@ private static int hashCodeNullable(JsonNullable a) {
public String toString() {
StringBuilder sb = new StringBuilder();
sb.append("class SessionAll {\n");
+ sb.append(" id: ").append(toIndentedString(id)).append("\n");
sb.append(" title: ").append(toIndentedString(title)).append("\n");
sb.append(" description: ").append(toIndentedString(description)).append("\n");
sb.append(" startsAt: ").append(toIndentedString(startsAt)).append("\n");
@@ -569,7 +570,6 @@ public String toString() {
sb.append(" liveUrl: ").append(toIndentedString(liveUrl)).append("\n");
sb.append(" recordingUrl: ").append(toIndentedString(recordingUrl)).append("\n");
sb.append(" status: ").append(toIndentedString(status)).append("\n");
- sb.append(" id: ").append(toIndentedString(id)).append("\n");
sb.append(" speakers: ").append(toIndentedString(speakers)).append("\n");
sb.append(" questionAnswers: ").append(toIndentedString(questionAnswers)).append("\n");
sb.append("}");
@@ -619,6 +619,16 @@ public String toUrlQueryString(String prefix) {
StringJoiner joiner = new StringJoiner("&");
+ // add `id` to the URL query string
+ if (getId() != null) {
+ try {
+ joiner.add(String.format("%sid%s=%s", prefix, suffix, URLEncoder.encode(String.valueOf(getId()), "UTF-8").replaceAll("\\+", "%20")));
+ } catch (UnsupportedEncodingException e) {
+ // Should never happen, UTF-8 is always supported
+ throw new RuntimeException(e);
+ }
+ }
+
// add `title` to the URL query string
if (getTitle() != null) {
try {
@@ -733,16 +743,6 @@ public String toUrlQueryString(String prefix) {
}
}
- // add `id` to the URL query string
- if (getId() != null) {
- try {
- joiner.add(String.format("%sid%s=%s", prefix, suffix, URLEncoder.encode(String.valueOf(getId()), "UTF-8").replaceAll("\\+", "%20")));
- } catch (UnsupportedEncodingException e) {
- // Should never happen, UTF-8 is always supported
- throw new RuntimeException(e);
- }
- }
-
// add `speakers` to the URL query string
if (getSpeakers() != null) {
for (int i = 0; i < getSpeakers().size(); i++) {
From 8d4230677d344e1df4dfa76a93d782ad6881c12a Mon Sep 17 00:00:00 2001
From: Alex B <45384811+AB-xdev@users.noreply.github.com>
Date: Fri, 26 Apr 2024 15:03:20 +0200
Subject: [PATCH 28/28] Update README.md
See also #99
---
README.md | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/README.md b/README.md
index d50664b..a1b7cbd 100644
--- a/README.md
+++ b/README.md
@@ -22,7 +22,7 @@ Sessionize API ``v2``:
> [!NOTE]
-> Make sure to enable "Use UTC timezone for schedule" in the API endpoint on Sessionize
+> Make sure to enable "Use UTC timezone for schedule" on the Sessionize API endpoint
## Installation
[Installation guide for the latest release](https://github.com/xdev-software/sessionize-java-client/releases/latest#Installation)