commit a4afd89baf6ebcd2128397f3fb31958cf4734295 Author: mita Date: Sun Oct 26 09:44:48 2025 +0100 Initial commit diff --git a/.DS_Store b/.DS_Store new file mode 100644 index 0000000..b38fd59 Binary files /dev/null and b/.DS_Store differ diff --git a/.gitattributes b/.gitattributes new file mode 100644 index 0000000..3b41682 --- /dev/null +++ b/.gitattributes @@ -0,0 +1,2 @@ +/mvnw text eol=lf +*.cmd text eol=crlf diff --git a/.gitignore b/.gitignore new file mode 100644 index 0000000..667aaef --- /dev/null +++ b/.gitignore @@ -0,0 +1,33 @@ +HELP.md +target/ +.mvn/wrapper/maven-wrapper.jar +!**/src/main/**/target/ +!**/src/test/**/target/ + +### STS ### +.apt_generated +.classpath +.factorypath +.project +.settings +.springBeans +.sts4-cache + +### IntelliJ IDEA ### +.idea +*.iws +*.iml +*.ipr + +### NetBeans ### +/nbproject/private/ +/nbbuild/ +/dist/ +/nbdist/ +/.nb-gradle/ +build/ +!**/src/main/**/build/ +!**/src/test/**/build/ + +### VS Code ### +.vscode/ diff --git a/.m2/wrapper/dists/apache-maven-3.9.11/a2d47e15/LICENSE b/.m2/wrapper/dists/apache-maven-3.9.11/a2d47e15/LICENSE new file mode 100644 index 0000000..0dc9a9f --- /dev/null +++ b/.m2/wrapper/dists/apache-maven-3.9.11/a2d47e15/LICENSE @@ -0,0 +1,616 @@ + + +Apache Maven includes a number of components and libraries with separate +copyright notices and license terms. Your use of those components are +subject to the terms and conditions of the following licenses: + + + + + + + + + + + +- lib/aopalliance-1.0.jar: aopalliance:aopalliance:jar:1.0 + Project: AOP alliance +Project URL: http://aopalliance.sourceforge.net + License: Public Domain (unrecognized) + + License URL: $license.url (lib/aopalliance.license) + + + + + + + + + + + + + + +- lib/gson-2.13.1.jar: com.google.code.gson:gson:jar:2.13.1 + Project: Gson +Project URL: https://github.com/google/gson + License: Apache-2.0 (Apache-2.0) + + License URL: https://www.apache.org/licenses/LICENSE-2.0.txt (lib/gson.license) + + + + + + + + + + + + + + +- lib/error_prone_annotations-2.38.0.jar: com.google.errorprone:error_prone_annotations:jar:2.38.0 + Project: error-prone annotations +Project URL: https://errorprone.info/error_prone_annotations + License: Apache 2.0 (Apache-2.0) + + License URL: http://www.apache.org/licenses/LICENSE-2.0.txt (lib/error_prone_annotations.license) + + + + + + + + + + + + + + + +- lib/failureaccess-1.0.3.jar: com.google.guava:failureaccess:jar:1.0.3 + Project: Guava InternalFutureFailureAccess and InternalFutures +Project URL: https://github.com/google/guava/ + License: Apache License, Version 2.0 (Apache-2.0) + + License URL: http://www.apache.org/licenses/LICENSE-2.0.txt (lib/failureaccess.license) + + + + + + + + + + + + + + +- lib/guava-33.4.8-jre.jar: com.google.guava:guava:bundle:33.4.8-jre + Project: Guava: Google Core Libraries for Java +Project URL: https://github.com/google/guava + License: Apache License, Version 2.0 (Apache-2.0) + + License URL: http://www.apache.org/licenses/LICENSE-2.0.txt (lib/guava.license) + + + + + + + + + + + + + + + +- lib/guice-5.1.0.jar: com.google.inject:guice:jar:5.1.0 + Project: Google Guice - Core Library +Project URL: https://github.com/google/guice/ + License: The Apache Software License, Version 2.0 (Apache-2.0) + + License URL: http://www.apache.org/licenses/LICENSE-2.0.txt (lib/guice.license) + + + + + + + + + + + + + + +- lib/commons-cli-1.9.0.jar: commons-cli:commons-cli:jar:1.9.0 + Project: Apache Commons CLI +Project URL: https://commons.apache.org/proper/commons-cli/ + License: Apache-2.0 (Apache-2.0) + + License URL: https://www.apache.org/licenses/LICENSE-2.0.txt (lib/commons-cli.license) + + + + + + + + + + + + + + +- lib/commons-codec-1.18.0.jar: commons-codec:commons-codec:jar:1.18.0 + Project: Apache Commons Codec +Project URL: https://commons.apache.org/proper/commons-codec/ + License: Apache-2.0 (Apache-2.0) + + License URL: https://www.apache.org/licenses/LICENSE-2.0.txt (lib/commons-codec.license) + + + + + + + + + + + + + + +- lib/javax.annotation-api-1.3.2.jar: javax.annotation:javax.annotation-api:jar:1.3.2 + Project: javax.annotation API +Project URL: http://jcp.org/en/jsr/detail?id=250 + License: CDDL + GPLv2 with classpath exception (unrecognized) + + License URL: https://github.com/javaee/javax.annotation/blob/master/LICENSE (lib/javax.annotation-api.license) + + + + + + + + + + + + + + +- lib/javax.inject-1.jar: javax.inject:javax.inject:jar:1 + Project: javax.inject +Project URL: http://code.google.com/p/atinject/ + License: The Apache Software License, Version 2.0 (Apache-2.0) + + License URL: http://www.apache.org/licenses/LICENSE-2.0.txt (lib/javax.inject.license) + + + + + + + + + + + + + + +- lib/httpclient-4.5.14.jar: org.apache.httpcomponents:httpclient:jar:4.5.14 + Project: Apache HttpClient +Project URL: http://hc.apache.org/httpcomponents-client-ga + License: Apache License, Version 2.0 (Apache-2.0) + + License URL: http://www.apache.org/licenses/LICENSE-2.0.txt (lib/httpclient.license) + + + + + + + + + + + + + + +- lib/httpcore-4.4.16.jar: org.apache.httpcomponents:httpcore:jar:4.4.16 + Project: Apache HttpCore +Project URL: http://hc.apache.org/httpcomponents-core-ga + License: Apache License, Version 2.0 (Apache-2.0) + + License URL: http://www.apache.org/licenses/LICENSE-2.0.txt (lib/httpcore.license) + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +- lib/plexus-cipher-2.0.jar: org.codehaus.plexus:plexus-cipher:jar:2.0 + Project: Plexus Cipher: encryption/decryption Component +Project URL: https://codehaus-plexus.github.io/plexus-cipher/ + License: Apache License, Version 2.0 (Apache-2.0) + + License URL: http://www.apache.org/licenses/LICENSE-2.0.txt (lib/plexus-cipher.license) + + + + + + + + + + + + + + + +- boot/plexus-classworlds-2.9.0.jar: org.codehaus.plexus:plexus-classworlds:bundle:2.9.0 + Project: Plexus Classworlds +Project URL: https://codehaus-plexus.github.io/plexus-classworlds/ + License: Apache-2.0 (Apache-2.0) + + License URL: https://www.apache.org/licenses/LICENSE-2.0.txt (boot/plexus-classworlds.license) + + + + + + + + + + + + + + +- lib/plexus-component-annotations-2.2.0.jar: org.codehaus.plexus:plexus-component-annotations:jar:2.2.0 + Project: Plexus :: Component Annotations (deprecated) +Project URL: https://codehaus-plexus.github.io/plexus-containers/plexus-component-annotations/ + License: Apache License, Version 2.0 (Apache-2.0) + + License URL: https://www.apache.org/licenses/LICENSE-2.0.txt (lib/plexus-component-annotations.license) + + + + + + + + + + + + + + +- lib/plexus-interpolation-1.28.jar: org.codehaus.plexus:plexus-interpolation:bundle:1.28 + Project: Plexus Interpolation API +Project URL: https://codehaus-plexus.github.io/plexus-pom/plexus-interpolation/ + License: Apache-2.0 (Apache-2.0) + + License URL: https://www.apache.org/licenses/LICENSE-2.0.txt (lib/plexus-interpolation.license) + + + + + + + + + + + + + + +- lib/plexus-sec-dispatcher-2.0.jar: org.codehaus.plexus:plexus-sec-dispatcher:jar:2.0 + Project: Plexus Security Dispatcher Component +Project URL: https://codehaus-plexus.github.io/plexus-sec-dispatcher/ + License: Apache License, Version 2.0 (Apache-2.0) + + License URL: http://www.apache.org/licenses/LICENSE-2.0.txt (lib/plexus-sec-dispatcher.license) + + + + + + + + + + + + + + +- lib/plexus-utils-3.6.0.jar: org.codehaus.plexus:plexus-utils:jar:3.6.0 + Project: Plexus Common Utilities +Project URL: https://codehaus-plexus.github.io/plexus-utils/ + License: Apache License, Version 2.0 (Apache-2.0) + + License URL: https://www.apache.org/licenses/LICENSE-2.0.txt (lib/plexus-utils.license) + + + + + + + + + + + + + + +- lib/org.eclipse.sisu.inject-0.9.0.M4.jar: org.eclipse.sisu:org.eclipse.sisu.inject:jar:0.9.0.M4 + Project: org.eclipse.sisu:org.eclipse.sisu.inject +Project URL: https://eclipse.dev/sisu/org.eclipse.sisu.inject/ + License: Eclipse Public License, Version 2.0 (EPL-2.0) + + License URL: https://www.eclipse.org/legal/epl-v20.html (lib/org.eclipse.sisu.inject.license) + + + + + + + + + + + + + + +- lib/org.eclipse.sisu.plexus-0.9.0.M4.jar: org.eclipse.sisu:org.eclipse.sisu.plexus:jar:0.9.0.M4 + Project: org.eclipse.sisu:org.eclipse.sisu.plexus +Project URL: https://eclipse.dev/sisu/org.eclipse.sisu.plexus/ + License: Eclipse Public License, Version 2.0 (EPL-2.0) + + License URL: https://www.eclipse.org/legal/epl-v20.html (lib/org.eclipse.sisu.plexus.license) + + + + + + + + + + + + + + +- lib/jansi-2.4.2.jar: org.fusesource.jansi:jansi:jar:2.4.2 + Project: Jansi +Project URL: http://fusesource.github.io/jansi + License: Apache License, Version 2.0 (Apache-2.0) + + License URL: http://www.apache.org/licenses/LICENSE-2.0.txt (lib/jansi.license) + + + + + + + + + + + + + + +- lib/jspecify-1.0.0.jar: org.jspecify:jspecify:jar:1.0.0 + Project: JSpecify annotations +Project URL: http://jspecify.org/ + License: The Apache License, Version 2.0 (Apache-2.0) + + License URL: http://www.apache.org/licenses/LICENSE-2.0.txt (lib/jspecify.license) + + + + + + + + + + + + + + +- lib/asm-9.8.jar: org.ow2.asm:asm:jar:9.8 + Project: asm +Project URL: http://asm.ow2.io/ + License: BSD-3-Clause (unrecognized) + + License URL: https://asm.ow2.io/license.html (lib/asm.license) + + + + + + + + + + + + + + +- lib/jcl-over-slf4j-1.7.36.jar: org.slf4j:jcl-over-slf4j:jar:1.7.36 + Project: JCL 1.2 implemented over SLF4J +Project URL: http://www.slf4j.org + License: Apache License, Version 2.0 (Apache-2.0) + + License URL: https://www.apache.org/licenses/LICENSE-2.0.txt (lib/jcl-over-slf4j.license) + + + + + + + + + + + + + + +- lib/slf4j-api-1.7.36.jar: org.slf4j:slf4j-api:jar:1.7.36 + Project: SLF4J API Module +Project URL: http://www.slf4j.org + License: MIT License (MIT) + + License URL: http://www.opensource.org/licenses/mit-license.php (lib/slf4j-api.license) + + + diff --git a/.m2/wrapper/dists/apache-maven-3.9.11/a2d47e15/NOTICE b/.m2/wrapper/dists/apache-maven-3.9.11/a2d47e15/NOTICE new file mode 100644 index 0000000..c058817 --- /dev/null +++ b/.m2/wrapper/dists/apache-maven-3.9.11/a2d47e15/NOTICE @@ -0,0 +1,98 @@ +This software bundles the following NOTICE files from third party library providers: + +META-INF/NOTICE in archive lib/guice-5.1.0.jar +Google Guice - Core Library +Copyright 2006-2022 Google, Inc. +This product includes software developed at +The Apache Software Foundation (http://www.apache.org/). + +META-INF/NOTICE in archive lib/plexus-utils-3.2.1.jar +This product includes software developed by the Indiana University + Extreme! Lab (http://www.extreme.indiana.edu/). +This product includes software developed by +The Apache Software Foundation (http://www.apache.org/). +This product includes software developed by +ThoughtWorks (http://www.thoughtworks.com). +This product includes software developed by +javolution (http://javolution.org/). +This product includes software developed by +Rome (https://rome.dev.java.net/). + +about.html in archive lib/org.eclipse.sisu.inject-0.3.5.jar + + + + + +About org.eclipse.sisu.inject + + +

About org.eclipse.sisu.inject

+ +

November 5, 2013

+

License

+ +

The Eclipse Foundation makes available all content in this plug-in ("Content"). Unless otherwise +indicated below, the Content is provided to you under the terms and conditions of the +Eclipse Public License Version 1.0 ("EPL"). A copy of the EPL is available +at http://www.eclipse.org/legal/epl-v10.html. +For purposes of the EPL, "Program" will mean the Content.

+ +

If you did not receive this Content directly from the Eclipse Foundation, the Content is +being redistributed by another party ("Redistributor") and different terms and conditions may +apply to your use of any object code in the Content. Check the Redistributor's license that was +provided with the Content. If no such license exists, contact the Redistributor. Unless otherwise +indicated below, the terms and conditions of the EPL still apply to any source code in the Content +and such source code may be obtained at http://www.eclipse.org.

+ +

Third Party Content

+

The Content includes items that have been sourced from third parties as set +out below. If you did not receive this Content directly from the Eclipse Foundation, +the following is provided for informational purposes only, and you should look +to the Redistributor's license for terms and conditions of use.

+ +

ASM 4.1

+

The plug-in includes software developed by the ObjectWeb consortium as part +of the ASM project at http://asm.ow2.org/.

+ +

A subset of ASM is re-packaged within the source and binary of the plug-in (org.eclipse.sisu.space.asm.*) +to avoid version collisions with other usage and is also available from the plug-in's github repository.

+ +

Your use of the ASM code is subject to the terms and conditions of the ASM License +below which is also available at http://asm.ow2.org/license.html.

+ +
+Copyright (c) 2000-2011 INRIA, France Telecom
+All rights reserved.
+
+Redistribution and use in source and binary forms, with or without
+modification, are permitted provided that the following conditions
+are met:
+
+1. Redistributions of source code must retain the above copyright
+   notice, this list of conditions and the following disclaimer.
+
+2. Redistributions in binary form must reproduce the above copyright
+   notice, this list of conditions and the following disclaimer in the
+   documentation and/or other materials provided with the distribution.
+
+3. Neither the name of the copyright holders nor the names of its
+   contributors may be used to endorse or promote products derived from
+   this software without specific prior written permission.
+
+THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
+AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
+IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
+ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE
+LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
+CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
+SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
+INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
+CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
+ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF
+THE POSSIBILITY OF SUCH DAMAGE.
+
+ + + diff --git a/.m2/wrapper/dists/apache-maven-3.9.11/a2d47e15/README.txt b/.m2/wrapper/dists/apache-maven-3.9.11/a2d47e15/README.txt new file mode 100644 index 0000000..6d959bb --- /dev/null +++ b/.m2/wrapper/dists/apache-maven-3.9.11/a2d47e15/README.txt @@ -0,0 +1,41 @@ + + Apache Maven + + What is it? + ----------- + + Maven is a software project management and comprehension tool. Based on + the concept of a Project Object Model (POM), Maven can manage a project's + build, reporting and documentation from a central piece of information. + + Documentation + ------------- + + The most up-to-date documentation can be found at https://maven.apache.org/. + + Release Notes + ------------- + + The full list of changes, system requirements and related can be found at https://maven.apache.org/docs/history.html. + + Installing Maven + ---------------- + + For complete documentation see https://maven.apache.org/download.html#Installation + + Licensing + --------- + + Please see the file called LICENSE. + + Maven URLS + ---------- + + Home Page: https://maven.apache.org/ + Downloads: https://maven.apache.org/download.html + Release Notes: https://maven.apache.org/docs/history.html + Mailing Lists: https://maven.apache.org/mailing-lists.html + Source Code: https://gitbox.apache.org/repos/asf/maven.git + Issue Tracking: https://issues.apache.org/jira/browse/MNG + Wiki: https://cwiki.apache.org/confluence/display/MAVEN/ + Available Plugins: https://maven.apache.org/plugins/ diff --git a/.m2/wrapper/dists/apache-maven-3.9.11/a2d47e15/bin/m2.conf b/.m2/wrapper/dists/apache-maven-3.9.11/a2d47e15/bin/m2.conf new file mode 100644 index 0000000..2817833 --- /dev/null +++ b/.m2/wrapper/dists/apache-maven-3.9.11/a2d47e15/bin/m2.conf @@ -0,0 +1,10 @@ +main is org.apache.maven.cli.MavenCli from plexus.core + +set maven.conf default ${maven.home}/conf + +[plexus.core] +load ${maven.conf}/logging +optionally ${maven.home}/lib/ext/redisson/*.jar +optionally ${maven.home}/lib/ext/hazelcast/*.jar +optionally ${maven.home}/lib/ext/*.jar +load ${maven.home}/lib/*.jar diff --git a/.m2/wrapper/dists/apache-maven-3.9.11/a2d47e15/bin/mvn b/.m2/wrapper/dists/apache-maven-3.9.11/a2d47e15/bin/mvn new file mode 100755 index 0000000..47dc7d7 --- /dev/null +++ b/.m2/wrapper/dists/apache-maven-3.9.11/a2d47e15/bin/mvn @@ -0,0 +1,216 @@ +#!/bin/sh + +# Licensed to the Apache Software Foundation (ASF) under one +# or more contributor license agreements. See the NOTICE file +# distributed with this work for additional information +# regarding copyright ownership. The ASF licenses this file +# to you under the Apache License, Version 2.0 (the +# "License"); you may not use this file except in compliance +# with the License. You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, +# software distributed under the License is distributed on an +# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY +# KIND, either express or implied. See the License for the +# specific language governing permissions and limitations +# under the License. + +# ----------------------------------------------------------------------------- +# Apache Maven Startup Script +# +# Environment Variable Prerequisites +# +# JAVA_HOME Must point at your Java Development Kit installation. +# MAVEN_ARGS (Optional) Arguments passed to Maven before CLI arguments. +# MAVEN_OPTS (Optional) Java runtime options used when Maven is executed. +# MAVEN_SKIP_RC (Optional) Flag to disable loading of mavenrc files. +# ----------------------------------------------------------------------------- + +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 + +# OS specific support. $var _must_ be set to either true or false. +cygwin=false; +mingw=false; +case "`uname`" in + CYGWIN*) cygwin=true;; + MINGW*) mingw=true;; +esac + +## resolve links - $0 may be a link to Maven's home +PRG="$0" + +# need this for relative symlinks +while [ -h "$PRG" ] ; do + ls=`ls -ld "$PRG"` + link=`expr "$ls" : '.*-> \(.*\)$'` + if expr "$link" : '/.*' > /dev/null; then + PRG="$link" + else + PRG="`dirname "$PRG"`/$link" + fi +done + +saveddir=`pwd` + +MAVEN_HOME=`dirname "$PRG"`/.. + +# make it fully qualified +MAVEN_HOME=`cd "$MAVEN_HOME" && pwd` + +cd "$saveddir" + +# For Cygwin, ensure paths are in Unix format before anything is touched +if $cygwin ; then + [ -n "$MAVEN_HOME" ] && + MAVEN_HOME=`cygpath --unix "$MAVEN_HOME"` + [ -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 "$MAVEN_HOME" ] && + MAVEN_HOME=`(cd "$MAVEN_HOME"; pwd)` + [ -n "$JAVA_HOME" ] && + JAVA_HOME=`(cd "$JAVA_HOME"; pwd)` + # TODO classpath? +fi + +if [ -z "$JAVA_HOME" ] ; then + JAVACMD="`\\unset -f command; \\command -v java`" +else + JAVACMD="$JAVA_HOME/bin/java" +fi + +if [ ! -x "$JAVACMD" ] ; then + echo "The JAVA_HOME environment variable is not defined correctly," >&2 + echo "this environment variable is needed to run this program." >&2 + exit 1 +fi + +CLASSWORLDS_JAR=`echo "${MAVEN_HOME}"/boot/plexus-classworlds-*.jar` +CLASSWORLDS_LAUNCHER=org.codehaus.plexus.classworlds.launcher.Launcher + +# For Cygwin, switch paths to Windows format before running java +if $cygwin ; then + [ -n "$MAVEN_HOME" ] && + MAVEN_HOME=`cygpath --path --windows "$MAVEN_HOME"` + [ -n "$JAVA_HOME" ] && + JAVA_HOME=`cygpath --path --windows "$JAVA_HOME"` + [ -n "$CLASSPATH" ] && + CLASSPATH=`cygpath --path --windows "$CLASSPATH"` + [ -n "$CLASSWORLDS_JAR" ] && + CLASSWORLDS_JAR=`cygpath --path --windows "$CLASSWORLDS_JAR"` +fi + +# traverses directory structure from process work directory to filesystem root +# first directory with .mvn subdirectory is considered project base directory +find_maven_basedir() { +( + basedir=`find_file_argument_basedir "$@"` + wdir="${basedir}" + while : + do + if [ -d "$wdir"/.mvn ] ; then + basedir=$wdir + break + fi + if [ "$wdir" = '/' ] ; then + break + fi + wdir=`cd "$wdir/.."; pwd` + done + echo "${basedir}" +) +} + +find_file_argument_basedir() { +( + basedir=`pwd` + + found_file_switch=0 + for arg in "$@"; do + if [ ${found_file_switch} -eq 1 ]; then + if [ -d "${arg}" ]; then + basedir=`cd "${arg}" && pwd -P` + elif [ -f "${arg}" ]; then + basedir=`dirname "${arg}"` + basedir=`cd "${basedir}" && pwd -P` + if [ ! -d "${basedir}" ]; then + echo "Directory ${basedir} extracted from the -f/--file command-line argument ${arg} does not exist" >&2 + exit 1 + fi + else + echo "POM file ${arg} specified with the -f/--file command line argument does not exist" >&2 + exit 1 + fi + break + fi + if [ "$arg" = "-f" -o "$arg" = "--file" ]; then + found_file_switch=1 + fi + done + echo "${basedir}" +) +} + +# concatenates all lines of a file +concat_lines() { + if [ -f "$1" ]; then + echo "`tr -s '\r\n' ' ' < "$1"`" + fi +} + +MAVEN_PROJECTBASEDIR="${MAVEN_BASEDIR:-`find_maven_basedir "$@"`}" +MAVEN_OPTS="`concat_lines "$MAVEN_PROJECTBASEDIR/.mvn/jvm.config"` $MAVEN_OPTS" + +# For Cygwin, switch project base directory path to Windows format before +# executing Maven otherwise this will cause Maven not to consider it. +if $cygwin ; then + [ -n "$MAVEN_PROJECTBASEDIR" ] && + MAVEN_PROJECTBASEDIR=`cygpath --path --windows "$MAVEN_PROJECTBASEDIR"` +fi + +export MAVEN_PROJECTBASEDIR + +# 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 + +# MNG-8248 +if "$JAVACMD" --enable-native-access=ALL-UNNAMED -version >/dev/null 2>&1; then + MAVEN_OPTS="--enable-native-access=ALL-UNNAMED $MAVEN_OPTS" + # MNG-8169 + if $mingw ; then + MAVEN_OPTS="--add-opens java.base/java.lang=ALL-UNNAMED $MAVEN_OPTS" + fi +fi + +exec "$JAVACMD" \ + $MAVEN_OPTS \ + $MAVEN_DEBUG_OPTS \ + -classpath "${CLASSWORLDS_JAR}" \ + "-Dclassworlds.conf=${MAVEN_HOME}/bin/m2.conf" \ + "-Dmaven.home=${MAVEN_HOME}" \ + "-Dlibrary.jansi.path=${MAVEN_HOME}/lib/jansi-native" \ + "-Dmaven.multiModuleProjectDirectory=${MAVEN_PROJECTBASEDIR}" \ + ${CLASSWORLDS_LAUNCHER} ${MAVEN_ARGS} "$@" diff --git a/.m2/wrapper/dists/apache-maven-3.9.11/a2d47e15/bin/mvn.cmd b/.m2/wrapper/dists/apache-maven-3.9.11/a2d47e15/bin/mvn.cmd new file mode 100644 index 0000000..972c39e --- /dev/null +++ b/.m2/wrapper/dists/apache-maven-3.9.11/a2d47e15/bin/mvn.cmd @@ -0,0 +1,211 @@ +@REM Licensed to the Apache Software Foundation (ASF) under one +@REM or more contributor license agreements. See the NOTICE file +@REM distributed with this work for additional information +@REM regarding copyright ownership. The ASF licenses this file +@REM to you under the Apache License, Version 2.0 (the +@REM "License"); you may not use this file except in compliance +@REM with the License. You may obtain a copy of the License at +@REM +@REM http://www.apache.org/licenses/LICENSE-2.0 +@REM +@REM Unless required by applicable law or agreed to in writing, +@REM software distributed under the License is distributed on an +@REM "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY +@REM KIND, either express or implied. See the License for the +@REM specific language governing permissions and limitations +@REM under the License. + +@REM ----------------------------------------------------------------------------- +@REM Apache Maven Startup Script +@REM +@REM Environment Variable Prerequisites +@REM +@REM JAVA_HOME Must point at your Java Development Kit installation. +@REM MAVEN_ARGS (Optional) Arguments passed to Maven before CLI arguments. +@REM MAVEN_BATCH_ECHO (Optional) Set to 'on' to enable the echoing of the batch commands. +@REM MAVEN_BATCH_PAUSE (Optional) set to 'on' to wait for a key stroke before ending. +@REM MAVEN_OPTS (Optional) Java runtime options used when Maven is executed. +@REM MAVEN_SKIP_RC (Optional) Flag to disable loading of mavenrc files. +@REM ----------------------------------------------------------------------------- + +@REM Begin all REM lines with '@' in case MAVEN_BATCH_ECHO is 'on' +@echo off +@REM enable echoing my setting MAVEN_BATCH_ECHO to 'on' +@if "%MAVEN_BATCH_ECHO%"=="on" echo %MAVEN_BATCH_ECHO% + +@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 ==== START VALIDATION ==== +if not "%JAVA_HOME%"=="" goto OkJHome +for %%i in (java.exe) do set "JAVACMD=%%~$PATH:i" +goto checkJCmd + +:OkJHome +set "JAVACMD=%JAVA_HOME%\bin\java.exe" + +:checkJCmd +if exist "%JAVACMD%" goto chkMHome + +echo The JAVA_HOME environment variable is not defined correctly, >&2 +echo this environment variable is needed to run this program. >&2 +goto error + +:chkMHome +set "MAVEN_HOME=%~dp0" +set "MAVEN_HOME=%MAVEN_HOME:~0,-5%" +if not "%MAVEN_HOME%"=="" goto checkMCmd +goto error + +:checkMCmd +if exist "%MAVEN_HOME%\bin\mvn.cmd" goto init +goto error +@REM ==== END VALIDATION ==== + +:init + +set MAVEN_CMD_LINE_ARGS=%* + +@REM Find the project basedir, i.e., the directory that contains the directory ".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%" + +@REM Look for the --file switch and start the search for the .mvn directory from the specified +@REM POM location, if supplied. + +set FILE_ARG= +:arg_loop +if "%~1" == "-f" ( + set "FILE_ARG=%~2" + shift + goto process_file_arg +) +if "%~1" == "--file" ( + set "FILE_ARG=%~2" + shift + goto process_file_arg +) +@REM If none of the above, skip the argument +shift +if not "%~1" == "" ( + goto arg_loop +) else ( + goto findBaseDir +) + +:process_file_arg +if "%FILE_ARG%" == "" ( + goto findBaseDir +) +if not exist "%FILE_ARG%" ( + echo POM file "%FILE_ARG%" specified the -f/--file command-line argument does not exist >&2 + goto error +) +if exist "%FILE_ARG%\*" ( + set "POM_DIR=%FILE_ARG%" +) else ( + call :get_directory_from_file "%FILE_ARG%" +) +if not exist "%POM_DIR%" ( + echo Directory "%POM_DIR%" extracted from the -f/--file command-line argument "%FILE_ARG%" does not exist >&2 + goto error +) +set "WDIR=%POM_DIR%" +goto findBaseDir + +:get_directory_from_file +set "POM_DIR=%~dp1" +:stripPomDir +if not "_%POM_DIR:~-1%"=="_\" goto pomDirStripped +set "POM_DIR=%POM_DIR:~0,-1%" +goto stripPomDir +:pomDirStripped +exit /b + +:findBaseDir +cd /d "%WDIR%" +set "WDIR=%CD%" +:findBaseDirLoop +if exist ".mvn" goto baseDirFound +cd .. +IF "%WDIR%"=="%CD%" goto baseDirNotFound +set "WDIR=%CD%" +goto findBaseDirLoop + +:baseDirFound +set "MAVEN_PROJECTBASEDIR=%WDIR%" +cd /d "%EXEC_DIR%" +goto endDetectBaseDir + +:baseDirNotFound +if "_%EXEC_DIR:~-1%"=="_\" set "EXEC_DIR=%EXEC_DIR:~0,-1%" +set "MAVEN_PROJECTBASEDIR=%EXEC_DIR%" +cd /d "%EXEC_DIR%" + +:endDetectBaseDir + +set "jvmConfig=\.mvn\jvm.config" +if not exist "%MAVEN_PROJECTBASEDIR%%jvmConfig%" 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 + +@REM do not let MAVEN_PROJECTBASEDIR end with a single backslash which would escape the double quote. This happens when .mvn at drive root. +if "_%MAVEN_PROJECTBASEDIR:~-1%"=="_\" set "MAVEN_PROJECTBASEDIR=%MAVEN_PROJECTBASEDIR%\" + +for %%i in ("%MAVEN_HOME%"\boot\plexus-classworlds-*) do set CLASSWORLDS_JAR="%%i" +set CLASSWORLDS_LAUNCHER=org.codehaus.plexus.classworlds.launcher.Launcher + +@REM MNG-8248 +"%JAVACMD%" --enable-native-access=ALL-UNNAMED -version >nul 2>&1 +if ERRORLEVEL 1 goto skipEnableNativeAccess +set "MAVEN_OPTS=--enable-native-access=ALL-UNNAMED %MAVEN_OPTS%" +:skipEnableNativeAccess + +"%JAVACMD%" ^ + %JVM_CONFIG_MAVEN_PROPS% ^ + %MAVEN_OPTS% ^ + %MAVEN_DEBUG_OPTS% ^ + -classpath %CLASSWORLDS_JAR% ^ + "-Dclassworlds.conf=%MAVEN_HOME%\bin\m2.conf" ^ + "-Dmaven.home=%MAVEN_HOME%" ^ + "-Dlibrary.jansi.path=%MAVEN_HOME%\lib\jansi-native" ^ + "-Dmaven.multiModuleProjectDirectory=%MAVEN_PROJECTBASEDIR%" ^ + %CLASSWORLDS_LAUNCHER% %MAVEN_ARGS% %MAVEN_CMD_LINE_ARGS% +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% + +exit /b %ERROR_CODE% diff --git a/.m2/wrapper/dists/apache-maven-3.9.11/a2d47e15/bin/mvnDebug b/.m2/wrapper/dists/apache-maven-3.9.11/a2d47e15/bin/mvnDebug new file mode 100755 index 0000000..2d7cafe --- /dev/null +++ b/.m2/wrapper/dists/apache-maven-3.9.11/a2d47e15/bin/mvnDebug @@ -0,0 +1,36 @@ +#!/bin/sh + +# Licensed to the Apache Software Foundation (ASF) under one +# or more contributor license agreements. See the NOTICE file +# distributed with this work for additional information +# regarding copyright ownership. The ASF licenses this file +# to you under the Apache License, Version 2.0 (the +# "License"); you may not use this file except in compliance +# with the License. You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, +# software distributed under the License is distributed on an +# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY +# KIND, either express or implied. See the License for the +# specific language governing permissions and limitations +# under the License. + +# ----------------------------------------------------------------------------- +# Apache Maven Debug Script +# +# Environment Variable Prerequisites +# +# JAVA_HOME Must point at your Java Development Kit installation. +# MAVEN_ARGS (Optional) Arguments passed to Maven before CLI arguments. +# MAVEN_OPTS (Optional) Java runtime options used when Maven is executed. +# MAVEN_SKIP_RC (Optional) Flag to disable loading of mavenrc files. +# MAVEN_DEBUG_ADDRESS (Optional) Set the debug address. Default value is 8000 +# ----------------------------------------------------------------------------- + +MAVEN_DEBUG_OPTS="-Xdebug -Xrunjdwp:transport=dt_socket,server=y,suspend=y,address=${MAVEN_DEBUG_ADDRESS:-8000}" + +echo Preparing to execute Maven in debug mode + +env MAVEN_OPTS="$MAVEN_OPTS" MAVEN_DEBUG_OPTS="$MAVEN_DEBUG_OPTS" "`dirname "$0"`/mvn" "$@" diff --git a/.m2/wrapper/dists/apache-maven-3.9.11/a2d47e15/bin/mvnDebug.cmd b/.m2/wrapper/dists/apache-maven-3.9.11/a2d47e15/bin/mvnDebug.cmd new file mode 100644 index 0000000..9777cf9 --- /dev/null +++ b/.m2/wrapper/dists/apache-maven-3.9.11/a2d47e15/bin/mvnDebug.cmd @@ -0,0 +1,45 @@ +@REM Licensed to the Apache Software Foundation (ASF) under one +@REM or more contributor license agreements. See the NOTICE file +@REM distributed with this work for additional information +@REM regarding copyright ownership. The ASF licenses this file +@REM to you under the Apache License, Version 2.0 (the +@REM "License"); you may not use this file except in compliance +@REM with the License. You may obtain a copy of the License at +@REM +@REM http://www.apache.org/licenses/LICENSE-2.0 +@REM +@REM Unless required by applicable law or agreed to in writing, +@REM software distributed under the License is distributed on an +@REM "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY +@REM KIND, either express or implied. See the License for the +@REM specific language governing permissions and limitations +@REM under the License. + +@REM ----------------------------------------------------------------------------- +@REM Apache Maven Debug Script +@REM +@REM Environment Variable Prerequisites +@REM +@REM JAVA_HOME Must point at your Java Development Kit installation. +@REM MAVEN_ARGS (Optional) Arguments passed to Maven before CLI arguments. +@REM MAVEN_BATCH_ECHO (Optional) Set to 'on' to enable the echoing of the batch commands. +@REM MAVEN_BATCH_PAUSE (Optional) set to 'on' to wait for a key stroke before ending. +@REM MAVEN_OPTS (Optional) Java runtime options used when Maven is executed. +@REM MAVEN_SKIP_RC (Optional) Flag to disable loading of mavenrc files. +@REM MAVEN_DEBUG_ADDRESS (Optional) Set the debug address. Default value is 8000 +@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% + +@setlocal + +IF "%MAVEN_DEBUG_ADDRESS%"=="" @set MAVEN_DEBUG_ADDRESS=8000 + +@set MAVEN_DEBUG_OPTS=-Xdebug -Xrunjdwp:transport=dt_socket,server=y,suspend=y,address=%MAVEN_DEBUG_ADDRESS% + +@call "%~dp0"mvn.cmd %* diff --git a/.m2/wrapper/dists/apache-maven-3.9.11/a2d47e15/bin/mvnyjp b/.m2/wrapper/dists/apache-maven-3.9.11/a2d47e15/bin/mvnyjp new file mode 100755 index 0000000..6e21a0e --- /dev/null +++ b/.m2/wrapper/dists/apache-maven-3.9.11/a2d47e15/bin/mvnyjp @@ -0,0 +1,36 @@ +#!/bin/sh + +# Licensed to the Apache Software Foundation (ASF) under one +# or more contributor license agreements. See the NOTICE file +# distributed with this work for additional information +# regarding copyright ownership. The ASF licenses this file +# to you under the Apache License, Version 2.0 (the +# "License"); you may not use this file except in compliance +# with the License. You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, +# software distributed under the License is distributed on an +# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY +# KIND, either express or implied. See the License for the +# specific language governing permissions and limitations +# under the License. + +# ----------------------------------------------------------------------------- +# Apache Maven YourKit Profiler Startup Script +# +# Environment Variable Prerequisites +# +# JAVA_HOME Must point at your Java Development Kit installation. +# MAVEN_ARGS (Optional) Arguments passed to Maven before CLI arguments. +# MAVEN_OPTS (Optional) Java runtime options used when Maven is executed. +# MAVEN_SKIP_RC (Optional) Flag to disable loading of mavenrc files. +# ----------------------------------------------------------------------------- + +if [ ! -f "$YJPLIB" ]; then + echo "Error: Unable to autodetect the YJP library location. Please set YJPLIB variable" >&2 + exit 1 +fi + +env MAVEN_OPTS="-agentpath:$YJPLIB=onexit=snapshot,onexit=memory,tracing,onlylocal $MAVEN_OPTS" "`dirname "$0"`/mvn" "$@" diff --git a/.m2/wrapper/dists/apache-maven-3.9.11/a2d47e15/boot/plexus-classworlds-2.9.0.jar b/.m2/wrapper/dists/apache-maven-3.9.11/a2d47e15/boot/plexus-classworlds-2.9.0.jar new file mode 100644 index 0000000..83dfdf5 Binary files /dev/null and b/.m2/wrapper/dists/apache-maven-3.9.11/a2d47e15/boot/plexus-classworlds-2.9.0.jar differ diff --git a/.m2/wrapper/dists/apache-maven-3.9.11/a2d47e15/boot/plexus-classworlds.license b/.m2/wrapper/dists/apache-maven-3.9.11/a2d47e15/boot/plexus-classworlds.license new file mode 100644 index 0000000..d645695 --- /dev/null +++ b/.m2/wrapper/dists/apache-maven-3.9.11/a2d47e15/boot/plexus-classworlds.license @@ -0,0 +1,202 @@ + + Apache License + Version 2.0, January 2004 + http://www.apache.org/licenses/ + + TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION + + 1. Definitions. + + "License" shall mean the terms and conditions for use, reproduction, + and distribution as defined by Sections 1 through 9 of this document. + + "Licensor" shall mean the copyright owner or entity authorized by + the copyright owner that is granting the License. + + "Legal Entity" shall mean the union of the acting entity and all + other entities that control, are controlled by, or are under common + control with that entity. For the purposes of this definition, + "control" means (i) the power, direct or indirect, to cause the + direction or management of such entity, whether by contract or + otherwise, or (ii) ownership of fifty percent (50%) or more of the + outstanding shares, or (iii) beneficial ownership of such entity. + + "You" (or "Your") shall mean an individual or Legal Entity + exercising permissions granted by this License. + + "Source" form shall mean the preferred form for making modifications, + including but not limited to software source code, documentation + source, and configuration files. + + "Object" form shall mean any form resulting from mechanical + transformation or translation of a Source form, including but + not limited to compiled object code, generated documentation, + and conversions to other media types. + + "Work" shall mean the work of authorship, whether in Source or + Object form, made available under the License, as indicated by a + copyright notice that is included in or attached to the work + (an example is provided in the Appendix below). + + "Derivative Works" shall mean any work, whether in Source or Object + form, that is based on (or derived from) the Work and for which the + editorial revisions, annotations, elaborations, or other modifications + represent, as a whole, an original work of authorship. For the purposes + of this License, Derivative Works shall not include works that remain + separable from, or merely link (or bind by name) to the interfaces of, + the Work and Derivative Works thereof. + + "Contribution" shall mean any work of authorship, including + the original version of the Work and any modifications or additions + to that Work or Derivative Works thereof, that is intentionally + submitted to Licensor for inclusion in the Work by the copyright owner + or by an individual or Legal Entity authorized to submit on behalf of + the copyright owner. For the purposes of this definition, "submitted" + means any form of electronic, verbal, or written communication sent + to the Licensor or its representatives, including but not limited to + communication on electronic mailing lists, source code control systems, + and issue tracking systems that are managed by, or on behalf of, the + Licensor for the purpose of discussing and improving the Work, but + excluding communication that is conspicuously marked or otherwise + designated in writing by the copyright owner as "Not a Contribution." + + "Contributor" shall mean Licensor and any individual or Legal Entity + on behalf of whom a Contribution has been received by Licensor and + subsequently incorporated within the Work. + + 2. Grant of Copyright License. Subject to the terms and conditions of + this License, each Contributor hereby grants to You a perpetual, + worldwide, non-exclusive, no-charge, royalty-free, irrevocable + copyright license to reproduce, prepare Derivative Works of, + publicly display, publicly perform, sublicense, and distribute the + Work and such Derivative Works in Source or Object form. + + 3. Grant of Patent License. Subject to the terms and conditions of + this License, each Contributor hereby grants to You a perpetual, + worldwide, non-exclusive, no-charge, royalty-free, irrevocable + (except as stated in this section) patent license to make, have made, + use, offer to sell, sell, import, and otherwise transfer the Work, + where such license applies only to those patent claims licensable + by such Contributor that are necessarily infringed by their + Contribution(s) alone or by combination of their Contribution(s) + with the Work to which such Contribution(s) was submitted. If You + institute patent litigation against any entity (including a + cross-claim or counterclaim in a lawsuit) alleging that the Work + or a Contribution incorporated within the Work constitutes direct + or contributory patent infringement, then any patent licenses + granted to You under this License for that Work shall terminate + as of the date such litigation is filed. + + 4. Redistribution. You may reproduce and distribute copies of the + Work or Derivative Works thereof in any medium, with or without + modifications, and in Source or Object form, provided that You + meet the following conditions: + + (a) You must give any other recipients of the Work or + Derivative Works a copy of this License; and + + (b) You must cause any modified files to carry prominent notices + stating that You changed the files; and + + (c) You must retain, in the Source form of any Derivative Works + that You distribute, all copyright, patent, trademark, and + attribution notices from the Source form of the Work, + excluding those notices that do not pertain to any part of + the Derivative Works; and + + (d) If the Work includes a "NOTICE" text file as part of its + distribution, then any Derivative Works that You distribute must + include a readable copy of the attribution notices contained + within such NOTICE file, excluding those notices that do not + pertain to any part of the Derivative Works, in at least one + of the following places: within a NOTICE text file distributed + as part of the Derivative Works; within the Source form or + documentation, if provided along with the Derivative Works; or, + within a display generated by the Derivative Works, if and + wherever such third-party notices normally appear. The contents + of the NOTICE file are for informational purposes only and + do not modify the License. You may add Your own attribution + notices within Derivative Works that You distribute, alongside + or as an addendum to the NOTICE text from the Work, provided + that such additional attribution notices cannot be construed + as modifying the License. + + You may add Your own copyright statement to Your modifications and + may provide additional or different license terms and conditions + for use, reproduction, or distribution of Your modifications, or + for any such Derivative Works as a whole, provided Your use, + reproduction, and distribution of the Work otherwise complies with + the conditions stated in this License. + + 5. Submission of Contributions. Unless You explicitly state otherwise, + any Contribution intentionally submitted for inclusion in the Work + by You to the Licensor shall be under the terms and conditions of + this License, without any additional terms or conditions. + Notwithstanding the above, nothing herein shall supersede or modify + the terms of any separate license agreement you may have executed + with Licensor regarding such Contributions. + + 6. Trademarks. This License does not grant permission to use the trade + names, trademarks, service marks, or product names of the Licensor, + except as required for reasonable and customary use in describing the + origin of the Work and reproducing the content of the NOTICE file. + + 7. Disclaimer of Warranty. Unless required by applicable law or + agreed to in writing, Licensor provides the Work (and each + Contributor provides its Contributions) on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or + implied, including, without limitation, any warranties or conditions + of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A + PARTICULAR PURPOSE. You are solely responsible for determining the + appropriateness of using or redistributing the Work and assume any + risks associated with Your exercise of permissions under this License. + + 8. Limitation of Liability. In no event and under no legal theory, + whether in tort (including negligence), contract, or otherwise, + unless required by applicable law (such as deliberate and grossly + negligent acts) or agreed to in writing, shall any Contributor be + liable to You for damages, including any direct, indirect, special, + incidental, or consequential damages of any character arising as a + result of this License or out of the use or inability to use the + Work (including but not limited to damages for loss of goodwill, + work stoppage, computer failure or malfunction, or any and all + other commercial damages or losses), even if such Contributor + has been advised of the possibility of such damages. + + 9. Accepting Warranty or Additional Liability. While redistributing + the Work or Derivative Works thereof, You may choose to offer, + and charge a fee for, acceptance of support, warranty, indemnity, + or other liability obligations and/or rights consistent with this + License. However, in accepting such obligations, You may act only + on Your own behalf and on Your sole responsibility, not on behalf + of any other Contributor, and only if You agree to indemnify, + defend, and hold each Contributor harmless for any liability + incurred by, or claims asserted against, such Contributor by reason + of your accepting any such warranty or additional liability. + + END OF TERMS AND CONDITIONS + + APPENDIX: How to apply the Apache License to your work. + + To apply the Apache License to your work, attach the following + boilerplate notice, with the fields enclosed by brackets "[]" + replaced with your own identifying information. (Don't include + the brackets!) The text should be enclosed in the appropriate + comment syntax for the file format. We also recommend that a + file or class name and description of purpose be included on the + same "printed page" as the copyright notice for easier + identification within third-party archives. + + Copyright [yyyy] [name of copyright owner] + + Licensed under the Apache License, Version 2.0 (the "License"); + you may not use this file except in compliance with the License. + You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + + Unless required by applicable law or agreed to in writing, software + distributed under the License is distributed on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + See the License for the specific language governing permissions and + limitations under the License. diff --git a/.m2/wrapper/dists/apache-maven-3.9.11/a2d47e15/conf/logging/simplelogger.properties b/.m2/wrapper/dists/apache-maven-3.9.11/a2d47e15/conf/logging/simplelogger.properties new file mode 100644 index 0000000..8c4a5d1 --- /dev/null +++ b/.m2/wrapper/dists/apache-maven-3.9.11/a2d47e15/conf/logging/simplelogger.properties @@ -0,0 +1,30 @@ +# Licensed to the Apache Software Foundation (ASF) under one +# or more contributor license agreements. See the NOTICE file +# distributed with this work for additional information +# regarding copyright ownership. The ASF licenses this file +# to you under the Apache License, Version 2.0 (the +# "License"); you may not use this file except in compliance +# with the License. You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, +# software distributed under the License is distributed on an +# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY +# KIND, either express or implied. See the License for the +# specific language governing permissions and limitations +# under the License. + +org.slf4j.simpleLogger.defaultLogLevel=info +org.slf4j.simpleLogger.showDateTime=false +org.slf4j.simpleLogger.showThreadName=false +org.slf4j.simpleLogger.showLogName=false +org.slf4j.simpleLogger.logFile=System.out +org.slf4j.simpleLogger.cacheOutputStream=true +org.slf4j.simpleLogger.levelInBrackets=true +org.slf4j.simpleLogger.log.Sisu=info +org.slf4j.simpleLogger.warnLevelString=WARNING + +# MNG-6181: mvn -X also prints all debug logging from HttpClient +org.slf4j.simpleLogger.log.org.apache.http=off +org.slf4j.simpleLogger.log.org.apache.http.wire=off diff --git a/.m2/wrapper/dists/apache-maven-3.9.11/a2d47e15/conf/settings.xml b/.m2/wrapper/dists/apache-maven-3.9.11/a2d47e15/conf/settings.xml new file mode 100644 index 0000000..0d64976 --- /dev/null +++ b/.m2/wrapper/dists/apache-maven-3.9.11/a2d47e15/conf/settings.xml @@ -0,0 +1,265 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + maven-default-http-blocker + external:http:* + Pseudo repository to mirror external repositories initially using HTTP. + http://0.0.0.0/ + true + + + + + + + + + + + + diff --git a/.m2/wrapper/dists/apache-maven-3.9.11/a2d47e15/conf/toolchains.xml b/.m2/wrapper/dists/apache-maven-3.9.11/a2d47e15/conf/toolchains.xml new file mode 100644 index 0000000..b263072 --- /dev/null +++ b/.m2/wrapper/dists/apache-maven-3.9.11/a2d47e15/conf/toolchains.xml @@ -0,0 +1,103 @@ + + + + + + + + + + \ No newline at end of file diff --git a/.m2/wrapper/dists/apache-maven-3.9.11/a2d47e15/lib/aopalliance-1.0.jar b/.m2/wrapper/dists/apache-maven-3.9.11/a2d47e15/lib/aopalliance-1.0.jar new file mode 100644 index 0000000..578b1a0 Binary files /dev/null and b/.m2/wrapper/dists/apache-maven-3.9.11/a2d47e15/lib/aopalliance-1.0.jar differ diff --git a/.m2/wrapper/dists/apache-maven-3.9.11/a2d47e15/lib/aopalliance.license b/.m2/wrapper/dists/apache-maven-3.9.11/a2d47e15/lib/aopalliance.license new file mode 100644 index 0000000..a7a158b --- /dev/null +++ b/.m2/wrapper/dists/apache-maven-3.9.11/a2d47e15/lib/aopalliance.license @@ -0,0 +1 @@ +Public Domain \ No newline at end of file diff --git a/.m2/wrapper/dists/apache-maven-3.9.11/a2d47e15/lib/asm-9.8.jar b/.m2/wrapper/dists/apache-maven-3.9.11/a2d47e15/lib/asm-9.8.jar new file mode 100644 index 0000000..4f0c86e Binary files /dev/null and b/.m2/wrapper/dists/apache-maven-3.9.11/a2d47e15/lib/asm-9.8.jar differ diff --git a/.m2/wrapper/dists/apache-maven-3.9.11/a2d47e15/lib/asm.license b/.m2/wrapper/dists/apache-maven-3.9.11/a2d47e15/lib/asm.license new file mode 100644 index 0000000..55761ed --- /dev/null +++ b/.m2/wrapper/dists/apache-maven-3.9.11/a2d47e15/lib/asm.license @@ -0,0 +1,29 @@ +ASM is released under the following 3-Clause BSD License: + +ASM: a very small and fast Java bytecode manipulation framework +Copyright (c) 2000-2011 INRIA, France Telecom +All rights reserved. + +Redistribution and use in source and binary forms, with or without +modification, are permitted provided that the following conditions +are met: +1. Redistributions of source code must retain the above copyright + notice, this list of conditions and the following disclaimer. +2. Redistributions in binary form must reproduce the above copyright + notice, this list of conditions and the following disclaimer in the + documentation and/or other materials provided with the distribution. +3. Neither the name of the copyright holders nor the names of its + contributors may be used to endorse or promote products derived from + this software without specific prior written permission. + +THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" +AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE +IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE +ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE +LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR +CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF +SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS +INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN +CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) +ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF +THE POSSIBILITY OF SUCH DAMAGE. diff --git a/.m2/wrapper/dists/apache-maven-3.9.11/a2d47e15/lib/commons-cli-1.9.0.jar b/.m2/wrapper/dists/apache-maven-3.9.11/a2d47e15/lib/commons-cli-1.9.0.jar new file mode 100644 index 0000000..53949ea Binary files /dev/null and b/.m2/wrapper/dists/apache-maven-3.9.11/a2d47e15/lib/commons-cli-1.9.0.jar differ diff --git a/.m2/wrapper/dists/apache-maven-3.9.11/a2d47e15/lib/commons-cli.license b/.m2/wrapper/dists/apache-maven-3.9.11/a2d47e15/lib/commons-cli.license new file mode 100644 index 0000000..d645695 --- /dev/null +++ b/.m2/wrapper/dists/apache-maven-3.9.11/a2d47e15/lib/commons-cli.license @@ -0,0 +1,202 @@ + + Apache License + Version 2.0, January 2004 + http://www.apache.org/licenses/ + + TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION + + 1. Definitions. + + "License" shall mean the terms and conditions for use, reproduction, + and distribution as defined by Sections 1 through 9 of this document. + + "Licensor" shall mean the copyright owner or entity authorized by + the copyright owner that is granting the License. + + "Legal Entity" shall mean the union of the acting entity and all + other entities that control, are controlled by, or are under common + control with that entity. For the purposes of this definition, + "control" means (i) the power, direct or indirect, to cause the + direction or management of such entity, whether by contract or + otherwise, or (ii) ownership of fifty percent (50%) or more of the + outstanding shares, or (iii) beneficial ownership of such entity. + + "You" (or "Your") shall mean an individual or Legal Entity + exercising permissions granted by this License. + + "Source" form shall mean the preferred form for making modifications, + including but not limited to software source code, documentation + source, and configuration files. + + "Object" form shall mean any form resulting from mechanical + transformation or translation of a Source form, including but + not limited to compiled object code, generated documentation, + and conversions to other media types. + + "Work" shall mean the work of authorship, whether in Source or + Object form, made available under the License, as indicated by a + copyright notice that is included in or attached to the work + (an example is provided in the Appendix below). + + "Derivative Works" shall mean any work, whether in Source or Object + form, that is based on (or derived from) the Work and for which the + editorial revisions, annotations, elaborations, or other modifications + represent, as a whole, an original work of authorship. For the purposes + of this License, Derivative Works shall not include works that remain + separable from, or merely link (or bind by name) to the interfaces of, + the Work and Derivative Works thereof. + + "Contribution" shall mean any work of authorship, including + the original version of the Work and any modifications or additions + to that Work or Derivative Works thereof, that is intentionally + submitted to Licensor for inclusion in the Work by the copyright owner + or by an individual or Legal Entity authorized to submit on behalf of + the copyright owner. For the purposes of this definition, "submitted" + means any form of electronic, verbal, or written communication sent + to the Licensor or its representatives, including but not limited to + communication on electronic mailing lists, source code control systems, + and issue tracking systems that are managed by, or on behalf of, the + Licensor for the purpose of discussing and improving the Work, but + excluding communication that is conspicuously marked or otherwise + designated in writing by the copyright owner as "Not a Contribution." + + "Contributor" shall mean Licensor and any individual or Legal Entity + on behalf of whom a Contribution has been received by Licensor and + subsequently incorporated within the Work. + + 2. Grant of Copyright License. Subject to the terms and conditions of + this License, each Contributor hereby grants to You a perpetual, + worldwide, non-exclusive, no-charge, royalty-free, irrevocable + copyright license to reproduce, prepare Derivative Works of, + publicly display, publicly perform, sublicense, and distribute the + Work and such Derivative Works in Source or Object form. + + 3. Grant of Patent License. Subject to the terms and conditions of + this License, each Contributor hereby grants to You a perpetual, + worldwide, non-exclusive, no-charge, royalty-free, irrevocable + (except as stated in this section) patent license to make, have made, + use, offer to sell, sell, import, and otherwise transfer the Work, + where such license applies only to those patent claims licensable + by such Contributor that are necessarily infringed by their + Contribution(s) alone or by combination of their Contribution(s) + with the Work to which such Contribution(s) was submitted. If You + institute patent litigation against any entity (including a + cross-claim or counterclaim in a lawsuit) alleging that the Work + or a Contribution incorporated within the Work constitutes direct + or contributory patent infringement, then any patent licenses + granted to You under this License for that Work shall terminate + as of the date such litigation is filed. + + 4. Redistribution. You may reproduce and distribute copies of the + Work or Derivative Works thereof in any medium, with or without + modifications, and in Source or Object form, provided that You + meet the following conditions: + + (a) You must give any other recipients of the Work or + Derivative Works a copy of this License; and + + (b) You must cause any modified files to carry prominent notices + stating that You changed the files; and + + (c) You must retain, in the Source form of any Derivative Works + that You distribute, all copyright, patent, trademark, and + attribution notices from the Source form of the Work, + excluding those notices that do not pertain to any part of + the Derivative Works; and + + (d) If the Work includes a "NOTICE" text file as part of its + distribution, then any Derivative Works that You distribute must + include a readable copy of the attribution notices contained + within such NOTICE file, excluding those notices that do not + pertain to any part of the Derivative Works, in at least one + of the following places: within a NOTICE text file distributed + as part of the Derivative Works; within the Source form or + documentation, if provided along with the Derivative Works; or, + within a display generated by the Derivative Works, if and + wherever such third-party notices normally appear. The contents + of the NOTICE file are for informational purposes only and + do not modify the License. You may add Your own attribution + notices within Derivative Works that You distribute, alongside + or as an addendum to the NOTICE text from the Work, provided + that such additional attribution notices cannot be construed + as modifying the License. + + You may add Your own copyright statement to Your modifications and + may provide additional or different license terms and conditions + for use, reproduction, or distribution of Your modifications, or + for any such Derivative Works as a whole, provided Your use, + reproduction, and distribution of the Work otherwise complies with + the conditions stated in this License. + + 5. Submission of Contributions. Unless You explicitly state otherwise, + any Contribution intentionally submitted for inclusion in the Work + by You to the Licensor shall be under the terms and conditions of + this License, without any additional terms or conditions. + Notwithstanding the above, nothing herein shall supersede or modify + the terms of any separate license agreement you may have executed + with Licensor regarding such Contributions. + + 6. Trademarks. This License does not grant permission to use the trade + names, trademarks, service marks, or product names of the Licensor, + except as required for reasonable and customary use in describing the + origin of the Work and reproducing the content of the NOTICE file. + + 7. Disclaimer of Warranty. Unless required by applicable law or + agreed to in writing, Licensor provides the Work (and each + Contributor provides its Contributions) on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or + implied, including, without limitation, any warranties or conditions + of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A + PARTICULAR PURPOSE. You are solely responsible for determining the + appropriateness of using or redistributing the Work and assume any + risks associated with Your exercise of permissions under this License. + + 8. Limitation of Liability. In no event and under no legal theory, + whether in tort (including negligence), contract, or otherwise, + unless required by applicable law (such as deliberate and grossly + negligent acts) or agreed to in writing, shall any Contributor be + liable to You for damages, including any direct, indirect, special, + incidental, or consequential damages of any character arising as a + result of this License or out of the use or inability to use the + Work (including but not limited to damages for loss of goodwill, + work stoppage, computer failure or malfunction, or any and all + other commercial damages or losses), even if such Contributor + has been advised of the possibility of such damages. + + 9. Accepting Warranty or Additional Liability. While redistributing + the Work or Derivative Works thereof, You may choose to offer, + and charge a fee for, acceptance of support, warranty, indemnity, + or other liability obligations and/or rights consistent with this + License. However, in accepting such obligations, You may act only + on Your own behalf and on Your sole responsibility, not on behalf + of any other Contributor, and only if You agree to indemnify, + defend, and hold each Contributor harmless for any liability + incurred by, or claims asserted against, such Contributor by reason + of your accepting any such warranty or additional liability. + + END OF TERMS AND CONDITIONS + + APPENDIX: How to apply the Apache License to your work. + + To apply the Apache License to your work, attach the following + boilerplate notice, with the fields enclosed by brackets "[]" + replaced with your own identifying information. (Don't include + the brackets!) The text should be enclosed in the appropriate + comment syntax for the file format. We also recommend that a + file or class name and description of purpose be included on the + same "printed page" as the copyright notice for easier + identification within third-party archives. + + Copyright [yyyy] [name of copyright owner] + + Licensed under the Apache License, Version 2.0 (the "License"); + you may not use this file except in compliance with the License. + You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + + Unless required by applicable law or agreed to in writing, software + distributed under the License is distributed on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + See the License for the specific language governing permissions and + limitations under the License. diff --git a/.m2/wrapper/dists/apache-maven-3.9.11/a2d47e15/lib/commons-codec-1.18.0.jar b/.m2/wrapper/dists/apache-maven-3.9.11/a2d47e15/lib/commons-codec-1.18.0.jar new file mode 100644 index 0000000..9cb5851 Binary files /dev/null and b/.m2/wrapper/dists/apache-maven-3.9.11/a2d47e15/lib/commons-codec-1.18.0.jar differ diff --git a/.m2/wrapper/dists/apache-maven-3.9.11/a2d47e15/lib/commons-codec.license b/.m2/wrapper/dists/apache-maven-3.9.11/a2d47e15/lib/commons-codec.license new file mode 100644 index 0000000..d645695 --- /dev/null +++ b/.m2/wrapper/dists/apache-maven-3.9.11/a2d47e15/lib/commons-codec.license @@ -0,0 +1,202 @@ + + Apache License + Version 2.0, January 2004 + http://www.apache.org/licenses/ + + TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION + + 1. Definitions. + + "License" shall mean the terms and conditions for use, reproduction, + and distribution as defined by Sections 1 through 9 of this document. + + "Licensor" shall mean the copyright owner or entity authorized by + the copyright owner that is granting the License. + + "Legal Entity" shall mean the union of the acting entity and all + other entities that control, are controlled by, or are under common + control with that entity. For the purposes of this definition, + "control" means (i) the power, direct or indirect, to cause the + direction or management of such entity, whether by contract or + otherwise, or (ii) ownership of fifty percent (50%) or more of the + outstanding shares, or (iii) beneficial ownership of such entity. + + "You" (or "Your") shall mean an individual or Legal Entity + exercising permissions granted by this License. + + "Source" form shall mean the preferred form for making modifications, + including but not limited to software source code, documentation + source, and configuration files. + + "Object" form shall mean any form resulting from mechanical + transformation or translation of a Source form, including but + not limited to compiled object code, generated documentation, + and conversions to other media types. + + "Work" shall mean the work of authorship, whether in Source or + Object form, made available under the License, as indicated by a + copyright notice that is included in or attached to the work + (an example is provided in the Appendix below). + + "Derivative Works" shall mean any work, whether in Source or Object + form, that is based on (or derived from) the Work and for which the + editorial revisions, annotations, elaborations, or other modifications + represent, as a whole, an original work of authorship. For the purposes + of this License, Derivative Works shall not include works that remain + separable from, or merely link (or bind by name) to the interfaces of, + the Work and Derivative Works thereof. + + "Contribution" shall mean any work of authorship, including + the original version of the Work and any modifications or additions + to that Work or Derivative Works thereof, that is intentionally + submitted to Licensor for inclusion in the Work by the copyright owner + or by an individual or Legal Entity authorized to submit on behalf of + the copyright owner. For the purposes of this definition, "submitted" + means any form of electronic, verbal, or written communication sent + to the Licensor or its representatives, including but not limited to + communication on electronic mailing lists, source code control systems, + and issue tracking systems that are managed by, or on behalf of, the + Licensor for the purpose of discussing and improving the Work, but + excluding communication that is conspicuously marked or otherwise + designated in writing by the copyright owner as "Not a Contribution." + + "Contributor" shall mean Licensor and any individual or Legal Entity + on behalf of whom a Contribution has been received by Licensor and + subsequently incorporated within the Work. + + 2. Grant of Copyright License. Subject to the terms and conditions of + this License, each Contributor hereby grants to You a perpetual, + worldwide, non-exclusive, no-charge, royalty-free, irrevocable + copyright license to reproduce, prepare Derivative Works of, + publicly display, publicly perform, sublicense, and distribute the + Work and such Derivative Works in Source or Object form. + + 3. Grant of Patent License. Subject to the terms and conditions of + this License, each Contributor hereby grants to You a perpetual, + worldwide, non-exclusive, no-charge, royalty-free, irrevocable + (except as stated in this section) patent license to make, have made, + use, offer to sell, sell, import, and otherwise transfer the Work, + where such license applies only to those patent claims licensable + by such Contributor that are necessarily infringed by their + Contribution(s) alone or by combination of their Contribution(s) + with the Work to which such Contribution(s) was submitted. If You + institute patent litigation against any entity (including a + cross-claim or counterclaim in a lawsuit) alleging that the Work + or a Contribution incorporated within the Work constitutes direct + or contributory patent infringement, then any patent licenses + granted to You under this License for that Work shall terminate + as of the date such litigation is filed. + + 4. Redistribution. You may reproduce and distribute copies of the + Work or Derivative Works thereof in any medium, with or without + modifications, and in Source or Object form, provided that You + meet the following conditions: + + (a) You must give any other recipients of the Work or + Derivative Works a copy of this License; and + + (b) You must cause any modified files to carry prominent notices + stating that You changed the files; and + + (c) You must retain, in the Source form of any Derivative Works + that You distribute, all copyright, patent, trademark, and + attribution notices from the Source form of the Work, + excluding those notices that do not pertain to any part of + the Derivative Works; and + + (d) If the Work includes a "NOTICE" text file as part of its + distribution, then any Derivative Works that You distribute must + include a readable copy of the attribution notices contained + within such NOTICE file, excluding those notices that do not + pertain to any part of the Derivative Works, in at least one + of the following places: within a NOTICE text file distributed + as part of the Derivative Works; within the Source form or + documentation, if provided along with the Derivative Works; or, + within a display generated by the Derivative Works, if and + wherever such third-party notices normally appear. The contents + of the NOTICE file are for informational purposes only and + do not modify the License. You may add Your own attribution + notices within Derivative Works that You distribute, alongside + or as an addendum to the NOTICE text from the Work, provided + that such additional attribution notices cannot be construed + as modifying the License. + + You may add Your own copyright statement to Your modifications and + may provide additional or different license terms and conditions + for use, reproduction, or distribution of Your modifications, or + for any such Derivative Works as a whole, provided Your use, + reproduction, and distribution of the Work otherwise complies with + the conditions stated in this License. + + 5. Submission of Contributions. Unless You explicitly state otherwise, + any Contribution intentionally submitted for inclusion in the Work + by You to the Licensor shall be under the terms and conditions of + this License, without any additional terms or conditions. + Notwithstanding the above, nothing herein shall supersede or modify + the terms of any separate license agreement you may have executed + with Licensor regarding such Contributions. + + 6. Trademarks. This License does not grant permission to use the trade + names, trademarks, service marks, or product names of the Licensor, + except as required for reasonable and customary use in describing the + origin of the Work and reproducing the content of the NOTICE file. + + 7. Disclaimer of Warranty. Unless required by applicable law or + agreed to in writing, Licensor provides the Work (and each + Contributor provides its Contributions) on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or + implied, including, without limitation, any warranties or conditions + of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A + PARTICULAR PURPOSE. You are solely responsible for determining the + appropriateness of using or redistributing the Work and assume any + risks associated with Your exercise of permissions under this License. + + 8. Limitation of Liability. In no event and under no legal theory, + whether in tort (including negligence), contract, or otherwise, + unless required by applicable law (such as deliberate and grossly + negligent acts) or agreed to in writing, shall any Contributor be + liable to You for damages, including any direct, indirect, special, + incidental, or consequential damages of any character arising as a + result of this License or out of the use or inability to use the + Work (including but not limited to damages for loss of goodwill, + work stoppage, computer failure or malfunction, or any and all + other commercial damages or losses), even if such Contributor + has been advised of the possibility of such damages. + + 9. Accepting Warranty or Additional Liability. While redistributing + the Work or Derivative Works thereof, You may choose to offer, + and charge a fee for, acceptance of support, warranty, indemnity, + or other liability obligations and/or rights consistent with this + License. However, in accepting such obligations, You may act only + on Your own behalf and on Your sole responsibility, not on behalf + of any other Contributor, and only if You agree to indemnify, + defend, and hold each Contributor harmless for any liability + incurred by, or claims asserted against, such Contributor by reason + of your accepting any such warranty or additional liability. + + END OF TERMS AND CONDITIONS + + APPENDIX: How to apply the Apache License to your work. + + To apply the Apache License to your work, attach the following + boilerplate notice, with the fields enclosed by brackets "[]" + replaced with your own identifying information. (Don't include + the brackets!) The text should be enclosed in the appropriate + comment syntax for the file format. We also recommend that a + file or class name and description of purpose be included on the + same "printed page" as the copyright notice for easier + identification within third-party archives. + + Copyright [yyyy] [name of copyright owner] + + Licensed under the Apache License, Version 2.0 (the "License"); + you may not use this file except in compliance with the License. + You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + + Unless required by applicable law or agreed to in writing, software + distributed under the License is distributed on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + See the License for the specific language governing permissions and + limitations under the License. diff --git a/.m2/wrapper/dists/apache-maven-3.9.11/a2d47e15/lib/error_prone_annotations-2.38.0.jar b/.m2/wrapper/dists/apache-maven-3.9.11/a2d47e15/lib/error_prone_annotations-2.38.0.jar new file mode 100644 index 0000000..b21cbdd Binary files /dev/null and b/.m2/wrapper/dists/apache-maven-3.9.11/a2d47e15/lib/error_prone_annotations-2.38.0.jar differ diff --git a/.m2/wrapper/dists/apache-maven-3.9.11/a2d47e15/lib/error_prone_annotations.license b/.m2/wrapper/dists/apache-maven-3.9.11/a2d47e15/lib/error_prone_annotations.license new file mode 100644 index 0000000..d645695 --- /dev/null +++ b/.m2/wrapper/dists/apache-maven-3.9.11/a2d47e15/lib/error_prone_annotations.license @@ -0,0 +1,202 @@ + + Apache License + Version 2.0, January 2004 + http://www.apache.org/licenses/ + + TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION + + 1. Definitions. + + "License" shall mean the terms and conditions for use, reproduction, + and distribution as defined by Sections 1 through 9 of this document. + + "Licensor" shall mean the copyright owner or entity authorized by + the copyright owner that is granting the License. + + "Legal Entity" shall mean the union of the acting entity and all + other entities that control, are controlled by, or are under common + control with that entity. For the purposes of this definition, + "control" means (i) the power, direct or indirect, to cause the + direction or management of such entity, whether by contract or + otherwise, or (ii) ownership of fifty percent (50%) or more of the + outstanding shares, or (iii) beneficial ownership of such entity. + + "You" (or "Your") shall mean an individual or Legal Entity + exercising permissions granted by this License. + + "Source" form shall mean the preferred form for making modifications, + including but not limited to software source code, documentation + source, and configuration files. + + "Object" form shall mean any form resulting from mechanical + transformation or translation of a Source form, including but + not limited to compiled object code, generated documentation, + and conversions to other media types. + + "Work" shall mean the work of authorship, whether in Source or + Object form, made available under the License, as indicated by a + copyright notice that is included in or attached to the work + (an example is provided in the Appendix below). + + "Derivative Works" shall mean any work, whether in Source or Object + form, that is based on (or derived from) the Work and for which the + editorial revisions, annotations, elaborations, or other modifications + represent, as a whole, an original work of authorship. For the purposes + of this License, Derivative Works shall not include works that remain + separable from, or merely link (or bind by name) to the interfaces of, + the Work and Derivative Works thereof. + + "Contribution" shall mean any work of authorship, including + the original version of the Work and any modifications or additions + to that Work or Derivative Works thereof, that is intentionally + submitted to Licensor for inclusion in the Work by the copyright owner + or by an individual or Legal Entity authorized to submit on behalf of + the copyright owner. For the purposes of this definition, "submitted" + means any form of electronic, verbal, or written communication sent + to the Licensor or its representatives, including but not limited to + communication on electronic mailing lists, source code control systems, + and issue tracking systems that are managed by, or on behalf of, the + Licensor for the purpose of discussing and improving the Work, but + excluding communication that is conspicuously marked or otherwise + designated in writing by the copyright owner as "Not a Contribution." + + "Contributor" shall mean Licensor and any individual or Legal Entity + on behalf of whom a Contribution has been received by Licensor and + subsequently incorporated within the Work. + + 2. Grant of Copyright License. Subject to the terms and conditions of + this License, each Contributor hereby grants to You a perpetual, + worldwide, non-exclusive, no-charge, royalty-free, irrevocable + copyright license to reproduce, prepare Derivative Works of, + publicly display, publicly perform, sublicense, and distribute the + Work and such Derivative Works in Source or Object form. + + 3. Grant of Patent License. Subject to the terms and conditions of + this License, each Contributor hereby grants to You a perpetual, + worldwide, non-exclusive, no-charge, royalty-free, irrevocable + (except as stated in this section) patent license to make, have made, + use, offer to sell, sell, import, and otherwise transfer the Work, + where such license applies only to those patent claims licensable + by such Contributor that are necessarily infringed by their + Contribution(s) alone or by combination of their Contribution(s) + with the Work to which such Contribution(s) was submitted. If You + institute patent litigation against any entity (including a + cross-claim or counterclaim in a lawsuit) alleging that the Work + or a Contribution incorporated within the Work constitutes direct + or contributory patent infringement, then any patent licenses + granted to You under this License for that Work shall terminate + as of the date such litigation is filed. + + 4. Redistribution. You may reproduce and distribute copies of the + Work or Derivative Works thereof in any medium, with or without + modifications, and in Source or Object form, provided that You + meet the following conditions: + + (a) You must give any other recipients of the Work or + Derivative Works a copy of this License; and + + (b) You must cause any modified files to carry prominent notices + stating that You changed the files; and + + (c) You must retain, in the Source form of any Derivative Works + that You distribute, all copyright, patent, trademark, and + attribution notices from the Source form of the Work, + excluding those notices that do not pertain to any part of + the Derivative Works; and + + (d) If the Work includes a "NOTICE" text file as part of its + distribution, then any Derivative Works that You distribute must + include a readable copy of the attribution notices contained + within such NOTICE file, excluding those notices that do not + pertain to any part of the Derivative Works, in at least one + of the following places: within a NOTICE text file distributed + as part of the Derivative Works; within the Source form or + documentation, if provided along with the Derivative Works; or, + within a display generated by the Derivative Works, if and + wherever such third-party notices normally appear. The contents + of the NOTICE file are for informational purposes only and + do not modify the License. You may add Your own attribution + notices within Derivative Works that You distribute, alongside + or as an addendum to the NOTICE text from the Work, provided + that such additional attribution notices cannot be construed + as modifying the License. + + You may add Your own copyright statement to Your modifications and + may provide additional or different license terms and conditions + for use, reproduction, or distribution of Your modifications, or + for any such Derivative Works as a whole, provided Your use, + reproduction, and distribution of the Work otherwise complies with + the conditions stated in this License. + + 5. Submission of Contributions. Unless You explicitly state otherwise, + any Contribution intentionally submitted for inclusion in the Work + by You to the Licensor shall be under the terms and conditions of + this License, without any additional terms or conditions. + Notwithstanding the above, nothing herein shall supersede or modify + the terms of any separate license agreement you may have executed + with Licensor regarding such Contributions. + + 6. Trademarks. This License does not grant permission to use the trade + names, trademarks, service marks, or product names of the Licensor, + except as required for reasonable and customary use in describing the + origin of the Work and reproducing the content of the NOTICE file. + + 7. Disclaimer of Warranty. Unless required by applicable law or + agreed to in writing, Licensor provides the Work (and each + Contributor provides its Contributions) on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or + implied, including, without limitation, any warranties or conditions + of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A + PARTICULAR PURPOSE. You are solely responsible for determining the + appropriateness of using or redistributing the Work and assume any + risks associated with Your exercise of permissions under this License. + + 8. Limitation of Liability. In no event and under no legal theory, + whether in tort (including negligence), contract, or otherwise, + unless required by applicable law (such as deliberate and grossly + negligent acts) or agreed to in writing, shall any Contributor be + liable to You for damages, including any direct, indirect, special, + incidental, or consequential damages of any character arising as a + result of this License or out of the use or inability to use the + Work (including but not limited to damages for loss of goodwill, + work stoppage, computer failure or malfunction, or any and all + other commercial damages or losses), even if such Contributor + has been advised of the possibility of such damages. + + 9. Accepting Warranty or Additional Liability. While redistributing + the Work or Derivative Works thereof, You may choose to offer, + and charge a fee for, acceptance of support, warranty, indemnity, + or other liability obligations and/or rights consistent with this + License. However, in accepting such obligations, You may act only + on Your own behalf and on Your sole responsibility, not on behalf + of any other Contributor, and only if You agree to indemnify, + defend, and hold each Contributor harmless for any liability + incurred by, or claims asserted against, such Contributor by reason + of your accepting any such warranty or additional liability. + + END OF TERMS AND CONDITIONS + + APPENDIX: How to apply the Apache License to your work. + + To apply the Apache License to your work, attach the following + boilerplate notice, with the fields enclosed by brackets "[]" + replaced with your own identifying information. (Don't include + the brackets!) The text should be enclosed in the appropriate + comment syntax for the file format. We also recommend that a + file or class name and description of purpose be included on the + same "printed page" as the copyright notice for easier + identification within third-party archives. + + Copyright [yyyy] [name of copyright owner] + + Licensed under the Apache License, Version 2.0 (the "License"); + you may not use this file except in compliance with the License. + You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + + Unless required by applicable law or agreed to in writing, software + distributed under the License is distributed on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + See the License for the specific language governing permissions and + limitations under the License. diff --git a/.m2/wrapper/dists/apache-maven-3.9.11/a2d47e15/lib/ext/README.txt b/.m2/wrapper/dists/apache-maven-3.9.11/a2d47e15/lib/ext/README.txt new file mode 100644 index 0000000..ab7f12a --- /dev/null +++ b/.m2/wrapper/dists/apache-maven-3.9.11/a2d47e15/lib/ext/README.txt @@ -0,0 +1,2 @@ +Use this directory to add third party extensions to Maven Core. These extensions can either extend or override +Maven's default implementation. diff --git a/.m2/wrapper/dists/apache-maven-3.9.11/a2d47e15/lib/ext/hazelcast/README.txt b/.m2/wrapper/dists/apache-maven-3.9.11/a2d47e15/lib/ext/hazelcast/README.txt new file mode 100644 index 0000000..77d19b1 --- /dev/null +++ b/.m2/wrapper/dists/apache-maven-3.9.11/a2d47e15/lib/ext/hazelcast/README.txt @@ -0,0 +1,6 @@ +This directory is intended to contain Hazelcast [1] JARs for Maven Resolver Named Locks using Hazelcast. + +See here [2] on how to add necessary JARs. + +[1] https://github.com/hazelcast/hazelcast +[2] https://maven.apache.org/resolver/maven-resolver-named-locks-hazelcast/index.html#installation-testing diff --git a/.m2/wrapper/dists/apache-maven-3.9.11/a2d47e15/lib/ext/redisson/README.txt b/.m2/wrapper/dists/apache-maven-3.9.11/a2d47e15/lib/ext/redisson/README.txt new file mode 100644 index 0000000..58342b1 --- /dev/null +++ b/.m2/wrapper/dists/apache-maven-3.9.11/a2d47e15/lib/ext/redisson/README.txt @@ -0,0 +1,6 @@ +This directory is intended to contain Redisson [1] JARs for Maven Resolver Named Locks using Redisson. + +See here [2] on how to add necessary JARs. + +[1] https://github.com/redisson/redisson +[2] https://maven.apache.org/resolver/maven-resolver-named-locks-redisson/index.html#installation-testing diff --git a/.m2/wrapper/dists/apache-maven-3.9.11/a2d47e15/lib/failureaccess-1.0.3.jar b/.m2/wrapper/dists/apache-maven-3.9.11/a2d47e15/lib/failureaccess-1.0.3.jar new file mode 100644 index 0000000..2834ba1 Binary files /dev/null and b/.m2/wrapper/dists/apache-maven-3.9.11/a2d47e15/lib/failureaccess-1.0.3.jar differ diff --git a/.m2/wrapper/dists/apache-maven-3.9.11/a2d47e15/lib/failureaccess.license b/.m2/wrapper/dists/apache-maven-3.9.11/a2d47e15/lib/failureaccess.license new file mode 100644 index 0000000..d645695 --- /dev/null +++ b/.m2/wrapper/dists/apache-maven-3.9.11/a2d47e15/lib/failureaccess.license @@ -0,0 +1,202 @@ + + Apache License + Version 2.0, January 2004 + http://www.apache.org/licenses/ + + TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION + + 1. Definitions. + + "License" shall mean the terms and conditions for use, reproduction, + and distribution as defined by Sections 1 through 9 of this document. + + "Licensor" shall mean the copyright owner or entity authorized by + the copyright owner that is granting the License. + + "Legal Entity" shall mean the union of the acting entity and all + other entities that control, are controlled by, or are under common + control with that entity. For the purposes of this definition, + "control" means (i) the power, direct or indirect, to cause the + direction or management of such entity, whether by contract or + otherwise, or (ii) ownership of fifty percent (50%) or more of the + outstanding shares, or (iii) beneficial ownership of such entity. + + "You" (or "Your") shall mean an individual or Legal Entity + exercising permissions granted by this License. + + "Source" form shall mean the preferred form for making modifications, + including but not limited to software source code, documentation + source, and configuration files. + + "Object" form shall mean any form resulting from mechanical + transformation or translation of a Source form, including but + not limited to compiled object code, generated documentation, + and conversions to other media types. + + "Work" shall mean the work of authorship, whether in Source or + Object form, made available under the License, as indicated by a + copyright notice that is included in or attached to the work + (an example is provided in the Appendix below). + + "Derivative Works" shall mean any work, whether in Source or Object + form, that is based on (or derived from) the Work and for which the + editorial revisions, annotations, elaborations, or other modifications + represent, as a whole, an original work of authorship. For the purposes + of this License, Derivative Works shall not include works that remain + separable from, or merely link (or bind by name) to the interfaces of, + the Work and Derivative Works thereof. + + "Contribution" shall mean any work of authorship, including + the original version of the Work and any modifications or additions + to that Work or Derivative Works thereof, that is intentionally + submitted to Licensor for inclusion in the Work by the copyright owner + or by an individual or Legal Entity authorized to submit on behalf of + the copyright owner. For the purposes of this definition, "submitted" + means any form of electronic, verbal, or written communication sent + to the Licensor or its representatives, including but not limited to + communication on electronic mailing lists, source code control systems, + and issue tracking systems that are managed by, or on behalf of, the + Licensor for the purpose of discussing and improving the Work, but + excluding communication that is conspicuously marked or otherwise + designated in writing by the copyright owner as "Not a Contribution." + + "Contributor" shall mean Licensor and any individual or Legal Entity + on behalf of whom a Contribution has been received by Licensor and + subsequently incorporated within the Work. + + 2. Grant of Copyright License. Subject to the terms and conditions of + this License, each Contributor hereby grants to You a perpetual, + worldwide, non-exclusive, no-charge, royalty-free, irrevocable + copyright license to reproduce, prepare Derivative Works of, + publicly display, publicly perform, sublicense, and distribute the + Work and such Derivative Works in Source or Object form. + + 3. Grant of Patent License. Subject to the terms and conditions of + this License, each Contributor hereby grants to You a perpetual, + worldwide, non-exclusive, no-charge, royalty-free, irrevocable + (except as stated in this section) patent license to make, have made, + use, offer to sell, sell, import, and otherwise transfer the Work, + where such license applies only to those patent claims licensable + by such Contributor that are necessarily infringed by their + Contribution(s) alone or by combination of their Contribution(s) + with the Work to which such Contribution(s) was submitted. If You + institute patent litigation against any entity (including a + cross-claim or counterclaim in a lawsuit) alleging that the Work + or a Contribution incorporated within the Work constitutes direct + or contributory patent infringement, then any patent licenses + granted to You under this License for that Work shall terminate + as of the date such litigation is filed. + + 4. Redistribution. You may reproduce and distribute copies of the + Work or Derivative Works thereof in any medium, with or without + modifications, and in Source or Object form, provided that You + meet the following conditions: + + (a) You must give any other recipients of the Work or + Derivative Works a copy of this License; and + + (b) You must cause any modified files to carry prominent notices + stating that You changed the files; and + + (c) You must retain, in the Source form of any Derivative Works + that You distribute, all copyright, patent, trademark, and + attribution notices from the Source form of the Work, + excluding those notices that do not pertain to any part of + the Derivative Works; and + + (d) If the Work includes a "NOTICE" text file as part of its + distribution, then any Derivative Works that You distribute must + include a readable copy of the attribution notices contained + within such NOTICE file, excluding those notices that do not + pertain to any part of the Derivative Works, in at least one + of the following places: within a NOTICE text file distributed + as part of the Derivative Works; within the Source form or + documentation, if provided along with the Derivative Works; or, + within a display generated by the Derivative Works, if and + wherever such third-party notices normally appear. The contents + of the NOTICE file are for informational purposes only and + do not modify the License. You may add Your own attribution + notices within Derivative Works that You distribute, alongside + or as an addendum to the NOTICE text from the Work, provided + that such additional attribution notices cannot be construed + as modifying the License. + + You may add Your own copyright statement to Your modifications and + may provide additional or different license terms and conditions + for use, reproduction, or distribution of Your modifications, or + for any such Derivative Works as a whole, provided Your use, + reproduction, and distribution of the Work otherwise complies with + the conditions stated in this License. + + 5. Submission of Contributions. Unless You explicitly state otherwise, + any Contribution intentionally submitted for inclusion in the Work + by You to the Licensor shall be under the terms and conditions of + this License, without any additional terms or conditions. + Notwithstanding the above, nothing herein shall supersede or modify + the terms of any separate license agreement you may have executed + with Licensor regarding such Contributions. + + 6. Trademarks. This License does not grant permission to use the trade + names, trademarks, service marks, or product names of the Licensor, + except as required for reasonable and customary use in describing the + origin of the Work and reproducing the content of the NOTICE file. + + 7. Disclaimer of Warranty. Unless required by applicable law or + agreed to in writing, Licensor provides the Work (and each + Contributor provides its Contributions) on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or + implied, including, without limitation, any warranties or conditions + of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A + PARTICULAR PURPOSE. You are solely responsible for determining the + appropriateness of using or redistributing the Work and assume any + risks associated with Your exercise of permissions under this License. + + 8. Limitation of Liability. In no event and under no legal theory, + whether in tort (including negligence), contract, or otherwise, + unless required by applicable law (such as deliberate and grossly + negligent acts) or agreed to in writing, shall any Contributor be + liable to You for damages, including any direct, indirect, special, + incidental, or consequential damages of any character arising as a + result of this License or out of the use or inability to use the + Work (including but not limited to damages for loss of goodwill, + work stoppage, computer failure or malfunction, or any and all + other commercial damages or losses), even if such Contributor + has been advised of the possibility of such damages. + + 9. Accepting Warranty or Additional Liability. While redistributing + the Work or Derivative Works thereof, You may choose to offer, + and charge a fee for, acceptance of support, warranty, indemnity, + or other liability obligations and/or rights consistent with this + License. However, in accepting such obligations, You may act only + on Your own behalf and on Your sole responsibility, not on behalf + of any other Contributor, and only if You agree to indemnify, + defend, and hold each Contributor harmless for any liability + incurred by, or claims asserted against, such Contributor by reason + of your accepting any such warranty or additional liability. + + END OF TERMS AND CONDITIONS + + APPENDIX: How to apply the Apache License to your work. + + To apply the Apache License to your work, attach the following + boilerplate notice, with the fields enclosed by brackets "[]" + replaced with your own identifying information. (Don't include + the brackets!) The text should be enclosed in the appropriate + comment syntax for the file format. We also recommend that a + file or class name and description of purpose be included on the + same "printed page" as the copyright notice for easier + identification within third-party archives. + + Copyright [yyyy] [name of copyright owner] + + Licensed under the Apache License, Version 2.0 (the "License"); + you may not use this file except in compliance with the License. + You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + + Unless required by applicable law or agreed to in writing, software + distributed under the License is distributed on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + See the License for the specific language governing permissions and + limitations under the License. diff --git a/.m2/wrapper/dists/apache-maven-3.9.11/a2d47e15/lib/gson-2.13.1.jar b/.m2/wrapper/dists/apache-maven-3.9.11/a2d47e15/lib/gson-2.13.1.jar new file mode 100644 index 0000000..159b930 Binary files /dev/null and b/.m2/wrapper/dists/apache-maven-3.9.11/a2d47e15/lib/gson-2.13.1.jar differ diff --git a/.m2/wrapper/dists/apache-maven-3.9.11/a2d47e15/lib/gson.license b/.m2/wrapper/dists/apache-maven-3.9.11/a2d47e15/lib/gson.license new file mode 100644 index 0000000..d645695 --- /dev/null +++ b/.m2/wrapper/dists/apache-maven-3.9.11/a2d47e15/lib/gson.license @@ -0,0 +1,202 @@ + + Apache License + Version 2.0, January 2004 + http://www.apache.org/licenses/ + + TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION + + 1. Definitions. + + "License" shall mean the terms and conditions for use, reproduction, + and distribution as defined by Sections 1 through 9 of this document. + + "Licensor" shall mean the copyright owner or entity authorized by + the copyright owner that is granting the License. + + "Legal Entity" shall mean the union of the acting entity and all + other entities that control, are controlled by, or are under common + control with that entity. For the purposes of this definition, + "control" means (i) the power, direct or indirect, to cause the + direction or management of such entity, whether by contract or + otherwise, or (ii) ownership of fifty percent (50%) or more of the + outstanding shares, or (iii) beneficial ownership of such entity. + + "You" (or "Your") shall mean an individual or Legal Entity + exercising permissions granted by this License. + + "Source" form shall mean the preferred form for making modifications, + including but not limited to software source code, documentation + source, and configuration files. + + "Object" form shall mean any form resulting from mechanical + transformation or translation of a Source form, including but + not limited to compiled object code, generated documentation, + and conversions to other media types. + + "Work" shall mean the work of authorship, whether in Source or + Object form, made available under the License, as indicated by a + copyright notice that is included in or attached to the work + (an example is provided in the Appendix below). + + "Derivative Works" shall mean any work, whether in Source or Object + form, that is based on (or derived from) the Work and for which the + editorial revisions, annotations, elaborations, or other modifications + represent, as a whole, an original work of authorship. For the purposes + of this License, Derivative Works shall not include works that remain + separable from, or merely link (or bind by name) to the interfaces of, + the Work and Derivative Works thereof. + + "Contribution" shall mean any work of authorship, including + the original version of the Work and any modifications or additions + to that Work or Derivative Works thereof, that is intentionally + submitted to Licensor for inclusion in the Work by the copyright owner + or by an individual or Legal Entity authorized to submit on behalf of + the copyright owner. For the purposes of this definition, "submitted" + means any form of electronic, verbal, or written communication sent + to the Licensor or its representatives, including but not limited to + communication on electronic mailing lists, source code control systems, + and issue tracking systems that are managed by, or on behalf of, the + Licensor for the purpose of discussing and improving the Work, but + excluding communication that is conspicuously marked or otherwise + designated in writing by the copyright owner as "Not a Contribution." + + "Contributor" shall mean Licensor and any individual or Legal Entity + on behalf of whom a Contribution has been received by Licensor and + subsequently incorporated within the Work. + + 2. Grant of Copyright License. Subject to the terms and conditions of + this License, each Contributor hereby grants to You a perpetual, + worldwide, non-exclusive, no-charge, royalty-free, irrevocable + copyright license to reproduce, prepare Derivative Works of, + publicly display, publicly perform, sublicense, and distribute the + Work and such Derivative Works in Source or Object form. + + 3. Grant of Patent License. Subject to the terms and conditions of + this License, each Contributor hereby grants to You a perpetual, + worldwide, non-exclusive, no-charge, royalty-free, irrevocable + (except as stated in this section) patent license to make, have made, + use, offer to sell, sell, import, and otherwise transfer the Work, + where such license applies only to those patent claims licensable + by such Contributor that are necessarily infringed by their + Contribution(s) alone or by combination of their Contribution(s) + with the Work to which such Contribution(s) was submitted. If You + institute patent litigation against any entity (including a + cross-claim or counterclaim in a lawsuit) alleging that the Work + or a Contribution incorporated within the Work constitutes direct + or contributory patent infringement, then any patent licenses + granted to You under this License for that Work shall terminate + as of the date such litigation is filed. + + 4. Redistribution. You may reproduce and distribute copies of the + Work or Derivative Works thereof in any medium, with or without + modifications, and in Source or Object form, provided that You + meet the following conditions: + + (a) You must give any other recipients of the Work or + Derivative Works a copy of this License; and + + (b) You must cause any modified files to carry prominent notices + stating that You changed the files; and + + (c) You must retain, in the Source form of any Derivative Works + that You distribute, all copyright, patent, trademark, and + attribution notices from the Source form of the Work, + excluding those notices that do not pertain to any part of + the Derivative Works; and + + (d) If the Work includes a "NOTICE" text file as part of its + distribution, then any Derivative Works that You distribute must + include a readable copy of the attribution notices contained + within such NOTICE file, excluding those notices that do not + pertain to any part of the Derivative Works, in at least one + of the following places: within a NOTICE text file distributed + as part of the Derivative Works; within the Source form or + documentation, if provided along with the Derivative Works; or, + within a display generated by the Derivative Works, if and + wherever such third-party notices normally appear. The contents + of the NOTICE file are for informational purposes only and + do not modify the License. You may add Your own attribution + notices within Derivative Works that You distribute, alongside + or as an addendum to the NOTICE text from the Work, provided + that such additional attribution notices cannot be construed + as modifying the License. + + You may add Your own copyright statement to Your modifications and + may provide additional or different license terms and conditions + for use, reproduction, or distribution of Your modifications, or + for any such Derivative Works as a whole, provided Your use, + reproduction, and distribution of the Work otherwise complies with + the conditions stated in this License. + + 5. Submission of Contributions. Unless You explicitly state otherwise, + any Contribution intentionally submitted for inclusion in the Work + by You to the Licensor shall be under the terms and conditions of + this License, without any additional terms or conditions. + Notwithstanding the above, nothing herein shall supersede or modify + the terms of any separate license agreement you may have executed + with Licensor regarding such Contributions. + + 6. Trademarks. This License does not grant permission to use the trade + names, trademarks, service marks, or product names of the Licensor, + except as required for reasonable and customary use in describing the + origin of the Work and reproducing the content of the NOTICE file. + + 7. Disclaimer of Warranty. Unless required by applicable law or + agreed to in writing, Licensor provides the Work (and each + Contributor provides its Contributions) on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or + implied, including, without limitation, any warranties or conditions + of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A + PARTICULAR PURPOSE. You are solely responsible for determining the + appropriateness of using or redistributing the Work and assume any + risks associated with Your exercise of permissions under this License. + + 8. Limitation of Liability. In no event and under no legal theory, + whether in tort (including negligence), contract, or otherwise, + unless required by applicable law (such as deliberate and grossly + negligent acts) or agreed to in writing, shall any Contributor be + liable to You for damages, including any direct, indirect, special, + incidental, or consequential damages of any character arising as a + result of this License or out of the use or inability to use the + Work (including but not limited to damages for loss of goodwill, + work stoppage, computer failure or malfunction, or any and all + other commercial damages or losses), even if such Contributor + has been advised of the possibility of such damages. + + 9. Accepting Warranty or Additional Liability. While redistributing + the Work or Derivative Works thereof, You may choose to offer, + and charge a fee for, acceptance of support, warranty, indemnity, + or other liability obligations and/or rights consistent with this + License. However, in accepting such obligations, You may act only + on Your own behalf and on Your sole responsibility, not on behalf + of any other Contributor, and only if You agree to indemnify, + defend, and hold each Contributor harmless for any liability + incurred by, or claims asserted against, such Contributor by reason + of your accepting any such warranty or additional liability. + + END OF TERMS AND CONDITIONS + + APPENDIX: How to apply the Apache License to your work. + + To apply the Apache License to your work, attach the following + boilerplate notice, with the fields enclosed by brackets "[]" + replaced with your own identifying information. (Don't include + the brackets!) The text should be enclosed in the appropriate + comment syntax for the file format. We also recommend that a + file or class name and description of purpose be included on the + same "printed page" as the copyright notice for easier + identification within third-party archives. + + Copyright [yyyy] [name of copyright owner] + + Licensed under the Apache License, Version 2.0 (the "License"); + you may not use this file except in compliance with the License. + You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + + Unless required by applicable law or agreed to in writing, software + distributed under the License is distributed on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + See the License for the specific language governing permissions and + limitations under the License. diff --git a/.m2/wrapper/dists/apache-maven-3.9.11/a2d47e15/lib/guava-33.4.8-jre.jar b/.m2/wrapper/dists/apache-maven-3.9.11/a2d47e15/lib/guava-33.4.8-jre.jar new file mode 100644 index 0000000..1c2e215 Binary files /dev/null and b/.m2/wrapper/dists/apache-maven-3.9.11/a2d47e15/lib/guava-33.4.8-jre.jar differ diff --git a/.m2/wrapper/dists/apache-maven-3.9.11/a2d47e15/lib/guava.license b/.m2/wrapper/dists/apache-maven-3.9.11/a2d47e15/lib/guava.license new file mode 100644 index 0000000..d645695 --- /dev/null +++ b/.m2/wrapper/dists/apache-maven-3.9.11/a2d47e15/lib/guava.license @@ -0,0 +1,202 @@ + + Apache License + Version 2.0, January 2004 + http://www.apache.org/licenses/ + + TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION + + 1. Definitions. + + "License" shall mean the terms and conditions for use, reproduction, + and distribution as defined by Sections 1 through 9 of this document. + + "Licensor" shall mean the copyright owner or entity authorized by + the copyright owner that is granting the License. + + "Legal Entity" shall mean the union of the acting entity and all + other entities that control, are controlled by, or are under common + control with that entity. For the purposes of this definition, + "control" means (i) the power, direct or indirect, to cause the + direction or management of such entity, whether by contract or + otherwise, or (ii) ownership of fifty percent (50%) or more of the + outstanding shares, or (iii) beneficial ownership of such entity. + + "You" (or "Your") shall mean an individual or Legal Entity + exercising permissions granted by this License. + + "Source" form shall mean the preferred form for making modifications, + including but not limited to software source code, documentation + source, and configuration files. + + "Object" form shall mean any form resulting from mechanical + transformation or translation of a Source form, including but + not limited to compiled object code, generated documentation, + and conversions to other media types. + + "Work" shall mean the work of authorship, whether in Source or + Object form, made available under the License, as indicated by a + copyright notice that is included in or attached to the work + (an example is provided in the Appendix below). + + "Derivative Works" shall mean any work, whether in Source or Object + form, that is based on (or derived from) the Work and for which the + editorial revisions, annotations, elaborations, or other modifications + represent, as a whole, an original work of authorship. For the purposes + of this License, Derivative Works shall not include works that remain + separable from, or merely link (or bind by name) to the interfaces of, + the Work and Derivative Works thereof. + + "Contribution" shall mean any work of authorship, including + the original version of the Work and any modifications or additions + to that Work or Derivative Works thereof, that is intentionally + submitted to Licensor for inclusion in the Work by the copyright owner + or by an individual or Legal Entity authorized to submit on behalf of + the copyright owner. For the purposes of this definition, "submitted" + means any form of electronic, verbal, or written communication sent + to the Licensor or its representatives, including but not limited to + communication on electronic mailing lists, source code control systems, + and issue tracking systems that are managed by, or on behalf of, the + Licensor for the purpose of discussing and improving the Work, but + excluding communication that is conspicuously marked or otherwise + designated in writing by the copyright owner as "Not a Contribution." + + "Contributor" shall mean Licensor and any individual or Legal Entity + on behalf of whom a Contribution has been received by Licensor and + subsequently incorporated within the Work. + + 2. Grant of Copyright License. Subject to the terms and conditions of + this License, each Contributor hereby grants to You a perpetual, + worldwide, non-exclusive, no-charge, royalty-free, irrevocable + copyright license to reproduce, prepare Derivative Works of, + publicly display, publicly perform, sublicense, and distribute the + Work and such Derivative Works in Source or Object form. + + 3. Grant of Patent License. Subject to the terms and conditions of + this License, each Contributor hereby grants to You a perpetual, + worldwide, non-exclusive, no-charge, royalty-free, irrevocable + (except as stated in this section) patent license to make, have made, + use, offer to sell, sell, import, and otherwise transfer the Work, + where such license applies only to those patent claims licensable + by such Contributor that are necessarily infringed by their + Contribution(s) alone or by combination of their Contribution(s) + with the Work to which such Contribution(s) was submitted. If You + institute patent litigation against any entity (including a + cross-claim or counterclaim in a lawsuit) alleging that the Work + or a Contribution incorporated within the Work constitutes direct + or contributory patent infringement, then any patent licenses + granted to You under this License for that Work shall terminate + as of the date such litigation is filed. + + 4. Redistribution. You may reproduce and distribute copies of the + Work or Derivative Works thereof in any medium, with or without + modifications, and in Source or Object form, provided that You + meet the following conditions: + + (a) You must give any other recipients of the Work or + Derivative Works a copy of this License; and + + (b) You must cause any modified files to carry prominent notices + stating that You changed the files; and + + (c) You must retain, in the Source form of any Derivative Works + that You distribute, all copyright, patent, trademark, and + attribution notices from the Source form of the Work, + excluding those notices that do not pertain to any part of + the Derivative Works; and + + (d) If the Work includes a "NOTICE" text file as part of its + distribution, then any Derivative Works that You distribute must + include a readable copy of the attribution notices contained + within such NOTICE file, excluding those notices that do not + pertain to any part of the Derivative Works, in at least one + of the following places: within a NOTICE text file distributed + as part of the Derivative Works; within the Source form or + documentation, if provided along with the Derivative Works; or, + within a display generated by the Derivative Works, if and + wherever such third-party notices normally appear. The contents + of the NOTICE file are for informational purposes only and + do not modify the License. You may add Your own attribution + notices within Derivative Works that You distribute, alongside + or as an addendum to the NOTICE text from the Work, provided + that such additional attribution notices cannot be construed + as modifying the License. + + You may add Your own copyright statement to Your modifications and + may provide additional or different license terms and conditions + for use, reproduction, or distribution of Your modifications, or + for any such Derivative Works as a whole, provided Your use, + reproduction, and distribution of the Work otherwise complies with + the conditions stated in this License. + + 5. Submission of Contributions. Unless You explicitly state otherwise, + any Contribution intentionally submitted for inclusion in the Work + by You to the Licensor shall be under the terms and conditions of + this License, without any additional terms or conditions. + Notwithstanding the above, nothing herein shall supersede or modify + the terms of any separate license agreement you may have executed + with Licensor regarding such Contributions. + + 6. Trademarks. This License does not grant permission to use the trade + names, trademarks, service marks, or product names of the Licensor, + except as required for reasonable and customary use in describing the + origin of the Work and reproducing the content of the NOTICE file. + + 7. Disclaimer of Warranty. Unless required by applicable law or + agreed to in writing, Licensor provides the Work (and each + Contributor provides its Contributions) on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or + implied, including, without limitation, any warranties or conditions + of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A + PARTICULAR PURPOSE. You are solely responsible for determining the + appropriateness of using or redistributing the Work and assume any + risks associated with Your exercise of permissions under this License. + + 8. Limitation of Liability. In no event and under no legal theory, + whether in tort (including negligence), contract, or otherwise, + unless required by applicable law (such as deliberate and grossly + negligent acts) or agreed to in writing, shall any Contributor be + liable to You for damages, including any direct, indirect, special, + incidental, or consequential damages of any character arising as a + result of this License or out of the use or inability to use the + Work (including but not limited to damages for loss of goodwill, + work stoppage, computer failure or malfunction, or any and all + other commercial damages or losses), even if such Contributor + has been advised of the possibility of such damages. + + 9. Accepting Warranty or Additional Liability. While redistributing + the Work or Derivative Works thereof, You may choose to offer, + and charge a fee for, acceptance of support, warranty, indemnity, + or other liability obligations and/or rights consistent with this + License. However, in accepting such obligations, You may act only + on Your own behalf and on Your sole responsibility, not on behalf + of any other Contributor, and only if You agree to indemnify, + defend, and hold each Contributor harmless for any liability + incurred by, or claims asserted against, such Contributor by reason + of your accepting any such warranty or additional liability. + + END OF TERMS AND CONDITIONS + + APPENDIX: How to apply the Apache License to your work. + + To apply the Apache License to your work, attach the following + boilerplate notice, with the fields enclosed by brackets "[]" + replaced with your own identifying information. (Don't include + the brackets!) The text should be enclosed in the appropriate + comment syntax for the file format. We also recommend that a + file or class name and description of purpose be included on the + same "printed page" as the copyright notice for easier + identification within third-party archives. + + Copyright [yyyy] [name of copyright owner] + + Licensed under the Apache License, Version 2.0 (the "License"); + you may not use this file except in compliance with the License. + You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + + Unless required by applicable law or agreed to in writing, software + distributed under the License is distributed on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + See the License for the specific language governing permissions and + limitations under the License. diff --git a/.m2/wrapper/dists/apache-maven-3.9.11/a2d47e15/lib/guice-5.1.0-classes.jar b/.m2/wrapper/dists/apache-maven-3.9.11/a2d47e15/lib/guice-5.1.0-classes.jar new file mode 100644 index 0000000..b44b167 Binary files /dev/null and b/.m2/wrapper/dists/apache-maven-3.9.11/a2d47e15/lib/guice-5.1.0-classes.jar differ diff --git a/.m2/wrapper/dists/apache-maven-3.9.11/a2d47e15/lib/guice.license b/.m2/wrapper/dists/apache-maven-3.9.11/a2d47e15/lib/guice.license new file mode 100644 index 0000000..d645695 --- /dev/null +++ b/.m2/wrapper/dists/apache-maven-3.9.11/a2d47e15/lib/guice.license @@ -0,0 +1,202 @@ + + Apache License + Version 2.0, January 2004 + http://www.apache.org/licenses/ + + TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION + + 1. Definitions. + + "License" shall mean the terms and conditions for use, reproduction, + and distribution as defined by Sections 1 through 9 of this document. + + "Licensor" shall mean the copyright owner or entity authorized by + the copyright owner that is granting the License. + + "Legal Entity" shall mean the union of the acting entity and all + other entities that control, are controlled by, or are under common + control with that entity. For the purposes of this definition, + "control" means (i) the power, direct or indirect, to cause the + direction or management of such entity, whether by contract or + otherwise, or (ii) ownership of fifty percent (50%) or more of the + outstanding shares, or (iii) beneficial ownership of such entity. + + "You" (or "Your") shall mean an individual or Legal Entity + exercising permissions granted by this License. + + "Source" form shall mean the preferred form for making modifications, + including but not limited to software source code, documentation + source, and configuration files. + + "Object" form shall mean any form resulting from mechanical + transformation or translation of a Source form, including but + not limited to compiled object code, generated documentation, + and conversions to other media types. + + "Work" shall mean the work of authorship, whether in Source or + Object form, made available under the License, as indicated by a + copyright notice that is included in or attached to the work + (an example is provided in the Appendix below). + + "Derivative Works" shall mean any work, whether in Source or Object + form, that is based on (or derived from) the Work and for which the + editorial revisions, annotations, elaborations, or other modifications + represent, as a whole, an original work of authorship. For the purposes + of this License, Derivative Works shall not include works that remain + separable from, or merely link (or bind by name) to the interfaces of, + the Work and Derivative Works thereof. + + "Contribution" shall mean any work of authorship, including + the original version of the Work and any modifications or additions + to that Work or Derivative Works thereof, that is intentionally + submitted to Licensor for inclusion in the Work by the copyright owner + or by an individual or Legal Entity authorized to submit on behalf of + the copyright owner. For the purposes of this definition, "submitted" + means any form of electronic, verbal, or written communication sent + to the Licensor or its representatives, including but not limited to + communication on electronic mailing lists, source code control systems, + and issue tracking systems that are managed by, or on behalf of, the + Licensor for the purpose of discussing and improving the Work, but + excluding communication that is conspicuously marked or otherwise + designated in writing by the copyright owner as "Not a Contribution." + + "Contributor" shall mean Licensor and any individual or Legal Entity + on behalf of whom a Contribution has been received by Licensor and + subsequently incorporated within the Work. + + 2. Grant of Copyright License. Subject to the terms and conditions of + this License, each Contributor hereby grants to You a perpetual, + worldwide, non-exclusive, no-charge, royalty-free, irrevocable + copyright license to reproduce, prepare Derivative Works of, + publicly display, publicly perform, sublicense, and distribute the + Work and such Derivative Works in Source or Object form. + + 3. Grant of Patent License. Subject to the terms and conditions of + this License, each Contributor hereby grants to You a perpetual, + worldwide, non-exclusive, no-charge, royalty-free, irrevocable + (except as stated in this section) patent license to make, have made, + use, offer to sell, sell, import, and otherwise transfer the Work, + where such license applies only to those patent claims licensable + by such Contributor that are necessarily infringed by their + Contribution(s) alone or by combination of their Contribution(s) + with the Work to which such Contribution(s) was submitted. If You + institute patent litigation against any entity (including a + cross-claim or counterclaim in a lawsuit) alleging that the Work + or a Contribution incorporated within the Work constitutes direct + or contributory patent infringement, then any patent licenses + granted to You under this License for that Work shall terminate + as of the date such litigation is filed. + + 4. Redistribution. You may reproduce and distribute copies of the + Work or Derivative Works thereof in any medium, with or without + modifications, and in Source or Object form, provided that You + meet the following conditions: + + (a) You must give any other recipients of the Work or + Derivative Works a copy of this License; and + + (b) You must cause any modified files to carry prominent notices + stating that You changed the files; and + + (c) You must retain, in the Source form of any Derivative Works + that You distribute, all copyright, patent, trademark, and + attribution notices from the Source form of the Work, + excluding those notices that do not pertain to any part of + the Derivative Works; and + + (d) If the Work includes a "NOTICE" text file as part of its + distribution, then any Derivative Works that You distribute must + include a readable copy of the attribution notices contained + within such NOTICE file, excluding those notices that do not + pertain to any part of the Derivative Works, in at least one + of the following places: within a NOTICE text file distributed + as part of the Derivative Works; within the Source form or + documentation, if provided along with the Derivative Works; or, + within a display generated by the Derivative Works, if and + wherever such third-party notices normally appear. The contents + of the NOTICE file are for informational purposes only and + do not modify the License. You may add Your own attribution + notices within Derivative Works that You distribute, alongside + or as an addendum to the NOTICE text from the Work, provided + that such additional attribution notices cannot be construed + as modifying the License. + + You may add Your own copyright statement to Your modifications and + may provide additional or different license terms and conditions + for use, reproduction, or distribution of Your modifications, or + for any such Derivative Works as a whole, provided Your use, + reproduction, and distribution of the Work otherwise complies with + the conditions stated in this License. + + 5. Submission of Contributions. Unless You explicitly state otherwise, + any Contribution intentionally submitted for inclusion in the Work + by You to the Licensor shall be under the terms and conditions of + this License, without any additional terms or conditions. + Notwithstanding the above, nothing herein shall supersede or modify + the terms of any separate license agreement you may have executed + with Licensor regarding such Contributions. + + 6. Trademarks. This License does not grant permission to use the trade + names, trademarks, service marks, or product names of the Licensor, + except as required for reasonable and customary use in describing the + origin of the Work and reproducing the content of the NOTICE file. + + 7. Disclaimer of Warranty. Unless required by applicable law or + agreed to in writing, Licensor provides the Work (and each + Contributor provides its Contributions) on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or + implied, including, without limitation, any warranties or conditions + of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A + PARTICULAR PURPOSE. You are solely responsible for determining the + appropriateness of using or redistributing the Work and assume any + risks associated with Your exercise of permissions under this License. + + 8. Limitation of Liability. In no event and under no legal theory, + whether in tort (including negligence), contract, or otherwise, + unless required by applicable law (such as deliberate and grossly + negligent acts) or agreed to in writing, shall any Contributor be + liable to You for damages, including any direct, indirect, special, + incidental, or consequential damages of any character arising as a + result of this License or out of the use or inability to use the + Work (including but not limited to damages for loss of goodwill, + work stoppage, computer failure or malfunction, or any and all + other commercial damages or losses), even if such Contributor + has been advised of the possibility of such damages. + + 9. Accepting Warranty or Additional Liability. While redistributing + the Work or Derivative Works thereof, You may choose to offer, + and charge a fee for, acceptance of support, warranty, indemnity, + or other liability obligations and/or rights consistent with this + License. However, in accepting such obligations, You may act only + on Your own behalf and on Your sole responsibility, not on behalf + of any other Contributor, and only if You agree to indemnify, + defend, and hold each Contributor harmless for any liability + incurred by, or claims asserted against, such Contributor by reason + of your accepting any such warranty or additional liability. + + END OF TERMS AND CONDITIONS + + APPENDIX: How to apply the Apache License to your work. + + To apply the Apache License to your work, attach the following + boilerplate notice, with the fields enclosed by brackets "[]" + replaced with your own identifying information. (Don't include + the brackets!) The text should be enclosed in the appropriate + comment syntax for the file format. We also recommend that a + file or class name and description of purpose be included on the + same "printed page" as the copyright notice for easier + identification within third-party archives. + + Copyright [yyyy] [name of copyright owner] + + Licensed under the Apache License, Version 2.0 (the "License"); + you may not use this file except in compliance with the License. + You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + + Unless required by applicable law or agreed to in writing, software + distributed under the License is distributed on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + See the License for the specific language governing permissions and + limitations under the License. diff --git a/.m2/wrapper/dists/apache-maven-3.9.11/a2d47e15/lib/httpclient-4.5.14.jar b/.m2/wrapper/dists/apache-maven-3.9.11/a2d47e15/lib/httpclient-4.5.14.jar new file mode 100644 index 0000000..2bb7c07 Binary files /dev/null and b/.m2/wrapper/dists/apache-maven-3.9.11/a2d47e15/lib/httpclient-4.5.14.jar differ diff --git a/.m2/wrapper/dists/apache-maven-3.9.11/a2d47e15/lib/httpclient.license b/.m2/wrapper/dists/apache-maven-3.9.11/a2d47e15/lib/httpclient.license new file mode 100644 index 0000000..d645695 --- /dev/null +++ b/.m2/wrapper/dists/apache-maven-3.9.11/a2d47e15/lib/httpclient.license @@ -0,0 +1,202 @@ + + Apache License + Version 2.0, January 2004 + http://www.apache.org/licenses/ + + TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION + + 1. Definitions. + + "License" shall mean the terms and conditions for use, reproduction, + and distribution as defined by Sections 1 through 9 of this document. + + "Licensor" shall mean the copyright owner or entity authorized by + the copyright owner that is granting the License. + + "Legal Entity" shall mean the union of the acting entity and all + other entities that control, are controlled by, or are under common + control with that entity. For the purposes of this definition, + "control" means (i) the power, direct or indirect, to cause the + direction or management of such entity, whether by contract or + otherwise, or (ii) ownership of fifty percent (50%) or more of the + outstanding shares, or (iii) beneficial ownership of such entity. + + "You" (or "Your") shall mean an individual or Legal Entity + exercising permissions granted by this License. + + "Source" form shall mean the preferred form for making modifications, + including but not limited to software source code, documentation + source, and configuration files. + + "Object" form shall mean any form resulting from mechanical + transformation or translation of a Source form, including but + not limited to compiled object code, generated documentation, + and conversions to other media types. + + "Work" shall mean the work of authorship, whether in Source or + Object form, made available under the License, as indicated by a + copyright notice that is included in or attached to the work + (an example is provided in the Appendix below). + + "Derivative Works" shall mean any work, whether in Source or Object + form, that is based on (or derived from) the Work and for which the + editorial revisions, annotations, elaborations, or other modifications + represent, as a whole, an original work of authorship. For the purposes + of this License, Derivative Works shall not include works that remain + separable from, or merely link (or bind by name) to the interfaces of, + the Work and Derivative Works thereof. + + "Contribution" shall mean any work of authorship, including + the original version of the Work and any modifications or additions + to that Work or Derivative Works thereof, that is intentionally + submitted to Licensor for inclusion in the Work by the copyright owner + or by an individual or Legal Entity authorized to submit on behalf of + the copyright owner. For the purposes of this definition, "submitted" + means any form of electronic, verbal, or written communication sent + to the Licensor or its representatives, including but not limited to + communication on electronic mailing lists, source code control systems, + and issue tracking systems that are managed by, or on behalf of, the + Licensor for the purpose of discussing and improving the Work, but + excluding communication that is conspicuously marked or otherwise + designated in writing by the copyright owner as "Not a Contribution." + + "Contributor" shall mean Licensor and any individual or Legal Entity + on behalf of whom a Contribution has been received by Licensor and + subsequently incorporated within the Work. + + 2. Grant of Copyright License. Subject to the terms and conditions of + this License, each Contributor hereby grants to You a perpetual, + worldwide, non-exclusive, no-charge, royalty-free, irrevocable + copyright license to reproduce, prepare Derivative Works of, + publicly display, publicly perform, sublicense, and distribute the + Work and such Derivative Works in Source or Object form. + + 3. Grant of Patent License. Subject to the terms and conditions of + this License, each Contributor hereby grants to You a perpetual, + worldwide, non-exclusive, no-charge, royalty-free, irrevocable + (except as stated in this section) patent license to make, have made, + use, offer to sell, sell, import, and otherwise transfer the Work, + where such license applies only to those patent claims licensable + by such Contributor that are necessarily infringed by their + Contribution(s) alone or by combination of their Contribution(s) + with the Work to which such Contribution(s) was submitted. If You + institute patent litigation against any entity (including a + cross-claim or counterclaim in a lawsuit) alleging that the Work + or a Contribution incorporated within the Work constitutes direct + or contributory patent infringement, then any patent licenses + granted to You under this License for that Work shall terminate + as of the date such litigation is filed. + + 4. Redistribution. You may reproduce and distribute copies of the + Work or Derivative Works thereof in any medium, with or without + modifications, and in Source or Object form, provided that You + meet the following conditions: + + (a) You must give any other recipients of the Work or + Derivative Works a copy of this License; and + + (b) You must cause any modified files to carry prominent notices + stating that You changed the files; and + + (c) You must retain, in the Source form of any Derivative Works + that You distribute, all copyright, patent, trademark, and + attribution notices from the Source form of the Work, + excluding those notices that do not pertain to any part of + the Derivative Works; and + + (d) If the Work includes a "NOTICE" text file as part of its + distribution, then any Derivative Works that You distribute must + include a readable copy of the attribution notices contained + within such NOTICE file, excluding those notices that do not + pertain to any part of the Derivative Works, in at least one + of the following places: within a NOTICE text file distributed + as part of the Derivative Works; within the Source form or + documentation, if provided along with the Derivative Works; or, + within a display generated by the Derivative Works, if and + wherever such third-party notices normally appear. The contents + of the NOTICE file are for informational purposes only and + do not modify the License. You may add Your own attribution + notices within Derivative Works that You distribute, alongside + or as an addendum to the NOTICE text from the Work, provided + that such additional attribution notices cannot be construed + as modifying the License. + + You may add Your own copyright statement to Your modifications and + may provide additional or different license terms and conditions + for use, reproduction, or distribution of Your modifications, or + for any such Derivative Works as a whole, provided Your use, + reproduction, and distribution of the Work otherwise complies with + the conditions stated in this License. + + 5. Submission of Contributions. Unless You explicitly state otherwise, + any Contribution intentionally submitted for inclusion in the Work + by You to the Licensor shall be under the terms and conditions of + this License, without any additional terms or conditions. + Notwithstanding the above, nothing herein shall supersede or modify + the terms of any separate license agreement you may have executed + with Licensor regarding such Contributions. + + 6. Trademarks. This License does not grant permission to use the trade + names, trademarks, service marks, or product names of the Licensor, + except as required for reasonable and customary use in describing the + origin of the Work and reproducing the content of the NOTICE file. + + 7. Disclaimer of Warranty. Unless required by applicable law or + agreed to in writing, Licensor provides the Work (and each + Contributor provides its Contributions) on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or + implied, including, without limitation, any warranties or conditions + of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A + PARTICULAR PURPOSE. You are solely responsible for determining the + appropriateness of using or redistributing the Work and assume any + risks associated with Your exercise of permissions under this License. + + 8. Limitation of Liability. In no event and under no legal theory, + whether in tort (including negligence), contract, or otherwise, + unless required by applicable law (such as deliberate and grossly + negligent acts) or agreed to in writing, shall any Contributor be + liable to You for damages, including any direct, indirect, special, + incidental, or consequential damages of any character arising as a + result of this License or out of the use or inability to use the + Work (including but not limited to damages for loss of goodwill, + work stoppage, computer failure or malfunction, or any and all + other commercial damages or losses), even if such Contributor + has been advised of the possibility of such damages. + + 9. Accepting Warranty or Additional Liability. While redistributing + the Work or Derivative Works thereof, You may choose to offer, + and charge a fee for, acceptance of support, warranty, indemnity, + or other liability obligations and/or rights consistent with this + License. However, in accepting such obligations, You may act only + on Your own behalf and on Your sole responsibility, not on behalf + of any other Contributor, and only if You agree to indemnify, + defend, and hold each Contributor harmless for any liability + incurred by, or claims asserted against, such Contributor by reason + of your accepting any such warranty or additional liability. + + END OF TERMS AND CONDITIONS + + APPENDIX: How to apply the Apache License to your work. + + To apply the Apache License to your work, attach the following + boilerplate notice, with the fields enclosed by brackets "[]" + replaced with your own identifying information. (Don't include + the brackets!) The text should be enclosed in the appropriate + comment syntax for the file format. We also recommend that a + file or class name and description of purpose be included on the + same "printed page" as the copyright notice for easier + identification within third-party archives. + + Copyright [yyyy] [name of copyright owner] + + Licensed under the Apache License, Version 2.0 (the "License"); + you may not use this file except in compliance with the License. + You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + + Unless required by applicable law or agreed to in writing, software + distributed under the License is distributed on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + See the License for the specific language governing permissions and + limitations under the License. diff --git a/.m2/wrapper/dists/apache-maven-3.9.11/a2d47e15/lib/httpcore-4.4.16.jar b/.m2/wrapper/dists/apache-maven-3.9.11/a2d47e15/lib/httpcore-4.4.16.jar new file mode 100644 index 0000000..f0bdebe Binary files /dev/null and b/.m2/wrapper/dists/apache-maven-3.9.11/a2d47e15/lib/httpcore-4.4.16.jar differ diff --git a/.m2/wrapper/dists/apache-maven-3.9.11/a2d47e15/lib/httpcore.license b/.m2/wrapper/dists/apache-maven-3.9.11/a2d47e15/lib/httpcore.license new file mode 100644 index 0000000..d645695 --- /dev/null +++ b/.m2/wrapper/dists/apache-maven-3.9.11/a2d47e15/lib/httpcore.license @@ -0,0 +1,202 @@ + + Apache License + Version 2.0, January 2004 + http://www.apache.org/licenses/ + + TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION + + 1. Definitions. + + "License" shall mean the terms and conditions for use, reproduction, + and distribution as defined by Sections 1 through 9 of this document. + + "Licensor" shall mean the copyright owner or entity authorized by + the copyright owner that is granting the License. + + "Legal Entity" shall mean the union of the acting entity and all + other entities that control, are controlled by, or are under common + control with that entity. For the purposes of this definition, + "control" means (i) the power, direct or indirect, to cause the + direction or management of such entity, whether by contract or + otherwise, or (ii) ownership of fifty percent (50%) or more of the + outstanding shares, or (iii) beneficial ownership of such entity. + + "You" (or "Your") shall mean an individual or Legal Entity + exercising permissions granted by this License. + + "Source" form shall mean the preferred form for making modifications, + including but not limited to software source code, documentation + source, and configuration files. + + "Object" form shall mean any form resulting from mechanical + transformation or translation of a Source form, including but + not limited to compiled object code, generated documentation, + and conversions to other media types. + + "Work" shall mean the work of authorship, whether in Source or + Object form, made available under the License, as indicated by a + copyright notice that is included in or attached to the work + (an example is provided in the Appendix below). + + "Derivative Works" shall mean any work, whether in Source or Object + form, that is based on (or derived from) the Work and for which the + editorial revisions, annotations, elaborations, or other modifications + represent, as a whole, an original work of authorship. For the purposes + of this License, Derivative Works shall not include works that remain + separable from, or merely link (or bind by name) to the interfaces of, + the Work and Derivative Works thereof. + + "Contribution" shall mean any work of authorship, including + the original version of the Work and any modifications or additions + to that Work or Derivative Works thereof, that is intentionally + submitted to Licensor for inclusion in the Work by the copyright owner + or by an individual or Legal Entity authorized to submit on behalf of + the copyright owner. For the purposes of this definition, "submitted" + means any form of electronic, verbal, or written communication sent + to the Licensor or its representatives, including but not limited to + communication on electronic mailing lists, source code control systems, + and issue tracking systems that are managed by, or on behalf of, the + Licensor for the purpose of discussing and improving the Work, but + excluding communication that is conspicuously marked or otherwise + designated in writing by the copyright owner as "Not a Contribution." + + "Contributor" shall mean Licensor and any individual or Legal Entity + on behalf of whom a Contribution has been received by Licensor and + subsequently incorporated within the Work. + + 2. Grant of Copyright License. Subject to the terms and conditions of + this License, each Contributor hereby grants to You a perpetual, + worldwide, non-exclusive, no-charge, royalty-free, irrevocable + copyright license to reproduce, prepare Derivative Works of, + publicly display, publicly perform, sublicense, and distribute the + Work and such Derivative Works in Source or Object form. + + 3. Grant of Patent License. Subject to the terms and conditions of + this License, each Contributor hereby grants to You a perpetual, + worldwide, non-exclusive, no-charge, royalty-free, irrevocable + (except as stated in this section) patent license to make, have made, + use, offer to sell, sell, import, and otherwise transfer the Work, + where such license applies only to those patent claims licensable + by such Contributor that are necessarily infringed by their + Contribution(s) alone or by combination of their Contribution(s) + with the Work to which such Contribution(s) was submitted. If You + institute patent litigation against any entity (including a + cross-claim or counterclaim in a lawsuit) alleging that the Work + or a Contribution incorporated within the Work constitutes direct + or contributory patent infringement, then any patent licenses + granted to You under this License for that Work shall terminate + as of the date such litigation is filed. + + 4. Redistribution. You may reproduce and distribute copies of the + Work or Derivative Works thereof in any medium, with or without + modifications, and in Source or Object form, provided that You + meet the following conditions: + + (a) You must give any other recipients of the Work or + Derivative Works a copy of this License; and + + (b) You must cause any modified files to carry prominent notices + stating that You changed the files; and + + (c) You must retain, in the Source form of any Derivative Works + that You distribute, all copyright, patent, trademark, and + attribution notices from the Source form of the Work, + excluding those notices that do not pertain to any part of + the Derivative Works; and + + (d) If the Work includes a "NOTICE" text file as part of its + distribution, then any Derivative Works that You distribute must + include a readable copy of the attribution notices contained + within such NOTICE file, excluding those notices that do not + pertain to any part of the Derivative Works, in at least one + of the following places: within a NOTICE text file distributed + as part of the Derivative Works; within the Source form or + documentation, if provided along with the Derivative Works; or, + within a display generated by the Derivative Works, if and + wherever such third-party notices normally appear. The contents + of the NOTICE file are for informational purposes only and + do not modify the License. You may add Your own attribution + notices within Derivative Works that You distribute, alongside + or as an addendum to the NOTICE text from the Work, provided + that such additional attribution notices cannot be construed + as modifying the License. + + You may add Your own copyright statement to Your modifications and + may provide additional or different license terms and conditions + for use, reproduction, or distribution of Your modifications, or + for any such Derivative Works as a whole, provided Your use, + reproduction, and distribution of the Work otherwise complies with + the conditions stated in this License. + + 5. Submission of Contributions. Unless You explicitly state otherwise, + any Contribution intentionally submitted for inclusion in the Work + by You to the Licensor shall be under the terms and conditions of + this License, without any additional terms or conditions. + Notwithstanding the above, nothing herein shall supersede or modify + the terms of any separate license agreement you may have executed + with Licensor regarding such Contributions. + + 6. Trademarks. This License does not grant permission to use the trade + names, trademarks, service marks, or product names of the Licensor, + except as required for reasonable and customary use in describing the + origin of the Work and reproducing the content of the NOTICE file. + + 7. Disclaimer of Warranty. Unless required by applicable law or + agreed to in writing, Licensor provides the Work (and each + Contributor provides its Contributions) on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or + implied, including, without limitation, any warranties or conditions + of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A + PARTICULAR PURPOSE. You are solely responsible for determining the + appropriateness of using or redistributing the Work and assume any + risks associated with Your exercise of permissions under this License. + + 8. Limitation of Liability. In no event and under no legal theory, + whether in tort (including negligence), contract, or otherwise, + unless required by applicable law (such as deliberate and grossly + negligent acts) or agreed to in writing, shall any Contributor be + liable to You for damages, including any direct, indirect, special, + incidental, or consequential damages of any character arising as a + result of this License or out of the use or inability to use the + Work (including but not limited to damages for loss of goodwill, + work stoppage, computer failure or malfunction, or any and all + other commercial damages or losses), even if such Contributor + has been advised of the possibility of such damages. + + 9. Accepting Warranty or Additional Liability. While redistributing + the Work or Derivative Works thereof, You may choose to offer, + and charge a fee for, acceptance of support, warranty, indemnity, + or other liability obligations and/or rights consistent with this + License. However, in accepting such obligations, You may act only + on Your own behalf and on Your sole responsibility, not on behalf + of any other Contributor, and only if You agree to indemnify, + defend, and hold each Contributor harmless for any liability + incurred by, or claims asserted against, such Contributor by reason + of your accepting any such warranty or additional liability. + + END OF TERMS AND CONDITIONS + + APPENDIX: How to apply the Apache License to your work. + + To apply the Apache License to your work, attach the following + boilerplate notice, with the fields enclosed by brackets "[]" + replaced with your own identifying information. (Don't include + the brackets!) The text should be enclosed in the appropriate + comment syntax for the file format. We also recommend that a + file or class name and description of purpose be included on the + same "printed page" as the copyright notice for easier + identification within third-party archives. + + Copyright [yyyy] [name of copyright owner] + + Licensed under the Apache License, Version 2.0 (the "License"); + you may not use this file except in compliance with the License. + You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + + Unless required by applicable law or agreed to in writing, software + distributed under the License is distributed on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + See the License for the specific language governing permissions and + limitations under the License. diff --git a/.m2/wrapper/dists/apache-maven-3.9.11/a2d47e15/lib/jansi-2.4.2.jar b/.m2/wrapper/dists/apache-maven-3.9.11/a2d47e15/lib/jansi-2.4.2.jar new file mode 100644 index 0000000..fe88dec Binary files /dev/null and b/.m2/wrapper/dists/apache-maven-3.9.11/a2d47e15/lib/jansi-2.4.2.jar differ diff --git a/.m2/wrapper/dists/apache-maven-3.9.11/a2d47e15/lib/jansi-native/README.txt b/.m2/wrapper/dists/apache-maven-3.9.11/a2d47e15/lib/jansi-native/README.txt new file mode 100644 index 0000000..26a957e --- /dev/null +++ b/.m2/wrapper/dists/apache-maven-3.9.11/a2d47e15/lib/jansi-native/README.txt @@ -0,0 +1,8 @@ +This directory contains Jansi native libraries extracted from Jansi JAR. + +You can add your own build for platforms not natively supported by Jansi. +See here [1] on how to compile for your platform and and here [2] how libraries +follow Jansi's directory and filename conventions. + +[1] https://github.com/fusesource/jansi/tree/master/src/main/native +[2] https://github.com/fusesource/jansi/blob/321a8ff71c731e10f4ea05c607860180276b2215/src/main/java/org/fusesource/jansi/internal/OSInfo.java diff --git a/.m2/wrapper/dists/apache-maven-3.9.11/a2d47e15/lib/jansi-native/Windows/arm64/jansi.dll b/.m2/wrapper/dists/apache-maven-3.9.11/a2d47e15/lib/jansi-native/Windows/arm64/jansi.dll new file mode 100644 index 0000000..7f4e35b Binary files /dev/null and b/.m2/wrapper/dists/apache-maven-3.9.11/a2d47e15/lib/jansi-native/Windows/arm64/jansi.dll differ diff --git a/.m2/wrapper/dists/apache-maven-3.9.11/a2d47e15/lib/jansi-native/Windows/x86/jansi.dll b/.m2/wrapper/dists/apache-maven-3.9.11/a2d47e15/lib/jansi-native/Windows/x86/jansi.dll new file mode 100644 index 0000000..8843d02 Binary files /dev/null and b/.m2/wrapper/dists/apache-maven-3.9.11/a2d47e15/lib/jansi-native/Windows/x86/jansi.dll differ diff --git a/.m2/wrapper/dists/apache-maven-3.9.11/a2d47e15/lib/jansi-native/Windows/x86_64/jansi.dll b/.m2/wrapper/dists/apache-maven-3.9.11/a2d47e15/lib/jansi-native/Windows/x86_64/jansi.dll new file mode 100644 index 0000000..aeec4e3 Binary files /dev/null and b/.m2/wrapper/dists/apache-maven-3.9.11/a2d47e15/lib/jansi-native/Windows/x86_64/jansi.dll differ diff --git a/.m2/wrapper/dists/apache-maven-3.9.11/a2d47e15/lib/jansi.license b/.m2/wrapper/dists/apache-maven-3.9.11/a2d47e15/lib/jansi.license new file mode 100644 index 0000000..d645695 --- /dev/null +++ b/.m2/wrapper/dists/apache-maven-3.9.11/a2d47e15/lib/jansi.license @@ -0,0 +1,202 @@ + + Apache License + Version 2.0, January 2004 + http://www.apache.org/licenses/ + + TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION + + 1. Definitions. + + "License" shall mean the terms and conditions for use, reproduction, + and distribution as defined by Sections 1 through 9 of this document. + + "Licensor" shall mean the copyright owner or entity authorized by + the copyright owner that is granting the License. + + "Legal Entity" shall mean the union of the acting entity and all + other entities that control, are controlled by, or are under common + control with that entity. For the purposes of this definition, + "control" means (i) the power, direct or indirect, to cause the + direction or management of such entity, whether by contract or + otherwise, or (ii) ownership of fifty percent (50%) or more of the + outstanding shares, or (iii) beneficial ownership of such entity. + + "You" (or "Your") shall mean an individual or Legal Entity + exercising permissions granted by this License. + + "Source" form shall mean the preferred form for making modifications, + including but not limited to software source code, documentation + source, and configuration files. + + "Object" form shall mean any form resulting from mechanical + transformation or translation of a Source form, including but + not limited to compiled object code, generated documentation, + and conversions to other media types. + + "Work" shall mean the work of authorship, whether in Source or + Object form, made available under the License, as indicated by a + copyright notice that is included in or attached to the work + (an example is provided in the Appendix below). + + "Derivative Works" shall mean any work, whether in Source or Object + form, that is based on (or derived from) the Work and for which the + editorial revisions, annotations, elaborations, or other modifications + represent, as a whole, an original work of authorship. For the purposes + of this License, Derivative Works shall not include works that remain + separable from, or merely link (or bind by name) to the interfaces of, + the Work and Derivative Works thereof. + + "Contribution" shall mean any work of authorship, including + the original version of the Work and any modifications or additions + to that Work or Derivative Works thereof, that is intentionally + submitted to Licensor for inclusion in the Work by the copyright owner + or by an individual or Legal Entity authorized to submit on behalf of + the copyright owner. For the purposes of this definition, "submitted" + means any form of electronic, verbal, or written communication sent + to the Licensor or its representatives, including but not limited to + communication on electronic mailing lists, source code control systems, + and issue tracking systems that are managed by, or on behalf of, the + Licensor for the purpose of discussing and improving the Work, but + excluding communication that is conspicuously marked or otherwise + designated in writing by the copyright owner as "Not a Contribution." + + "Contributor" shall mean Licensor and any individual or Legal Entity + on behalf of whom a Contribution has been received by Licensor and + subsequently incorporated within the Work. + + 2. Grant of Copyright License. Subject to the terms and conditions of + this License, each Contributor hereby grants to You a perpetual, + worldwide, non-exclusive, no-charge, royalty-free, irrevocable + copyright license to reproduce, prepare Derivative Works of, + publicly display, publicly perform, sublicense, and distribute the + Work and such Derivative Works in Source or Object form. + + 3. Grant of Patent License. Subject to the terms and conditions of + this License, each Contributor hereby grants to You a perpetual, + worldwide, non-exclusive, no-charge, royalty-free, irrevocable + (except as stated in this section) patent license to make, have made, + use, offer to sell, sell, import, and otherwise transfer the Work, + where such license applies only to those patent claims licensable + by such Contributor that are necessarily infringed by their + Contribution(s) alone or by combination of their Contribution(s) + with the Work to which such Contribution(s) was submitted. If You + institute patent litigation against any entity (including a + cross-claim or counterclaim in a lawsuit) alleging that the Work + or a Contribution incorporated within the Work constitutes direct + or contributory patent infringement, then any patent licenses + granted to You under this License for that Work shall terminate + as of the date such litigation is filed. + + 4. Redistribution. You may reproduce and distribute copies of the + Work or Derivative Works thereof in any medium, with or without + modifications, and in Source or Object form, provided that You + meet the following conditions: + + (a) You must give any other recipients of the Work or + Derivative Works a copy of this License; and + + (b) You must cause any modified files to carry prominent notices + stating that You changed the files; and + + (c) You must retain, in the Source form of any Derivative Works + that You distribute, all copyright, patent, trademark, and + attribution notices from the Source form of the Work, + excluding those notices that do not pertain to any part of + the Derivative Works; and + + (d) If the Work includes a "NOTICE" text file as part of its + distribution, then any Derivative Works that You distribute must + include a readable copy of the attribution notices contained + within such NOTICE file, excluding those notices that do not + pertain to any part of the Derivative Works, in at least one + of the following places: within a NOTICE text file distributed + as part of the Derivative Works; within the Source form or + documentation, if provided along with the Derivative Works; or, + within a display generated by the Derivative Works, if and + wherever such third-party notices normally appear. The contents + of the NOTICE file are for informational purposes only and + do not modify the License. You may add Your own attribution + notices within Derivative Works that You distribute, alongside + or as an addendum to the NOTICE text from the Work, provided + that such additional attribution notices cannot be construed + as modifying the License. + + You may add Your own copyright statement to Your modifications and + may provide additional or different license terms and conditions + for use, reproduction, or distribution of Your modifications, or + for any such Derivative Works as a whole, provided Your use, + reproduction, and distribution of the Work otherwise complies with + the conditions stated in this License. + + 5. Submission of Contributions. Unless You explicitly state otherwise, + any Contribution intentionally submitted for inclusion in the Work + by You to the Licensor shall be under the terms and conditions of + this License, without any additional terms or conditions. + Notwithstanding the above, nothing herein shall supersede or modify + the terms of any separate license agreement you may have executed + with Licensor regarding such Contributions. + + 6. Trademarks. This License does not grant permission to use the trade + names, trademarks, service marks, or product names of the Licensor, + except as required for reasonable and customary use in describing the + origin of the Work and reproducing the content of the NOTICE file. + + 7. Disclaimer of Warranty. Unless required by applicable law or + agreed to in writing, Licensor provides the Work (and each + Contributor provides its Contributions) on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or + implied, including, without limitation, any warranties or conditions + of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A + PARTICULAR PURPOSE. You are solely responsible for determining the + appropriateness of using or redistributing the Work and assume any + risks associated with Your exercise of permissions under this License. + + 8. Limitation of Liability. In no event and under no legal theory, + whether in tort (including negligence), contract, or otherwise, + unless required by applicable law (such as deliberate and grossly + negligent acts) or agreed to in writing, shall any Contributor be + liable to You for damages, including any direct, indirect, special, + incidental, or consequential damages of any character arising as a + result of this License or out of the use or inability to use the + Work (including but not limited to damages for loss of goodwill, + work stoppage, computer failure or malfunction, or any and all + other commercial damages or losses), even if such Contributor + has been advised of the possibility of such damages. + + 9. Accepting Warranty or Additional Liability. While redistributing + the Work or Derivative Works thereof, You may choose to offer, + and charge a fee for, acceptance of support, warranty, indemnity, + or other liability obligations and/or rights consistent with this + License. However, in accepting such obligations, You may act only + on Your own behalf and on Your sole responsibility, not on behalf + of any other Contributor, and only if You agree to indemnify, + defend, and hold each Contributor harmless for any liability + incurred by, or claims asserted against, such Contributor by reason + of your accepting any such warranty or additional liability. + + END OF TERMS AND CONDITIONS + + APPENDIX: How to apply the Apache License to your work. + + To apply the Apache License to your work, attach the following + boilerplate notice, with the fields enclosed by brackets "[]" + replaced with your own identifying information. (Don't include + the brackets!) The text should be enclosed in the appropriate + comment syntax for the file format. We also recommend that a + file or class name and description of purpose be included on the + same "printed page" as the copyright notice for easier + identification within third-party archives. + + Copyright [yyyy] [name of copyright owner] + + Licensed under the Apache License, Version 2.0 (the "License"); + you may not use this file except in compliance with the License. + You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + + Unless required by applicable law or agreed to in writing, software + distributed under the License is distributed on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + See the License for the specific language governing permissions and + limitations under the License. diff --git a/.m2/wrapper/dists/apache-maven-3.9.11/a2d47e15/lib/javax.annotation-api-1.3.2.jar b/.m2/wrapper/dists/apache-maven-3.9.11/a2d47e15/lib/javax.annotation-api-1.3.2.jar new file mode 100644 index 0000000..a8a470a Binary files /dev/null and b/.m2/wrapper/dists/apache-maven-3.9.11/a2d47e15/lib/javax.annotation-api-1.3.2.jar differ diff --git a/.m2/wrapper/dists/apache-maven-3.9.11/a2d47e15/lib/javax.annotation-api.license b/.m2/wrapper/dists/apache-maven-3.9.11/a2d47e15/lib/javax.annotation-api.license new file mode 100644 index 0000000..b1c74f9 --- /dev/null +++ b/.m2/wrapper/dists/apache-maven-3.9.11/a2d47e15/lib/javax.annotation-api.license @@ -0,0 +1,759 @@ +COMMON DEVELOPMENT AND DISTRIBUTION LICENSE (CDDL) Version 1.1 + +1. Definitions. + + 1.1. "Contributor" means each individual or entity that creates or + contributes to the creation of Modifications. + + 1.2. "Contributor Version" means the combination of the Original + Software, prior Modifications used by a Contributor (if any), and + the Modifications made by that particular Contributor. + + 1.3. "Covered Software" means (a) the Original Software, or (b) + Modifications, or (c) the combination of files containing Original + Software with files containing Modifications, in each case including + portions thereof. + + 1.4. "Executable" means the Covered Software in any form other than + Source Code. + + 1.5. "Initial Developer" means the individual or entity that first + makes Original Software available under this License. + + 1.6. "Larger Work" means a work which combines Covered Software or + portions thereof with code not governed by the terms of this License. + + 1.7. "License" means this document. + + 1.8. "Licensable" means having the right to grant, to the maximum + extent possible, whether at the time of the initial grant or + subsequently acquired, any and all of the rights conveyed herein. + + 1.9. "Modifications" means the Source Code and Executable form of + any of the following: + + A. Any file that results from an addition to, deletion from or + modification of the contents of a file containing Original Software + or previous Modifications; + + B. Any new file that contains any part of the Original Software or + previous Modification; or + + C. Any new file that is contributed or otherwise made available + under the terms of this License. + + 1.10. "Original Software" means the Source Code and Executable form + of computer software code that is originally released under this + License. + + 1.11. "Patent Claims" means any patent claim(s), now owned or + hereafter acquired, including without limitation, method, process, + and apparatus claims, in any patent Licensable by grantor. + + 1.12. "Source Code" means (a) the common form of computer software + code in which modifications are made and (b) associated + documentation included in or with such code. + + 1.13. "You" (or "Your") means an individual or a legal entity + exercising rights under, and complying with all of the terms of, + this License. For legal entities, "You" includes any entity which + controls, is controlled by, or is under common control with You. For + purposes of this definition, "control" means (a) the power, direct + or indirect, to cause the direction or management of such entity, + whether by contract or otherwise, or (b) ownership of more than + fifty percent (50%) of the outstanding shares or beneficial + ownership of such entity. + +2. License Grants. + + 2.1. The Initial Developer Grant. + + Conditioned upon Your compliance with Section 3.1 below and subject + to third party intellectual property claims, the Initial Developer + hereby grants You a world-wide, royalty-free, non-exclusive license: + + (a) under intellectual property rights (other than patent or + trademark) Licensable by Initial Developer, to use, reproduce, + modify, display, perform, sublicense and distribute the Original + Software (or portions thereof), with or without Modifications, + and/or as part of a Larger Work; and + + (b) under Patent Claims infringed by the making, using or selling of + Original Software, to make, have made, use, practice, sell, and + offer for sale, and/or otherwise dispose of the Original Software + (or portions thereof). + + (c) The licenses granted in Sections 2.1(a) and (b) are effective on + the date Initial Developer first distributes or otherwise makes the + Original Software available to a third party under the terms of this + License. + + (d) Notwithstanding Section 2.1(b) above, no patent license is + granted: (1) for code that You delete from the Original Software, or + (2) for infringements caused by: (i) the modification of the + Original Software, or (ii) the combination of the Original Software + with other software or devices. + + 2.2. Contributor Grant. + + Conditioned upon Your compliance with Section 3.1 below and subject + to third party intellectual property claims, each Contributor hereby + grants You a world-wide, royalty-free, non-exclusive license: + + (a) under intellectual property rights (other than patent or + trademark) Licensable by Contributor to use, reproduce, modify, + display, perform, sublicense and distribute the Modifications + created by such Contributor (or portions thereof), either on an + unmodified basis, with other Modifications, as Covered Software + and/or as part of a Larger Work; and + + (b) under Patent Claims infringed by the making, using, or selling + of Modifications made by that Contributor either alone and/or in + combination with its Contributor Version (or portions of such + combination), to make, use, sell, offer for sale, have made, and/or + otherwise dispose of: (1) Modifications made by that Contributor (or + portions thereof); and (2) the combination of Modifications made by + that Contributor with its Contributor Version (or portions of such + combination). + + (c) The licenses granted in Sections 2.2(a) and 2.2(b) are effective + on the date Contributor first distributes or otherwise makes the + Modifications available to a third party. + + (d) Notwithstanding Section 2.2(b) above, no patent license is + granted: (1) for any code that Contributor has deleted from the + Contributor Version; (2) for infringements caused by: (i) third + party modifications of Contributor Version, or (ii) the combination + of Modifications made by that Contributor with other software + (except as part of the Contributor Version) or other devices; or (3) + under Patent Claims infringed by Covered Software in the absence of + Modifications made by that Contributor. + +3. Distribution Obligations. + + 3.1. Availability of Source Code. + + Any Covered Software that You distribute or otherwise make available + in Executable form must also be made available in Source Code form + and that Source Code form must be distributed only under the terms + of this License. You must include a copy of this License with every + copy of the Source Code form of the Covered Software You distribute + or otherwise make available. You must inform recipients of any such + Covered Software in Executable form as to how they can obtain such + Covered Software in Source Code form in a reasonable manner on or + through a medium customarily used for software exchange. + + 3.2. Modifications. + + The Modifications that You create or to which You contribute are + governed by the terms of this License. You represent that You + believe Your Modifications are Your original creation(s) and/or You + have sufficient rights to grant the rights conveyed by this License. + + 3.3. Required Notices. + + You must include a notice in each of Your Modifications that + identifies You as the Contributor of the Modification. You may not + remove or alter any copyright, patent or trademark notices contained + within the Covered Software, or any notices of licensing or any + descriptive text giving attribution to any Contributor or the + Initial Developer. + + 3.4. Application of Additional Terms. + + You may not offer or impose any terms on any Covered Software in + Source Code form that alters or restricts the applicable version of + this License or the recipients' rights hereunder. You may choose to + offer, and to charge a fee for, warranty, support, indemnity or + liability obligations to one or more recipients of Covered Software. + However, you may do so only on Your own behalf, and not on behalf of + the Initial Developer or any Contributor. You must make it + absolutely clear that any such warranty, support, indemnity or + liability obligation is offered by You alone, and You hereby agree + to indemnify the Initial Developer and every Contributor for any + liability incurred by the Initial Developer or such Contributor as a + result of warranty, support, indemnity or liability terms You offer. + + 3.5. Distribution of Executable Versions. + + You may distribute the Executable form of the Covered Software under + the terms of this License or under the terms of a license of Your + choice, which may contain terms different from this License, + provided that You are in compliance with the terms of this License + and that the license for the Executable form does not attempt to + limit or alter the recipient's rights in the Source Code form from + the rights set forth in this License. If You distribute the Covered + Software in Executable form under a different license, You must make + it absolutely clear that any terms which differ from this License + are offered by You alone, not by the Initial Developer or + Contributor. You hereby agree to indemnify the Initial Developer and + every Contributor for any liability incurred by the Initial + Developer or such Contributor as a result of any such terms You offer. + + 3.6. Larger Works. + + You may create a Larger Work by combining Covered Software with + other code not governed by the terms of this License and distribute + the Larger Work as a single product. In such a case, You must make + sure the requirements of this License are fulfilled for the Covered + Software. + +4. Versions of the License. + + 4.1. New Versions. + + Oracle is the initial license steward and may publish revised and/or + new versions of this License from time to time. Each version will be + given a distinguishing version number. Except as provided in Section + 4.3, no one other than the license steward has the right to modify + this License. + + 4.2. Effect of New Versions. + + You may always continue to use, distribute or otherwise make the + Covered Software available under the terms of the version of the + License under which You originally received the Covered Software. If + the Initial Developer includes a notice in the Original Software + prohibiting it from being distributed or otherwise made available + under any subsequent version of the License, You must distribute and + make the Covered Software available under the terms of the version + of the License under which You originally received the Covered + Software. Otherwise, You may also choose to use, distribute or + otherwise make the Covered Software available under the terms of any + subsequent version of the License published by the license steward. + + 4.3. Modified Versions. + + When You are an Initial Developer and You want to create a new + license for Your Original Software, You may create and use a + modified version of this License if You: (a) rename the license and + remove any references to the name of the license steward (except to + note that the license differs from this License); and (b) otherwise + make it clear that the license contains terms which differ from this + License. + +5. DISCLAIMER OF WARRANTY. + + COVERED SOFTWARE IS PROVIDED UNDER THIS LICENSE ON AN "AS IS" BASIS, + WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED OR IMPLIED, + INCLUDING, WITHOUT LIMITATION, WARRANTIES THAT THE COVERED SOFTWARE + IS FREE OF DEFECTS, MERCHANTABLE, FIT FOR A PARTICULAR PURPOSE OR + NON-INFRINGING. THE ENTIRE RISK AS TO THE QUALITY AND PERFORMANCE OF + THE COVERED SOFTWARE IS WITH YOU. SHOULD ANY COVERED SOFTWARE PROVE + DEFECTIVE IN ANY RESPECT, YOU (NOT THE INITIAL DEVELOPER OR ANY + OTHER CONTRIBUTOR) ASSUME THE COST OF ANY NECESSARY SERVICING, + REPAIR OR CORRECTION. THIS DISCLAIMER OF WARRANTY CONSTITUTES AN + ESSENTIAL PART OF THIS LICENSE. NO USE OF ANY COVERED SOFTWARE IS + AUTHORIZED HEREUNDER EXCEPT UNDER THIS DISCLAIMER. + +6. TERMINATION. + + 6.1. This License and the rights granted hereunder will terminate + automatically if You fail to comply with terms herein and fail to + cure such breach within 30 days of becoming aware of the breach. + Provisions which, by their nature, must remain in effect beyond the + termination of this License shall survive. + + 6.2. If You assert a patent infringement claim (excluding + declaratory judgment actions) against Initial Developer or a + Contributor (the Initial Developer or Contributor against whom You + assert such claim is referred to as "Participant") alleging that the + Participant Software (meaning the Contributor Version where the + Participant is a Contributor or the Original Software where the + Participant is the Initial Developer) directly or indirectly + infringes any patent, then any and all rights granted directly or + indirectly to You by such Participant, the Initial Developer (if the + Initial Developer is not the Participant) and all Contributors under + Sections 2.1 and/or 2.2 of this License shall, upon 60 days notice + from Participant terminate prospectively and automatically at the + expiration of such 60 day notice period, unless if within such 60 + day period You withdraw Your claim with respect to the Participant + Software against such Participant either unilaterally or pursuant to + a written agreement with Participant. + + 6.3. If You assert a patent infringement claim against Participant + alleging that the Participant Software directly or indirectly + infringes any patent where such claim is resolved (such as by + license or settlement) prior to the initiation of patent + infringement litigation, then the reasonable value of the licenses + granted by such Participant under Sections 2.1 or 2.2 shall be taken + into account in determining the amount or value of any payment or + license. + + 6.4. In the event of termination under Sections 6.1 or 6.2 above, + all end user licenses that have been validly granted by You or any + distributor hereunder prior to termination (excluding licenses + granted to You by any distributor) shall survive termination. + +7. LIMITATION OF LIABILITY. + + UNDER NO CIRCUMSTANCES AND UNDER NO LEGAL THEORY, WHETHER TORT + (INCLUDING NEGLIGENCE), CONTRACT, OR OTHERWISE, SHALL YOU, THE + INITIAL DEVELOPER, ANY OTHER CONTRIBUTOR, OR ANY DISTRIBUTOR OF + COVERED SOFTWARE, OR ANY SUPPLIER OF ANY OF SUCH PARTIES, BE LIABLE + TO ANY PERSON FOR ANY INDIRECT, SPECIAL, INCIDENTAL, OR + CONSEQUENTIAL DAMAGES OF ANY CHARACTER INCLUDING, WITHOUT + LIMITATION, DAMAGES FOR LOSS OF GOODWILL, WORK STOPPAGE, COMPUTER + FAILURE OR MALFUNCTION, OR ANY AND ALL OTHER COMMERCIAL DAMAGES OR + LOSSES, EVEN IF SUCH PARTY SHALL HAVE BEEN INFORMED OF THE + POSSIBILITY OF SUCH DAMAGES. THIS LIMITATION OF LIABILITY SHALL NOT + APPLY TO LIABILITY FOR DEATH OR PERSONAL INJURY RESULTING FROM SUCH + PARTY'S NEGLIGENCE TO THE EXTENT APPLICABLE LAW PROHIBITS SUCH + LIMITATION. SOME JURISDICTIONS DO NOT ALLOW THE EXCLUSION OR + LIMITATION OF INCIDENTAL OR CONSEQUENTIAL DAMAGES, SO THIS EXCLUSION + AND LIMITATION MAY NOT APPLY TO YOU. + +8. U.S. GOVERNMENT END USERS. + + The Covered Software is a "commercial item," as that term is defined + in 48 C.F.R. 2.101 (Oct. 1995), consisting of "commercial computer + software" (as that term is defined at 48 C.F.R. § + 252.227-7014(a)(1)) and "commercial computer software documentation" + as such terms are used in 48 C.F.R. 12.212 (Sept. 1995). Consistent + with 48 C.F.R. 12.212 and 48 C.F.R. 227.7202-1 through 227.7202-4 + (June 1995), all U.S. Government End Users acquire Covered Software + with only those rights set forth herein. This U.S. Government Rights + clause is in lieu of, and supersedes, any other FAR, DFAR, or other + clause or provision that addresses Government rights in computer + software under this License. + +9. MISCELLANEOUS. + + This License represents the complete agreement concerning subject + matter hereof. If any provision of this License is held to be + unenforceable, such provision shall be reformed only to the extent + necessary to make it enforceable. This License shall be governed by + the law of the jurisdiction specified in a notice contained within + the Original Software (except to the extent applicable law, if any, + provides otherwise), excluding such jurisdiction's conflict-of-law + provisions. Any litigation relating to this License shall be subject + to the jurisdiction of the courts located in the jurisdiction and + venue specified in a notice contained within the Original Software, + with the losing party responsible for costs, including, without + limitation, court costs and reasonable attorneys' fees and expenses. + The application of the United Nations Convention on Contracts for + the International Sale of Goods is expressly excluded. Any law or + regulation which provides that the language of a contract shall be + construed against the drafter shall not apply to this License. You + agree that You alone are responsible for compliance with the United + States export administration regulations (and the export control + laws and regulation of any other countries) when You use, distribute + or otherwise make available any Covered Software. + +10. RESPONSIBILITY FOR CLAIMS. + + As between Initial Developer and the Contributors, each party is + responsible for claims and damages arising, directly or indirectly, + out of its utilization of rights under this License and You agree to + work with Initial Developer and Contributors to distribute such + responsibility on an equitable basis. Nothing herein is intended or + shall be deemed to constitute any admission of liability. + +------------------------------------------------------------------------ + +NOTICE PURSUANT TO SECTION 9 OF THE COMMON DEVELOPMENT AND DISTRIBUTION +LICENSE (CDDL) + +The code released under the CDDL shall be governed by the laws of the +State of California (excluding conflict-of-law provisions). Any +litigation relating to this License shall be subject to the jurisdiction +of the Federal Courts of the Northern District of California and the +state courts of the State of California, with venue lying in Santa Clara +County, California. + + + + The GNU General Public License (GPL) Version 2, June 1991 + +Copyright (C) 1989, 1991 Free Software Foundation, Inc. +51 Franklin Street, Fifth Floor +Boston, MA 02110-1335 +USA + +Everyone is permitted to copy and distribute verbatim copies +of this license document, but changing it is not allowed. + +Preamble + +The licenses for most software are designed to take away your freedom to +share and change it. By contrast, the GNU General Public License is +intended to guarantee your freedom to share and change free software--to +make sure the software is free for all its users. This General Public +License applies to most of the Free Software Foundation's software and +to any other program whose authors commit to using it. (Some other Free +Software Foundation software is covered by the GNU Library General +Public License instead.) You can apply it to your programs, too. + +When we speak of free software, we are referring to freedom, not price. +Our General Public Licenses are designed to make sure that you have the +freedom to distribute copies of free software (and charge for this +service if you wish), that you receive source code or can get it if you +want it, that you can change the software or use pieces of it in new +free programs; and that you know you can do these things. + +To protect your rights, we need to make restrictions that forbid anyone +to deny you these rights or to ask you to surrender the rights. These +restrictions translate to certain responsibilities for you if you +distribute copies of the software, or if you modify it. + +For example, if you distribute copies of such a program, whether gratis +or for a fee, you must give the recipients all the rights that you have. +You must make sure that they, too, receive or can get the source code. +And you must show them these terms so they know their rights. + +We protect your rights with two steps: (1) copyright the software, and +(2) offer you this license which gives you legal permission to copy, +distribute and/or modify the software. + +Also, for each author's protection and ours, we want to make certain +that everyone understands that there is no warranty for this free +software. If the software is modified by someone else and passed on, we +want its recipients to know that what they have is not the original, so +that any problems introduced by others will not reflect on the original +authors' reputations. + +Finally, any free program is threatened constantly by software patents. +We wish to avoid the danger that redistributors of a free program will +individually obtain patent licenses, in effect making the program +proprietary. To prevent this, we have made it clear that any patent must +be licensed for everyone's free use or not licensed at all. + +The precise terms and conditions for copying, distribution and +modification follow. + +TERMS AND CONDITIONS FOR COPYING, DISTRIBUTION AND MODIFICATION + +0. This License applies to any program or other work which contains a +notice placed by the copyright holder saying it may be distributed under +the terms of this General Public License. The "Program", below, refers +to any such program or work, and a "work based on the Program" means +either the Program or any derivative work under copyright law: that is +to say, a work containing the Program or a portion of it, either +verbatim or with modifications and/or translated into another language. +(Hereinafter, translation is included without limitation in the term +"modification".) Each licensee is addressed as "you". + +Activities other than copying, distribution and modification are not +covered by this License; they are outside its scope. The act of running +the Program is not restricted, and the output from the Program is +covered only if its contents constitute a work based on the Program +(independent of having been made by running the Program). Whether that +is true depends on what the Program does. + +1. You may copy and distribute verbatim copies of the Program's source +code as you receive it, in any medium, provided that you conspicuously +and appropriately publish on each copy an appropriate copyright notice +and disclaimer of warranty; keep intact all the notices that refer to +this License and to the absence of any warranty; and give any other +recipients of the Program a copy of this License along with the Program. + +You may charge a fee for the physical act of transferring a copy, and +you may at your option offer warranty protection in exchange for a fee. + +2. You may modify your copy or copies of the Program or any portion of +it, thus forming a work based on the Program, and copy and distribute +such modifications or work under the terms of Section 1 above, provided +that you also meet all of these conditions: + + a) You must cause the modified files to carry prominent notices + stating that you changed the files and the date of any change. + + b) You must cause any work that you distribute or publish, that in + whole or in part contains or is derived from the Program or any part + thereof, to be licensed as a whole at no charge to all third parties + under the terms of this License. + + c) If the modified program normally reads commands interactively + when run, you must cause it, when started running for such + interactive use in the most ordinary way, to print or display an + announcement including an appropriate copyright notice and a notice + that there is no warranty (or else, saying that you provide a + warranty) and that users may redistribute the program under these + conditions, and telling the user how to view a copy of this License. + (Exception: if the Program itself is interactive but does not + normally print such an announcement, your work based on the Program + is not required to print an announcement.) + +These requirements apply to the modified work as a whole. If +identifiable sections of that work are not derived from the Program, and +can be reasonably considered independent and separate works in +themselves, then this License, and its terms, do not apply to those +sections when you distribute them as separate works. But when you +distribute the same sections as part of a whole which is a work based on +the Program, the distribution of the whole must be on the terms of this +License, whose permissions for other licensees extend to the entire +whole, and thus to each and every part regardless of who wrote it. + +Thus, it is not the intent of this section to claim rights or contest +your rights to work written entirely by you; rather, the intent is to +exercise the right to control the distribution of derivative or +collective works based on the Program. + +In addition, mere aggregation of another work not based on the Program +with the Program (or with a work based on the Program) on a volume of a +storage or distribution medium does not bring the other work under the +scope of this License. + +3. You may copy and distribute the Program (or a work based on it, +under Section 2) in object code or executable form under the terms of +Sections 1 and 2 above provided that you also do one of the following: + + a) Accompany it with the complete corresponding machine-readable + source code, which must be distributed under the terms of Sections 1 + and 2 above on a medium customarily used for software interchange; or, + + b) Accompany it with a written offer, valid for at least three + years, to give any third party, for a charge no more than your cost + of physically performing source distribution, a complete + machine-readable copy of the corresponding source code, to be + distributed under the terms of Sections 1 and 2 above on a medium + customarily used for software interchange; or, + + c) Accompany it with the information you received as to the offer to + distribute corresponding source code. (This alternative is allowed + only for noncommercial distribution and only if you received the + program in object code or executable form with such an offer, in + accord with Subsection b above.) + +The source code for a work means the preferred form of the work for +making modifications to it. For an executable work, complete source code +means all the source code for all modules it contains, plus any +associated interface definition files, plus the scripts used to control +compilation and installation of the executable. However, as a special +exception, the source code distributed need not include anything that is +normally distributed (in either source or binary form) with the major +components (compiler, kernel, and so on) of the operating system on +which the executable runs, unless that component itself accompanies the +executable. + +If distribution of executable or object code is made by offering access +to copy from a designated place, then offering equivalent access to copy +the source code from the same place counts as distribution of the source +code, even though third parties are not compelled to copy the source +along with the object code. + +4. You may not copy, modify, sublicense, or distribute the Program +except as expressly provided under this License. Any attempt otherwise +to copy, modify, sublicense or distribute the Program is void, and will +automatically terminate your rights under this License. However, parties +who have received copies, or rights, from you under this License will +not have their licenses terminated so long as such parties remain in +full compliance. + +5. You are not required to accept this License, since you have not +signed it. However, nothing else grants you permission to modify or +distribute the Program or its derivative works. These actions are +prohibited by law if you do not accept this License. Therefore, by +modifying or distributing the Program (or any work based on the +Program), you indicate your acceptance of this License to do so, and all +its terms and conditions for copying, distributing or modifying the +Program or works based on it. + +6. Each time you redistribute the Program (or any work based on the +Program), the recipient automatically receives a license from the +original licensor to copy, distribute or modify the Program subject to +these terms and conditions. You may not impose any further restrictions +on the recipients' exercise of the rights granted herein. You are not +responsible for enforcing compliance by third parties to this License. + +7. If, as a consequence of a court judgment or allegation of patent +infringement or for any other reason (not limited to patent issues), +conditions are imposed on you (whether by court order, agreement or +otherwise) that contradict the conditions of this License, they do not +excuse you from the conditions of this License. If you cannot distribute +so as to satisfy simultaneously your obligations under this License and +any other pertinent obligations, then as a consequence you may not +distribute the Program at all. For example, if a patent license would +not permit royalty-free redistribution of the Program by all those who +receive copies directly or indirectly through you, then the only way you +could satisfy both it and this License would be to refrain entirely from +distribution of the Program. + +If any portion of this section is held invalid or unenforceable under +any particular circumstance, the balance of the section is intended to +apply and the section as a whole is intended to apply in other +circumstances. + +It is not the purpose of this section to induce you to infringe any +patents or other property right claims or to contest validity of any +such claims; this section has the sole purpose of protecting the +integrity of the free software distribution system, which is implemented +by public license practices. Many people have made generous +contributions to the wide range of software distributed through that +system in reliance on consistent application of that system; it is up to +the author/donor to decide if he or she is willing to distribute +software through any other system and a licensee cannot impose that choice. + +This section is intended to make thoroughly clear what is believed to be +a consequence of the rest of this License. + +8. If the distribution and/or use of the Program is restricted in +certain countries either by patents or by copyrighted interfaces, the +original copyright holder who places the Program under this License may +add an explicit geographical distribution limitation excluding those +countries, so that distribution is permitted only in or among countries +not thus excluded. In such case, this License incorporates the +limitation as if written in the body of this License. + +9. The Free Software Foundation may publish revised and/or new +versions of the General Public License from time to time. Such new +versions will be similar in spirit to the present version, but may +differ in detail to address new problems or concerns. + +Each version is given a distinguishing version number. If the Program +specifies a version number of this License which applies to it and "any +later version", you have the option of following the terms and +conditions either of that version or of any later version published by +the Free Software Foundation. If the Program does not specify a version +number of this License, you may choose any version ever published by the +Free Software Foundation. + +10. If you wish to incorporate parts of the Program into other free +programs whose distribution conditions are different, write to the +author to ask for permission. For software which is copyrighted by the +Free Software Foundation, write to the Free Software Foundation; we +sometimes make exceptions for this. Our decision will be guided by the +two goals of preserving the free status of all derivatives of our free +software and of promoting the sharing and reuse of software generally. + +NO WARRANTY + +11. BECAUSE THE PROGRAM IS LICENSED FREE OF CHARGE, THERE IS NO +WARRANTY FOR THE PROGRAM, TO THE EXTENT PERMITTED BY APPLICABLE LAW. +EXCEPT WHEN OTHERWISE STATED IN WRITING THE COPYRIGHT HOLDERS AND/OR +OTHER PARTIES PROVIDE THE PROGRAM "AS IS" WITHOUT WARRANTY OF ANY KIND, +EITHER EXPRESSED OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED +WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE. THE +ENTIRE RISK AS TO THE QUALITY AND PERFORMANCE OF THE PROGRAM IS WITH +YOU. SHOULD THE PROGRAM PROVE DEFECTIVE, YOU ASSUME THE COST OF ALL +NECESSARY SERVICING, REPAIR OR CORRECTION. + +12. IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN +WRITING WILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MAY MODIFY +AND/OR REDISTRIBUTE THE PROGRAM AS PERMITTED ABOVE, BE LIABLE TO YOU FOR +DAMAGES, INCLUDING ANY GENERAL, SPECIAL, INCIDENTAL OR CONSEQUENTIAL +DAMAGES ARISING OUT OF THE USE OR INABILITY TO USE THE PROGRAM +(INCLUDING BUT NOT LIMITED TO LOSS OF DATA OR DATA BEING RENDERED +INACCURATE OR LOSSES SUSTAINED BY YOU OR THIRD PARTIES OR A FAILURE OF +THE PROGRAM TO OPERATE WITH ANY OTHER PROGRAMS), EVEN IF SUCH HOLDER OR +OTHER PARTY HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH DAMAGES. + +END OF TERMS AND CONDITIONS + +How to Apply These Terms to Your New Programs + +If you develop a new program, and you want it to be of the greatest +possible use to the public, the best way to achieve this is to make it +free software which everyone can redistribute and change under these terms. + +To do so, attach the following notices to the program. It is safest to +attach them to the start of each source file to most effectively convey +the exclusion of warranty; and each file should have at least the +"copyright" line and a pointer to where the full notice is found. + + One line to give the program's name and a brief idea of what it does. + Copyright (C) + + This program is free software; you can redistribute it and/or modify + it under the terms of the GNU General Public License as published by + the Free Software Foundation; either version 2 of the License, or + (at your option) any later version. + + This program is distributed in the hope that it will be useful, but + WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + General Public License for more details. + + You should have received a copy of the GNU General Public License + along with this program; if not, write to the Free Software + Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA + +Also add information on how to contact you by electronic and paper mail. + +If the program is interactive, make it output a short notice like this +when it starts in an interactive mode: + + Gnomovision version 69, Copyright (C) year name of author + Gnomovision comes with ABSOLUTELY NO WARRANTY; for details type + `show w'. This is free software, and you are welcome to redistribute + it under certain conditions; type `show c' for details. + +The hypothetical commands `show w' and `show c' should show the +appropriate parts of the General Public License. Of course, the commands +you use may be called something other than `show w' and `show c'; they +could even be mouse-clicks or menu items--whatever suits your program. + +You should also get your employer (if you work as a programmer) or your +school, if any, to sign a "copyright disclaimer" for the program, if +necessary. Here is a sample; alter the names: + + Yoyodyne, Inc., hereby disclaims all copyright interest in the + program `Gnomovision' (which makes passes at compilers) written by + James Hacker. + + signature of Ty Coon, 1 April 1989 + Ty Coon, President of Vice + +This General Public License does not permit incorporating your program +into proprietary programs. If your program is a subroutine library, you +may consider it more useful to permit linking proprietary applications +with the library. If this is what you want to do, use the GNU Library +General Public License instead of this License. + +# + +Certain source files distributed by Oracle America, Inc. and/or its +affiliates are subject to the following clarification and special +exception to the GPLv2, based on the GNU Project exception for its +Classpath libraries, known as the GNU Classpath Exception, but only +where Oracle has expressly included in the particular source file's +header the words "Oracle designates this particular file as subject to +the "Classpath" exception as provided by Oracle in the LICENSE file +that accompanied this code." + +You should also note that Oracle includes multiple, independent +programs in this software package. Some of those programs are provided +under licenses deemed incompatible with the GPLv2 by the Free Software +Foundation and others. For example, the package includes programs +licensed under the Apache License, Version 2.0. Such programs are +licensed to you under their original licenses. + +Oracle facilitates your further distribution of this package by adding +the Classpath Exception to the necessary parts of its GPLv2 code, which +permits you to use that code in combination with other independent +modules not licensed under the GPLv2. However, note that this would +not permit you to commingle code under an incompatible license with +Oracle's GPLv2 licensed code by, for example, cutting and pasting such +code into a file also containing Oracle's GPLv2 licensed code and then +distributing the result. Additionally, if you were to remove the +Classpath Exception from any of the files to which it applies and +distribute the result, you would likely be required to license some or +all of the other code in that distribution under the GPLv2 as well, and +since the GPLv2 is incompatible with the license terms of some items +included in the distribution by Oracle, removing the Classpath +Exception could therefore effectively compromise your ability to +further distribute the package. + +Proceed with caution and we recommend that you obtain the advice of a +lawyer skilled in open source matters before removing the Classpath +Exception or making modifications to this package which may +subsequently be redistributed and/or involve the use of third party +software. + +CLASSPATH EXCEPTION +Linking this library statically or dynamically with other modules is +making a combined work based on this library. Thus, the terms and +conditions of the GNU General Public License version 2 cover the whole +combination. + +As a special exception, the copyright holders of this library give you +permission to link this library with independent modules to produce an +executable, regardless of the license terms of these independent +modules, and to copy and distribute the resulting executable under +terms of your choice, provided that you also meet, for each linked +independent module, the terms and conditions of the license of that +module. An independent module is a module which is not derived from or +based on this library. If you modify this library, you may extend this +exception to your version of the library, but you are not obligated to +do so. If you do not wish to do so, delete this exception statement +from your version. diff --git a/.m2/wrapper/dists/apache-maven-3.9.11/a2d47e15/lib/javax.inject-1.jar b/.m2/wrapper/dists/apache-maven-3.9.11/a2d47e15/lib/javax.inject-1.jar new file mode 100644 index 0000000..b2a9d0b Binary files /dev/null and b/.m2/wrapper/dists/apache-maven-3.9.11/a2d47e15/lib/javax.inject-1.jar differ diff --git a/.m2/wrapper/dists/apache-maven-3.9.11/a2d47e15/lib/javax.inject.license b/.m2/wrapper/dists/apache-maven-3.9.11/a2d47e15/lib/javax.inject.license new file mode 100644 index 0000000..d645695 --- /dev/null +++ b/.m2/wrapper/dists/apache-maven-3.9.11/a2d47e15/lib/javax.inject.license @@ -0,0 +1,202 @@ + + Apache License + Version 2.0, January 2004 + http://www.apache.org/licenses/ + + TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION + + 1. Definitions. + + "License" shall mean the terms and conditions for use, reproduction, + and distribution as defined by Sections 1 through 9 of this document. + + "Licensor" shall mean the copyright owner or entity authorized by + the copyright owner that is granting the License. + + "Legal Entity" shall mean the union of the acting entity and all + other entities that control, are controlled by, or are under common + control with that entity. For the purposes of this definition, + "control" means (i) the power, direct or indirect, to cause the + direction or management of such entity, whether by contract or + otherwise, or (ii) ownership of fifty percent (50%) or more of the + outstanding shares, or (iii) beneficial ownership of such entity. + + "You" (or "Your") shall mean an individual or Legal Entity + exercising permissions granted by this License. + + "Source" form shall mean the preferred form for making modifications, + including but not limited to software source code, documentation + source, and configuration files. + + "Object" form shall mean any form resulting from mechanical + transformation or translation of a Source form, including but + not limited to compiled object code, generated documentation, + and conversions to other media types. + + "Work" shall mean the work of authorship, whether in Source or + Object form, made available under the License, as indicated by a + copyright notice that is included in or attached to the work + (an example is provided in the Appendix below). + + "Derivative Works" shall mean any work, whether in Source or Object + form, that is based on (or derived from) the Work and for which the + editorial revisions, annotations, elaborations, or other modifications + represent, as a whole, an original work of authorship. For the purposes + of this License, Derivative Works shall not include works that remain + separable from, or merely link (or bind by name) to the interfaces of, + the Work and Derivative Works thereof. + + "Contribution" shall mean any work of authorship, including + the original version of the Work and any modifications or additions + to that Work or Derivative Works thereof, that is intentionally + submitted to Licensor for inclusion in the Work by the copyright owner + or by an individual or Legal Entity authorized to submit on behalf of + the copyright owner. For the purposes of this definition, "submitted" + means any form of electronic, verbal, or written communication sent + to the Licensor or its representatives, including but not limited to + communication on electronic mailing lists, source code control systems, + and issue tracking systems that are managed by, or on behalf of, the + Licensor for the purpose of discussing and improving the Work, but + excluding communication that is conspicuously marked or otherwise + designated in writing by the copyright owner as "Not a Contribution." + + "Contributor" shall mean Licensor and any individual or Legal Entity + on behalf of whom a Contribution has been received by Licensor and + subsequently incorporated within the Work. + + 2. Grant of Copyright License. Subject to the terms and conditions of + this License, each Contributor hereby grants to You a perpetual, + worldwide, non-exclusive, no-charge, royalty-free, irrevocable + copyright license to reproduce, prepare Derivative Works of, + publicly display, publicly perform, sublicense, and distribute the + Work and such Derivative Works in Source or Object form. + + 3. Grant of Patent License. Subject to the terms and conditions of + this License, each Contributor hereby grants to You a perpetual, + worldwide, non-exclusive, no-charge, royalty-free, irrevocable + (except as stated in this section) patent license to make, have made, + use, offer to sell, sell, import, and otherwise transfer the Work, + where such license applies only to those patent claims licensable + by such Contributor that are necessarily infringed by their + Contribution(s) alone or by combination of their Contribution(s) + with the Work to which such Contribution(s) was submitted. If You + institute patent litigation against any entity (including a + cross-claim or counterclaim in a lawsuit) alleging that the Work + or a Contribution incorporated within the Work constitutes direct + or contributory patent infringement, then any patent licenses + granted to You under this License for that Work shall terminate + as of the date such litigation is filed. + + 4. Redistribution. You may reproduce and distribute copies of the + Work or Derivative Works thereof in any medium, with or without + modifications, and in Source or Object form, provided that You + meet the following conditions: + + (a) You must give any other recipients of the Work or + Derivative Works a copy of this License; and + + (b) You must cause any modified files to carry prominent notices + stating that You changed the files; and + + (c) You must retain, in the Source form of any Derivative Works + that You distribute, all copyright, patent, trademark, and + attribution notices from the Source form of the Work, + excluding those notices that do not pertain to any part of + the Derivative Works; and + + (d) If the Work includes a "NOTICE" text file as part of its + distribution, then any Derivative Works that You distribute must + include a readable copy of the attribution notices contained + within such NOTICE file, excluding those notices that do not + pertain to any part of the Derivative Works, in at least one + of the following places: within a NOTICE text file distributed + as part of the Derivative Works; within the Source form or + documentation, if provided along with the Derivative Works; or, + within a display generated by the Derivative Works, if and + wherever such third-party notices normally appear. The contents + of the NOTICE file are for informational purposes only and + do not modify the License. You may add Your own attribution + notices within Derivative Works that You distribute, alongside + or as an addendum to the NOTICE text from the Work, provided + that such additional attribution notices cannot be construed + as modifying the License. + + You may add Your own copyright statement to Your modifications and + may provide additional or different license terms and conditions + for use, reproduction, or distribution of Your modifications, or + for any such Derivative Works as a whole, provided Your use, + reproduction, and distribution of the Work otherwise complies with + the conditions stated in this License. + + 5. Submission of Contributions. Unless You explicitly state otherwise, + any Contribution intentionally submitted for inclusion in the Work + by You to the Licensor shall be under the terms and conditions of + this License, without any additional terms or conditions. + Notwithstanding the above, nothing herein shall supersede or modify + the terms of any separate license agreement you may have executed + with Licensor regarding such Contributions. + + 6. Trademarks. This License does not grant permission to use the trade + names, trademarks, service marks, or product names of the Licensor, + except as required for reasonable and customary use in describing the + origin of the Work and reproducing the content of the NOTICE file. + + 7. Disclaimer of Warranty. Unless required by applicable law or + agreed to in writing, Licensor provides the Work (and each + Contributor provides its Contributions) on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or + implied, including, without limitation, any warranties or conditions + of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A + PARTICULAR PURPOSE. You are solely responsible for determining the + appropriateness of using or redistributing the Work and assume any + risks associated with Your exercise of permissions under this License. + + 8. Limitation of Liability. In no event and under no legal theory, + whether in tort (including negligence), contract, or otherwise, + unless required by applicable law (such as deliberate and grossly + negligent acts) or agreed to in writing, shall any Contributor be + liable to You for damages, including any direct, indirect, special, + incidental, or consequential damages of any character arising as a + result of this License or out of the use or inability to use the + Work (including but not limited to damages for loss of goodwill, + work stoppage, computer failure or malfunction, or any and all + other commercial damages or losses), even if such Contributor + has been advised of the possibility of such damages. + + 9. Accepting Warranty or Additional Liability. While redistributing + the Work or Derivative Works thereof, You may choose to offer, + and charge a fee for, acceptance of support, warranty, indemnity, + or other liability obligations and/or rights consistent with this + License. However, in accepting such obligations, You may act only + on Your own behalf and on Your sole responsibility, not on behalf + of any other Contributor, and only if You agree to indemnify, + defend, and hold each Contributor harmless for any liability + incurred by, or claims asserted against, such Contributor by reason + of your accepting any such warranty or additional liability. + + END OF TERMS AND CONDITIONS + + APPENDIX: How to apply the Apache License to your work. + + To apply the Apache License to your work, attach the following + boilerplate notice, with the fields enclosed by brackets "[]" + replaced with your own identifying information. (Don't include + the brackets!) The text should be enclosed in the appropriate + comment syntax for the file format. We also recommend that a + file or class name and description of purpose be included on the + same "printed page" as the copyright notice for easier + identification within third-party archives. + + Copyright [yyyy] [name of copyright owner] + + Licensed under the Apache License, Version 2.0 (the "License"); + you may not use this file except in compliance with the License. + You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + + Unless required by applicable law or agreed to in writing, software + distributed under the License is distributed on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + See the License for the specific language governing permissions and + limitations under the License. diff --git a/.m2/wrapper/dists/apache-maven-3.9.11/a2d47e15/lib/jcl-over-slf4j-1.7.36.jar b/.m2/wrapper/dists/apache-maven-3.9.11/a2d47e15/lib/jcl-over-slf4j-1.7.36.jar new file mode 100644 index 0000000..3ecd7d5 Binary files /dev/null and b/.m2/wrapper/dists/apache-maven-3.9.11/a2d47e15/lib/jcl-over-slf4j-1.7.36.jar differ diff --git a/.m2/wrapper/dists/apache-maven-3.9.11/a2d47e15/lib/jcl-over-slf4j.license b/.m2/wrapper/dists/apache-maven-3.9.11/a2d47e15/lib/jcl-over-slf4j.license new file mode 100644 index 0000000..d645695 --- /dev/null +++ b/.m2/wrapper/dists/apache-maven-3.9.11/a2d47e15/lib/jcl-over-slf4j.license @@ -0,0 +1,202 @@ + + Apache License + Version 2.0, January 2004 + http://www.apache.org/licenses/ + + TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION + + 1. Definitions. + + "License" shall mean the terms and conditions for use, reproduction, + and distribution as defined by Sections 1 through 9 of this document. + + "Licensor" shall mean the copyright owner or entity authorized by + the copyright owner that is granting the License. + + "Legal Entity" shall mean the union of the acting entity and all + other entities that control, are controlled by, or are under common + control with that entity. For the purposes of this definition, + "control" means (i) the power, direct or indirect, to cause the + direction or management of such entity, whether by contract or + otherwise, or (ii) ownership of fifty percent (50%) or more of the + outstanding shares, or (iii) beneficial ownership of such entity. + + "You" (or "Your") shall mean an individual or Legal Entity + exercising permissions granted by this License. + + "Source" form shall mean the preferred form for making modifications, + including but not limited to software source code, documentation + source, and configuration files. + + "Object" form shall mean any form resulting from mechanical + transformation or translation of a Source form, including but + not limited to compiled object code, generated documentation, + and conversions to other media types. + + "Work" shall mean the work of authorship, whether in Source or + Object form, made available under the License, as indicated by a + copyright notice that is included in or attached to the work + (an example is provided in the Appendix below). + + "Derivative Works" shall mean any work, whether in Source or Object + form, that is based on (or derived from) the Work and for which the + editorial revisions, annotations, elaborations, or other modifications + represent, as a whole, an original work of authorship. For the purposes + of this License, Derivative Works shall not include works that remain + separable from, or merely link (or bind by name) to the interfaces of, + the Work and Derivative Works thereof. + + "Contribution" shall mean any work of authorship, including + the original version of the Work and any modifications or additions + to that Work or Derivative Works thereof, that is intentionally + submitted to Licensor for inclusion in the Work by the copyright owner + or by an individual or Legal Entity authorized to submit on behalf of + the copyright owner. For the purposes of this definition, "submitted" + means any form of electronic, verbal, or written communication sent + to the Licensor or its representatives, including but not limited to + communication on electronic mailing lists, source code control systems, + and issue tracking systems that are managed by, or on behalf of, the + Licensor for the purpose of discussing and improving the Work, but + excluding communication that is conspicuously marked or otherwise + designated in writing by the copyright owner as "Not a Contribution." + + "Contributor" shall mean Licensor and any individual or Legal Entity + on behalf of whom a Contribution has been received by Licensor and + subsequently incorporated within the Work. + + 2. Grant of Copyright License. Subject to the terms and conditions of + this License, each Contributor hereby grants to You a perpetual, + worldwide, non-exclusive, no-charge, royalty-free, irrevocable + copyright license to reproduce, prepare Derivative Works of, + publicly display, publicly perform, sublicense, and distribute the + Work and such Derivative Works in Source or Object form. + + 3. Grant of Patent License. Subject to the terms and conditions of + this License, each Contributor hereby grants to You a perpetual, + worldwide, non-exclusive, no-charge, royalty-free, irrevocable + (except as stated in this section) patent license to make, have made, + use, offer to sell, sell, import, and otherwise transfer the Work, + where such license applies only to those patent claims licensable + by such Contributor that are necessarily infringed by their + Contribution(s) alone or by combination of their Contribution(s) + with the Work to which such Contribution(s) was submitted. If You + institute patent litigation against any entity (including a + cross-claim or counterclaim in a lawsuit) alleging that the Work + or a Contribution incorporated within the Work constitutes direct + or contributory patent infringement, then any patent licenses + granted to You under this License for that Work shall terminate + as of the date such litigation is filed. + + 4. Redistribution. You may reproduce and distribute copies of the + Work or Derivative Works thereof in any medium, with or without + modifications, and in Source or Object form, provided that You + meet the following conditions: + + (a) You must give any other recipients of the Work or + Derivative Works a copy of this License; and + + (b) You must cause any modified files to carry prominent notices + stating that You changed the files; and + + (c) You must retain, in the Source form of any Derivative Works + that You distribute, all copyright, patent, trademark, and + attribution notices from the Source form of the Work, + excluding those notices that do not pertain to any part of + the Derivative Works; and + + (d) If the Work includes a "NOTICE" text file as part of its + distribution, then any Derivative Works that You distribute must + include a readable copy of the attribution notices contained + within such NOTICE file, excluding those notices that do not + pertain to any part of the Derivative Works, in at least one + of the following places: within a NOTICE text file distributed + as part of the Derivative Works; within the Source form or + documentation, if provided along with the Derivative Works; or, + within a display generated by the Derivative Works, if and + wherever such third-party notices normally appear. The contents + of the NOTICE file are for informational purposes only and + do not modify the License. You may add Your own attribution + notices within Derivative Works that You distribute, alongside + or as an addendum to the NOTICE text from the Work, provided + that such additional attribution notices cannot be construed + as modifying the License. + + You may add Your own copyright statement to Your modifications and + may provide additional or different license terms and conditions + for use, reproduction, or distribution of Your modifications, or + for any such Derivative Works as a whole, provided Your use, + reproduction, and distribution of the Work otherwise complies with + the conditions stated in this License. + + 5. Submission of Contributions. Unless You explicitly state otherwise, + any Contribution intentionally submitted for inclusion in the Work + by You to the Licensor shall be under the terms and conditions of + this License, without any additional terms or conditions. + Notwithstanding the above, nothing herein shall supersede or modify + the terms of any separate license agreement you may have executed + with Licensor regarding such Contributions. + + 6. Trademarks. This License does not grant permission to use the trade + names, trademarks, service marks, or product names of the Licensor, + except as required for reasonable and customary use in describing the + origin of the Work and reproducing the content of the NOTICE file. + + 7. Disclaimer of Warranty. Unless required by applicable law or + agreed to in writing, Licensor provides the Work (and each + Contributor provides its Contributions) on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or + implied, including, without limitation, any warranties or conditions + of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A + PARTICULAR PURPOSE. You are solely responsible for determining the + appropriateness of using or redistributing the Work and assume any + risks associated with Your exercise of permissions under this License. + + 8. Limitation of Liability. In no event and under no legal theory, + whether in tort (including negligence), contract, or otherwise, + unless required by applicable law (such as deliberate and grossly + negligent acts) or agreed to in writing, shall any Contributor be + liable to You for damages, including any direct, indirect, special, + incidental, or consequential damages of any character arising as a + result of this License or out of the use or inability to use the + Work (including but not limited to damages for loss of goodwill, + work stoppage, computer failure or malfunction, or any and all + other commercial damages or losses), even if such Contributor + has been advised of the possibility of such damages. + + 9. Accepting Warranty or Additional Liability. While redistributing + the Work or Derivative Works thereof, You may choose to offer, + and charge a fee for, acceptance of support, warranty, indemnity, + or other liability obligations and/or rights consistent with this + License. However, in accepting such obligations, You may act only + on Your own behalf and on Your sole responsibility, not on behalf + of any other Contributor, and only if You agree to indemnify, + defend, and hold each Contributor harmless for any liability + incurred by, or claims asserted against, such Contributor by reason + of your accepting any such warranty or additional liability. + + END OF TERMS AND CONDITIONS + + APPENDIX: How to apply the Apache License to your work. + + To apply the Apache License to your work, attach the following + boilerplate notice, with the fields enclosed by brackets "[]" + replaced with your own identifying information. (Don't include + the brackets!) The text should be enclosed in the appropriate + comment syntax for the file format. We also recommend that a + file or class name and description of purpose be included on the + same "printed page" as the copyright notice for easier + identification within third-party archives. + + Copyright [yyyy] [name of copyright owner] + + Licensed under the Apache License, Version 2.0 (the "License"); + you may not use this file except in compliance with the License. + You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + + Unless required by applicable law or agreed to in writing, software + distributed under the License is distributed on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + See the License for the specific language governing permissions and + limitations under the License. diff --git a/.m2/wrapper/dists/apache-maven-3.9.11/a2d47e15/lib/jspecify-1.0.0.jar b/.m2/wrapper/dists/apache-maven-3.9.11/a2d47e15/lib/jspecify-1.0.0.jar new file mode 100644 index 0000000..466b875 Binary files /dev/null and b/.m2/wrapper/dists/apache-maven-3.9.11/a2d47e15/lib/jspecify-1.0.0.jar differ diff --git a/.m2/wrapper/dists/apache-maven-3.9.11/a2d47e15/lib/jspecify.license b/.m2/wrapper/dists/apache-maven-3.9.11/a2d47e15/lib/jspecify.license new file mode 100644 index 0000000..d645695 --- /dev/null +++ b/.m2/wrapper/dists/apache-maven-3.9.11/a2d47e15/lib/jspecify.license @@ -0,0 +1,202 @@ + + Apache License + Version 2.0, January 2004 + http://www.apache.org/licenses/ + + TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION + + 1. Definitions. + + "License" shall mean the terms and conditions for use, reproduction, + and distribution as defined by Sections 1 through 9 of this document. + + "Licensor" shall mean the copyright owner or entity authorized by + the copyright owner that is granting the License. + + "Legal Entity" shall mean the union of the acting entity and all + other entities that control, are controlled by, or are under common + control with that entity. For the purposes of this definition, + "control" means (i) the power, direct or indirect, to cause the + direction or management of such entity, whether by contract or + otherwise, or (ii) ownership of fifty percent (50%) or more of the + outstanding shares, or (iii) beneficial ownership of such entity. + + "You" (or "Your") shall mean an individual or Legal Entity + exercising permissions granted by this License. + + "Source" form shall mean the preferred form for making modifications, + including but not limited to software source code, documentation + source, and configuration files. + + "Object" form shall mean any form resulting from mechanical + transformation or translation of a Source form, including but + not limited to compiled object code, generated documentation, + and conversions to other media types. + + "Work" shall mean the work of authorship, whether in Source or + Object form, made available under the License, as indicated by a + copyright notice that is included in or attached to the work + (an example is provided in the Appendix below). + + "Derivative Works" shall mean any work, whether in Source or Object + form, that is based on (or derived from) the Work and for which the + editorial revisions, annotations, elaborations, or other modifications + represent, as a whole, an original work of authorship. For the purposes + of this License, Derivative Works shall not include works that remain + separable from, or merely link (or bind by name) to the interfaces of, + the Work and Derivative Works thereof. + + "Contribution" shall mean any work of authorship, including + the original version of the Work and any modifications or additions + to that Work or Derivative Works thereof, that is intentionally + submitted to Licensor for inclusion in the Work by the copyright owner + or by an individual or Legal Entity authorized to submit on behalf of + the copyright owner. For the purposes of this definition, "submitted" + means any form of electronic, verbal, or written communication sent + to the Licensor or its representatives, including but not limited to + communication on electronic mailing lists, source code control systems, + and issue tracking systems that are managed by, or on behalf of, the + Licensor for the purpose of discussing and improving the Work, but + excluding communication that is conspicuously marked or otherwise + designated in writing by the copyright owner as "Not a Contribution." + + "Contributor" shall mean Licensor and any individual or Legal Entity + on behalf of whom a Contribution has been received by Licensor and + subsequently incorporated within the Work. + + 2. Grant of Copyright License. Subject to the terms and conditions of + this License, each Contributor hereby grants to You a perpetual, + worldwide, non-exclusive, no-charge, royalty-free, irrevocable + copyright license to reproduce, prepare Derivative Works of, + publicly display, publicly perform, sublicense, and distribute the + Work and such Derivative Works in Source or Object form. + + 3. Grant of Patent License. Subject to the terms and conditions of + this License, each Contributor hereby grants to You a perpetual, + worldwide, non-exclusive, no-charge, royalty-free, irrevocable + (except as stated in this section) patent license to make, have made, + use, offer to sell, sell, import, and otherwise transfer the Work, + where such license applies only to those patent claims licensable + by such Contributor that are necessarily infringed by their + Contribution(s) alone or by combination of their Contribution(s) + with the Work to which such Contribution(s) was submitted. If You + institute patent litigation against any entity (including a + cross-claim or counterclaim in a lawsuit) alleging that the Work + or a Contribution incorporated within the Work constitutes direct + or contributory patent infringement, then any patent licenses + granted to You under this License for that Work shall terminate + as of the date such litigation is filed. + + 4. Redistribution. You may reproduce and distribute copies of the + Work or Derivative Works thereof in any medium, with or without + modifications, and in Source or Object form, provided that You + meet the following conditions: + + (a) You must give any other recipients of the Work or + Derivative Works a copy of this License; and + + (b) You must cause any modified files to carry prominent notices + stating that You changed the files; and + + (c) You must retain, in the Source form of any Derivative Works + that You distribute, all copyright, patent, trademark, and + attribution notices from the Source form of the Work, + excluding those notices that do not pertain to any part of + the Derivative Works; and + + (d) If the Work includes a "NOTICE" text file as part of its + distribution, then any Derivative Works that You distribute must + include a readable copy of the attribution notices contained + within such NOTICE file, excluding those notices that do not + pertain to any part of the Derivative Works, in at least one + of the following places: within a NOTICE text file distributed + as part of the Derivative Works; within the Source form or + documentation, if provided along with the Derivative Works; or, + within a display generated by the Derivative Works, if and + wherever such third-party notices normally appear. The contents + of the NOTICE file are for informational purposes only and + do not modify the License. You may add Your own attribution + notices within Derivative Works that You distribute, alongside + or as an addendum to the NOTICE text from the Work, provided + that such additional attribution notices cannot be construed + as modifying the License. + + You may add Your own copyright statement to Your modifications and + may provide additional or different license terms and conditions + for use, reproduction, or distribution of Your modifications, or + for any such Derivative Works as a whole, provided Your use, + reproduction, and distribution of the Work otherwise complies with + the conditions stated in this License. + + 5. Submission of Contributions. Unless You explicitly state otherwise, + any Contribution intentionally submitted for inclusion in the Work + by You to the Licensor shall be under the terms and conditions of + this License, without any additional terms or conditions. + Notwithstanding the above, nothing herein shall supersede or modify + the terms of any separate license agreement you may have executed + with Licensor regarding such Contributions. + + 6. Trademarks. This License does not grant permission to use the trade + names, trademarks, service marks, or product names of the Licensor, + except as required for reasonable and customary use in describing the + origin of the Work and reproducing the content of the NOTICE file. + + 7. Disclaimer of Warranty. Unless required by applicable law or + agreed to in writing, Licensor provides the Work (and each + Contributor provides its Contributions) on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or + implied, including, without limitation, any warranties or conditions + of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A + PARTICULAR PURPOSE. You are solely responsible for determining the + appropriateness of using or redistributing the Work and assume any + risks associated with Your exercise of permissions under this License. + + 8. Limitation of Liability. In no event and under no legal theory, + whether in tort (including negligence), contract, or otherwise, + unless required by applicable law (such as deliberate and grossly + negligent acts) or agreed to in writing, shall any Contributor be + liable to You for damages, including any direct, indirect, special, + incidental, or consequential damages of any character arising as a + result of this License or out of the use or inability to use the + Work (including but not limited to damages for loss of goodwill, + work stoppage, computer failure or malfunction, or any and all + other commercial damages or losses), even if such Contributor + has been advised of the possibility of such damages. + + 9. Accepting Warranty or Additional Liability. While redistributing + the Work or Derivative Works thereof, You may choose to offer, + and charge a fee for, acceptance of support, warranty, indemnity, + or other liability obligations and/or rights consistent with this + License. However, in accepting such obligations, You may act only + on Your own behalf and on Your sole responsibility, not on behalf + of any other Contributor, and only if You agree to indemnify, + defend, and hold each Contributor harmless for any liability + incurred by, or claims asserted against, such Contributor by reason + of your accepting any such warranty or additional liability. + + END OF TERMS AND CONDITIONS + + APPENDIX: How to apply the Apache License to your work. + + To apply the Apache License to your work, attach the following + boilerplate notice, with the fields enclosed by brackets "[]" + replaced with your own identifying information. (Don't include + the brackets!) The text should be enclosed in the appropriate + comment syntax for the file format. We also recommend that a + file or class name and description of purpose be included on the + same "printed page" as the copyright notice for easier + identification within third-party archives. + + Copyright [yyyy] [name of copyright owner] + + Licensed under the Apache License, Version 2.0 (the "License"); + you may not use this file except in compliance with the License. + You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + + Unless required by applicable law or agreed to in writing, software + distributed under the License is distributed on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + See the License for the specific language governing permissions and + limitations under the License. diff --git a/.m2/wrapper/dists/apache-maven-3.9.11/a2d47e15/lib/maven-artifact-3.9.11.jar b/.m2/wrapper/dists/apache-maven-3.9.11/a2d47e15/lib/maven-artifact-3.9.11.jar new file mode 100644 index 0000000..c67c656 Binary files /dev/null and b/.m2/wrapper/dists/apache-maven-3.9.11/a2d47e15/lib/maven-artifact-3.9.11.jar differ diff --git a/.m2/wrapper/dists/apache-maven-3.9.11/a2d47e15/lib/maven-builder-support-3.9.11.jar b/.m2/wrapper/dists/apache-maven-3.9.11/a2d47e15/lib/maven-builder-support-3.9.11.jar new file mode 100644 index 0000000..5063c05 Binary files /dev/null and b/.m2/wrapper/dists/apache-maven-3.9.11/a2d47e15/lib/maven-builder-support-3.9.11.jar differ diff --git a/.m2/wrapper/dists/apache-maven-3.9.11/a2d47e15/lib/maven-compat-3.9.11.jar b/.m2/wrapper/dists/apache-maven-3.9.11/a2d47e15/lib/maven-compat-3.9.11.jar new file mode 100644 index 0000000..2b2eb65 Binary files /dev/null and b/.m2/wrapper/dists/apache-maven-3.9.11/a2d47e15/lib/maven-compat-3.9.11.jar differ diff --git a/.m2/wrapper/dists/apache-maven-3.9.11/a2d47e15/lib/maven-core-3.9.11.jar b/.m2/wrapper/dists/apache-maven-3.9.11/a2d47e15/lib/maven-core-3.9.11.jar new file mode 100644 index 0000000..778144d Binary files /dev/null and b/.m2/wrapper/dists/apache-maven-3.9.11/a2d47e15/lib/maven-core-3.9.11.jar differ diff --git a/.m2/wrapper/dists/apache-maven-3.9.11/a2d47e15/lib/maven-embedder-3.9.11.jar b/.m2/wrapper/dists/apache-maven-3.9.11/a2d47e15/lib/maven-embedder-3.9.11.jar new file mode 100644 index 0000000..6077d73 Binary files /dev/null and b/.m2/wrapper/dists/apache-maven-3.9.11/a2d47e15/lib/maven-embedder-3.9.11.jar differ diff --git a/.m2/wrapper/dists/apache-maven-3.9.11/a2d47e15/lib/maven-model-3.9.11.jar b/.m2/wrapper/dists/apache-maven-3.9.11/a2d47e15/lib/maven-model-3.9.11.jar new file mode 100644 index 0000000..0562d37 Binary files /dev/null and b/.m2/wrapper/dists/apache-maven-3.9.11/a2d47e15/lib/maven-model-3.9.11.jar differ diff --git a/.m2/wrapper/dists/apache-maven-3.9.11/a2d47e15/lib/maven-model-builder-3.9.11.jar b/.m2/wrapper/dists/apache-maven-3.9.11/a2d47e15/lib/maven-model-builder-3.9.11.jar new file mode 100644 index 0000000..63ebd03 Binary files /dev/null and b/.m2/wrapper/dists/apache-maven-3.9.11/a2d47e15/lib/maven-model-builder-3.9.11.jar differ diff --git a/.m2/wrapper/dists/apache-maven-3.9.11/a2d47e15/lib/maven-plugin-api-3.9.11.jar b/.m2/wrapper/dists/apache-maven-3.9.11/a2d47e15/lib/maven-plugin-api-3.9.11.jar new file mode 100644 index 0000000..e8d7435 Binary files /dev/null and b/.m2/wrapper/dists/apache-maven-3.9.11/a2d47e15/lib/maven-plugin-api-3.9.11.jar differ diff --git a/.m2/wrapper/dists/apache-maven-3.9.11/a2d47e15/lib/maven-repository-metadata-3.9.11.jar b/.m2/wrapper/dists/apache-maven-3.9.11/a2d47e15/lib/maven-repository-metadata-3.9.11.jar new file mode 100644 index 0000000..4eec4c6 Binary files /dev/null and b/.m2/wrapper/dists/apache-maven-3.9.11/a2d47e15/lib/maven-repository-metadata-3.9.11.jar differ diff --git a/.m2/wrapper/dists/apache-maven-3.9.11/a2d47e15/lib/maven-resolver-api-1.9.24.jar b/.m2/wrapper/dists/apache-maven-3.9.11/a2d47e15/lib/maven-resolver-api-1.9.24.jar new file mode 100644 index 0000000..89e7df0 Binary files /dev/null and b/.m2/wrapper/dists/apache-maven-3.9.11/a2d47e15/lib/maven-resolver-api-1.9.24.jar differ diff --git a/.m2/wrapper/dists/apache-maven-3.9.11/a2d47e15/lib/maven-resolver-connector-basic-1.9.24.jar b/.m2/wrapper/dists/apache-maven-3.9.11/a2d47e15/lib/maven-resolver-connector-basic-1.9.24.jar new file mode 100644 index 0000000..ac4396c Binary files /dev/null and b/.m2/wrapper/dists/apache-maven-3.9.11/a2d47e15/lib/maven-resolver-connector-basic-1.9.24.jar differ diff --git a/.m2/wrapper/dists/apache-maven-3.9.11/a2d47e15/lib/maven-resolver-impl-1.9.24.jar b/.m2/wrapper/dists/apache-maven-3.9.11/a2d47e15/lib/maven-resolver-impl-1.9.24.jar new file mode 100644 index 0000000..7945e84 Binary files /dev/null and b/.m2/wrapper/dists/apache-maven-3.9.11/a2d47e15/lib/maven-resolver-impl-1.9.24.jar differ diff --git a/.m2/wrapper/dists/apache-maven-3.9.11/a2d47e15/lib/maven-resolver-named-locks-1.9.24.jar b/.m2/wrapper/dists/apache-maven-3.9.11/a2d47e15/lib/maven-resolver-named-locks-1.9.24.jar new file mode 100644 index 0000000..f92bbeb Binary files /dev/null and b/.m2/wrapper/dists/apache-maven-3.9.11/a2d47e15/lib/maven-resolver-named-locks-1.9.24.jar differ diff --git a/.m2/wrapper/dists/apache-maven-3.9.11/a2d47e15/lib/maven-resolver-provider-3.9.11.jar b/.m2/wrapper/dists/apache-maven-3.9.11/a2d47e15/lib/maven-resolver-provider-3.9.11.jar new file mode 100644 index 0000000..532b2c9 Binary files /dev/null and b/.m2/wrapper/dists/apache-maven-3.9.11/a2d47e15/lib/maven-resolver-provider-3.9.11.jar differ diff --git a/.m2/wrapper/dists/apache-maven-3.9.11/a2d47e15/lib/maven-resolver-spi-1.9.24.jar b/.m2/wrapper/dists/apache-maven-3.9.11/a2d47e15/lib/maven-resolver-spi-1.9.24.jar new file mode 100644 index 0000000..5272a45 Binary files /dev/null and b/.m2/wrapper/dists/apache-maven-3.9.11/a2d47e15/lib/maven-resolver-spi-1.9.24.jar differ diff --git a/.m2/wrapper/dists/apache-maven-3.9.11/a2d47e15/lib/maven-resolver-transport-file-1.9.24.jar b/.m2/wrapper/dists/apache-maven-3.9.11/a2d47e15/lib/maven-resolver-transport-file-1.9.24.jar new file mode 100644 index 0000000..0b6ece2 Binary files /dev/null and b/.m2/wrapper/dists/apache-maven-3.9.11/a2d47e15/lib/maven-resolver-transport-file-1.9.24.jar differ diff --git a/.m2/wrapper/dists/apache-maven-3.9.11/a2d47e15/lib/maven-resolver-transport-http-1.9.24.jar b/.m2/wrapper/dists/apache-maven-3.9.11/a2d47e15/lib/maven-resolver-transport-http-1.9.24.jar new file mode 100644 index 0000000..a1c1b4d Binary files /dev/null and b/.m2/wrapper/dists/apache-maven-3.9.11/a2d47e15/lib/maven-resolver-transport-http-1.9.24.jar differ diff --git a/.m2/wrapper/dists/apache-maven-3.9.11/a2d47e15/lib/maven-resolver-transport-wagon-1.9.24.jar b/.m2/wrapper/dists/apache-maven-3.9.11/a2d47e15/lib/maven-resolver-transport-wagon-1.9.24.jar new file mode 100644 index 0000000..f9f3e98 Binary files /dev/null and b/.m2/wrapper/dists/apache-maven-3.9.11/a2d47e15/lib/maven-resolver-transport-wagon-1.9.24.jar differ diff --git a/.m2/wrapper/dists/apache-maven-3.9.11/a2d47e15/lib/maven-resolver-util-1.9.24.jar b/.m2/wrapper/dists/apache-maven-3.9.11/a2d47e15/lib/maven-resolver-util-1.9.24.jar new file mode 100644 index 0000000..cc06177 Binary files /dev/null and b/.m2/wrapper/dists/apache-maven-3.9.11/a2d47e15/lib/maven-resolver-util-1.9.24.jar differ diff --git a/.m2/wrapper/dists/apache-maven-3.9.11/a2d47e15/lib/maven-settings-3.9.11.jar b/.m2/wrapper/dists/apache-maven-3.9.11/a2d47e15/lib/maven-settings-3.9.11.jar new file mode 100644 index 0000000..f68c780 Binary files /dev/null and b/.m2/wrapper/dists/apache-maven-3.9.11/a2d47e15/lib/maven-settings-3.9.11.jar differ diff --git a/.m2/wrapper/dists/apache-maven-3.9.11/a2d47e15/lib/maven-settings-builder-3.9.11.jar b/.m2/wrapper/dists/apache-maven-3.9.11/a2d47e15/lib/maven-settings-builder-3.9.11.jar new file mode 100644 index 0000000..6e71fe2 Binary files /dev/null and b/.m2/wrapper/dists/apache-maven-3.9.11/a2d47e15/lib/maven-settings-builder-3.9.11.jar differ diff --git a/.m2/wrapper/dists/apache-maven-3.9.11/a2d47e15/lib/maven-shared-utils-3.4.2.jar b/.m2/wrapper/dists/apache-maven-3.9.11/a2d47e15/lib/maven-shared-utils-3.4.2.jar new file mode 100644 index 0000000..a72853d Binary files /dev/null and b/.m2/wrapper/dists/apache-maven-3.9.11/a2d47e15/lib/maven-shared-utils-3.4.2.jar differ diff --git a/.m2/wrapper/dists/apache-maven-3.9.11/a2d47e15/lib/maven-slf4j-provider-3.9.11.jar b/.m2/wrapper/dists/apache-maven-3.9.11/a2d47e15/lib/maven-slf4j-provider-3.9.11.jar new file mode 100644 index 0000000..49584e7 Binary files /dev/null and b/.m2/wrapper/dists/apache-maven-3.9.11/a2d47e15/lib/maven-slf4j-provider-3.9.11.jar differ diff --git a/.m2/wrapper/dists/apache-maven-3.9.11/a2d47e15/lib/org.eclipse.sisu.inject-0.9.0.M4.jar b/.m2/wrapper/dists/apache-maven-3.9.11/a2d47e15/lib/org.eclipse.sisu.inject-0.9.0.M4.jar new file mode 100644 index 0000000..bf9be0b Binary files /dev/null and b/.m2/wrapper/dists/apache-maven-3.9.11/a2d47e15/lib/org.eclipse.sisu.inject-0.9.0.M4.jar differ diff --git a/.m2/wrapper/dists/apache-maven-3.9.11/a2d47e15/lib/org.eclipse.sisu.inject.license b/.m2/wrapper/dists/apache-maven-3.9.11/a2d47e15/lib/org.eclipse.sisu.inject.license new file mode 100644 index 0000000..e55f344 --- /dev/null +++ b/.m2/wrapper/dists/apache-maven-3.9.11/a2d47e15/lib/org.eclipse.sisu.inject.license @@ -0,0 +1,277 @@ +Eclipse Public License - v 2.0 + + THE ACCOMPANYING PROGRAM IS PROVIDED UNDER THE TERMS OF THIS ECLIPSE + PUBLIC LICENSE ("AGREEMENT"). ANY USE, REPRODUCTION OR DISTRIBUTION + OF THE PROGRAM CONSTITUTES RECIPIENT'S ACCEPTANCE OF THIS AGREEMENT. + +1. DEFINITIONS + +"Contribution" means: + + a) in the case of the initial Contributor, the initial content + Distributed under this Agreement, and + + b) in the case of each subsequent Contributor: + i) changes to the Program, and + ii) additions to the Program; + where such changes and/or additions to the Program originate from + and are Distributed by that particular Contributor. A Contribution + "originates" from a Contributor if it was added to the Program by + such Contributor itself or anyone acting on such Contributor's behalf. + Contributions do not include changes or additions to the Program that + are not Modified Works. + +"Contributor" means any person or entity that Distributes the Program. + +"Licensed Patents" mean patent claims licensable by a Contributor which +are necessarily infringed by the use or sale of its Contribution alone +or when combined with the Program. + +"Program" means the Contributions Distributed in accordance with this +Agreement. + +"Recipient" means anyone who receives the Program under this Agreement +or any Secondary License (as applicable), including Contributors. + +"Derivative Works" shall mean any work, whether in Source Code or other +form, that is based on (or derived from) the Program and for which the +editorial revisions, annotations, elaborations, or other modifications +represent, as a whole, an original work of authorship. + +"Modified Works" shall mean any work in Source Code or other form that +results from an addition to, deletion from, or modification of the +contents of the Program, including, for purposes of clarity any new file +in Source Code form that contains any contents of the Program. Modified +Works shall not include works that contain only declarations, +interfaces, types, classes, structures, or files of the Program solely +in each case in order to link to, bind by name, or subclass the Program +or Modified Works thereof. + +"Distribute" means the acts of a) distributing or b) making available +in any manner that enables the transfer of a copy. + +"Source Code" means the form of a Program preferred for making +modifications, including but not limited to software source code, +documentation source, and configuration files. + +"Secondary License" means either the GNU General Public License, +Version 2.0, or any later versions of that license, including any +exceptions or additional permissions as identified by the initial +Contributor. + +2. GRANT OF RIGHTS + + a) Subject to the terms of this Agreement, each Contributor hereby + grants Recipient a non-exclusive, worldwide, royalty-free copyright + license to reproduce, prepare Derivative Works of, publicly display, + publicly perform, Distribute and sublicense the Contribution of such + Contributor, if any, and such Derivative Works. + + b) Subject to the terms of this Agreement, each Contributor hereby + grants Recipient a non-exclusive, worldwide, royalty-free patent + license under Licensed Patents to make, use, sell, offer to sell, + import and otherwise transfer the Contribution of such Contributor, + if any, in Source Code or other form. This patent license shall + apply to the combination of the Contribution and the Program if, at + the time the Contribution is added by the Contributor, such addition + of the Contribution causes such combination to be covered by the + Licensed Patents. The patent license shall not apply to any other + combinations which include the Contribution. No hardware per se is + licensed hereunder. + + c) Recipient understands that although each Contributor grants the + licenses to its Contributions set forth herein, no assurances are + provided by any Contributor that the Program does not infringe the + patent or other intellectual property rights of any other entity. + Each Contributor disclaims any liability to Recipient for claims + brought by any other entity based on infringement of intellectual + property rights or otherwise. As a condition to exercising the + rights and licenses granted hereunder, each Recipient hereby + assumes sole responsibility to secure any other intellectual + property rights needed, if any. For example, if a third party + patent license is required to allow Recipient to Distribute the + Program, it is Recipient's responsibility to acquire that license + before distributing the Program. + + d) Each Contributor represents that to its knowledge it has + sufficient copyright rights in its Contribution, if any, to grant + the copyright license set forth in this Agreement. + + e) Notwithstanding the terms of any Secondary License, no + Contributor makes additional grants to any Recipient (other than + those set forth in this Agreement) as a result of such Recipient's + receipt of the Program under the terms of a Secondary License + (if permitted under the terms of Section 3). + +3. REQUIREMENTS + +3.1 If a Contributor Distributes the Program in any form, then: + + a) the Program must also be made available as Source Code, in + accordance with section 3.2, and the Contributor must accompany + the Program with a statement that the Source Code for the Program + is available under this Agreement, and informs Recipients how to + obtain it in a reasonable manner on or through a medium customarily + used for software exchange; and + + b) the Contributor may Distribute the Program under a license + different than this Agreement, provided that such license: + i) effectively disclaims on behalf of all other Contributors all + warranties and conditions, express and implied, including + warranties or conditions of title and non-infringement, and + implied warranties or conditions of merchantability and fitness + for a particular purpose; + + ii) effectively excludes on behalf of all other Contributors all + liability for damages, including direct, indirect, special, + incidental and consequential damages, such as lost profits; + + iii) does not attempt to limit or alter the recipients' rights + in the Source Code under section 3.2; and + + iv) requires any subsequent distribution of the Program by any + party to be under a license that satisfies the requirements + of this section 3. + +3.2 When the Program is Distributed as Source Code: + + a) it must be made available under this Agreement, or if the + Program (i) is combined with other material in a separate file or + files made available under a Secondary License, and (ii) the initial + Contributor attached to the Source Code the notice described in + Exhibit A of this Agreement, then the Program may be made available + under the terms of such Secondary Licenses, and + + b) a copy of this Agreement must be included with each copy of + the Program. + +3.3 Contributors may not remove or alter any copyright, patent, +trademark, attribution notices, disclaimers of warranty, or limitations +of liability ("notices") contained within the Program from any copy of +the Program which they Distribute, provided that Contributors may add +their own appropriate notices. + +4. COMMERCIAL DISTRIBUTION + +Commercial distributors of software may accept certain responsibilities +with respect to end users, business partners and the like. While this +license is intended to facilitate the commercial use of the Program, +the Contributor who includes the Program in a commercial product +offering should do so in a manner which does not create potential +liability for other Contributors. Therefore, if a Contributor includes +the Program in a commercial product offering, such Contributor +("Commercial Contributor") hereby agrees to defend and indemnify every +other Contributor ("Indemnified Contributor") against any losses, +damages and costs (collectively "Losses") arising from claims, lawsuits +and other legal actions brought by a third party against the Indemnified +Contributor to the extent caused by the acts or omissions of such +Commercial Contributor in connection with its distribution of the Program +in a commercial product offering. The obligations in this section do not +apply to any claims or Losses relating to any actual or alleged +intellectual property infringement. In order to qualify, an Indemnified +Contributor must: a) promptly notify the Commercial Contributor in +writing of such claim, and b) allow the Commercial Contributor to control, +and cooperate with the Commercial Contributor in, the defense and any +related settlement negotiations. The Indemnified Contributor may +participate in any such claim at its own expense. + +For example, a Contributor might include the Program in a commercial +product offering, Product X. That Contributor is then a Commercial +Contributor. If that Commercial Contributor then makes performance +claims, or offers warranties related to Product X, those performance +claims and warranties are such Commercial Contributor's responsibility +alone. Under this section, the Commercial Contributor would have to +defend claims against the other Contributors related to those performance +claims and warranties, and if a court requires any other Contributor to +pay any damages as a result, the Commercial Contributor must pay +those damages. + +5. NO WARRANTY + +EXCEPT AS EXPRESSLY SET FORTH IN THIS AGREEMENT, AND TO THE EXTENT +PERMITTED BY APPLICABLE LAW, THE PROGRAM IS PROVIDED ON AN "AS IS" +BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, EITHER EXPRESS OR +IMPLIED INCLUDING, WITHOUT LIMITATION, ANY WARRANTIES OR CONDITIONS OF +TITLE, NON-INFRINGEMENT, MERCHANTABILITY OR FITNESS FOR A PARTICULAR +PURPOSE. Each Recipient is solely responsible for determining the +appropriateness of using and distributing the Program and assumes all +risks associated with its exercise of rights under this Agreement, +including but not limited to the risks and costs of program errors, +compliance with applicable laws, damage to or loss of data, programs +or equipment, and unavailability or interruption of operations. + +6. DISCLAIMER OF LIABILITY + +EXCEPT AS EXPRESSLY SET FORTH IN THIS AGREEMENT, AND TO THE EXTENT +PERMITTED BY APPLICABLE LAW, NEITHER RECIPIENT NOR ANY CONTRIBUTORS +SHALL HAVE ANY LIABILITY FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, +EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING WITHOUT LIMITATION LOST +PROFITS), HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN +CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) +ARISING IN ANY WAY OUT OF THE USE OR DISTRIBUTION OF THE PROGRAM OR THE +EXERCISE OF ANY RIGHTS GRANTED HEREUNDER, EVEN IF ADVISED OF THE +POSSIBILITY OF SUCH DAMAGES. + +7. GENERAL + +If any provision of this Agreement is invalid or unenforceable under +applicable law, it shall not affect the validity or enforceability of +the remainder of the terms of this Agreement, and without further +action by the parties hereto, such provision shall be reformed to the +minimum extent necessary to make such provision valid and enforceable. + +If Recipient institutes patent litigation against any entity +(including a cross-claim or counterclaim in a lawsuit) alleging that the +Program itself (excluding combinations of the Program with other software +or hardware) infringes such Recipient's patent(s), then such Recipient's +rights granted under Section 2(b) shall terminate as of the date such +litigation is filed. + +All Recipient's rights under this Agreement shall terminate if it +fails to comply with any of the material terms or conditions of this +Agreement and does not cure such failure in a reasonable period of +time after becoming aware of such noncompliance. If all Recipient's +rights under this Agreement terminate, Recipient agrees to cease use +and distribution of the Program as soon as reasonably practicable. +However, Recipient's obligations under this Agreement and any licenses +granted by Recipient relating to the Program shall continue and survive. + +Everyone is permitted to copy and distribute copies of this Agreement, +but in order to avoid inconsistency the Agreement is copyrighted and +may only be modified in the following manner. The Agreement Steward +reserves the right to publish new versions (including revisions) of +this Agreement from time to time. No one other than the Agreement +Steward has the right to modify this Agreement. The Eclipse Foundation +is the initial Agreement Steward. The Eclipse Foundation may assign the +responsibility to serve as the Agreement Steward to a suitable separate +entity. Each new version of the Agreement will be given a distinguishing +version number. The Program (including Contributions) may always be +Distributed subject to the version of the Agreement under which it was +received. In addition, after a new version of the Agreement is published, +Contributor may elect to Distribute the Program (including its +Contributions) under the new version. + +Except as expressly stated in Sections 2(a) and 2(b) above, Recipient +receives no rights or licenses to the intellectual property of any +Contributor under this Agreement, whether expressly, by implication, +estoppel or otherwise. All rights in the Program not expressly granted +under this Agreement are reserved. Nothing in this Agreement is intended +to be enforceable by any entity that is not a Contributor or Recipient. +No third-party beneficiary rights are created under this Agreement. + +Exhibit A - Form of Secondary Licenses Notice + +"This Source Code may also be made available under the following +Secondary Licenses when the conditions for such availability set forth +in the Eclipse Public License, v. 2.0 are satisfied: {name license(s), +version(s), and exceptions or additional permissions here}." + + Simply including a copy of this Agreement, including this Exhibit A + is not sufficient to license the Source Code under Secondary Licenses. + + If it is not possible or desirable to put the notice in a particular + file, then You may include the notice in a location (such as a LICENSE + file in a relevant directory) where a recipient would be likely to + look for such a notice. + + You may add additional accurate notices of copyright ownership. \ No newline at end of file diff --git a/.m2/wrapper/dists/apache-maven-3.9.11/a2d47e15/lib/org.eclipse.sisu.plexus-0.9.0.M4.jar b/.m2/wrapper/dists/apache-maven-3.9.11/a2d47e15/lib/org.eclipse.sisu.plexus-0.9.0.M4.jar new file mode 100644 index 0000000..c266f3f Binary files /dev/null and b/.m2/wrapper/dists/apache-maven-3.9.11/a2d47e15/lib/org.eclipse.sisu.plexus-0.9.0.M4.jar differ diff --git a/.m2/wrapper/dists/apache-maven-3.9.11/a2d47e15/lib/org.eclipse.sisu.plexus.license b/.m2/wrapper/dists/apache-maven-3.9.11/a2d47e15/lib/org.eclipse.sisu.plexus.license new file mode 100644 index 0000000..e55f344 --- /dev/null +++ b/.m2/wrapper/dists/apache-maven-3.9.11/a2d47e15/lib/org.eclipse.sisu.plexus.license @@ -0,0 +1,277 @@ +Eclipse Public License - v 2.0 + + THE ACCOMPANYING PROGRAM IS PROVIDED UNDER THE TERMS OF THIS ECLIPSE + PUBLIC LICENSE ("AGREEMENT"). ANY USE, REPRODUCTION OR DISTRIBUTION + OF THE PROGRAM CONSTITUTES RECIPIENT'S ACCEPTANCE OF THIS AGREEMENT. + +1. DEFINITIONS + +"Contribution" means: + + a) in the case of the initial Contributor, the initial content + Distributed under this Agreement, and + + b) in the case of each subsequent Contributor: + i) changes to the Program, and + ii) additions to the Program; + where such changes and/or additions to the Program originate from + and are Distributed by that particular Contributor. A Contribution + "originates" from a Contributor if it was added to the Program by + such Contributor itself or anyone acting on such Contributor's behalf. + Contributions do not include changes or additions to the Program that + are not Modified Works. + +"Contributor" means any person or entity that Distributes the Program. + +"Licensed Patents" mean patent claims licensable by a Contributor which +are necessarily infringed by the use or sale of its Contribution alone +or when combined with the Program. + +"Program" means the Contributions Distributed in accordance with this +Agreement. + +"Recipient" means anyone who receives the Program under this Agreement +or any Secondary License (as applicable), including Contributors. + +"Derivative Works" shall mean any work, whether in Source Code or other +form, that is based on (or derived from) the Program and for which the +editorial revisions, annotations, elaborations, or other modifications +represent, as a whole, an original work of authorship. + +"Modified Works" shall mean any work in Source Code or other form that +results from an addition to, deletion from, or modification of the +contents of the Program, including, for purposes of clarity any new file +in Source Code form that contains any contents of the Program. Modified +Works shall not include works that contain only declarations, +interfaces, types, classes, structures, or files of the Program solely +in each case in order to link to, bind by name, or subclass the Program +or Modified Works thereof. + +"Distribute" means the acts of a) distributing or b) making available +in any manner that enables the transfer of a copy. + +"Source Code" means the form of a Program preferred for making +modifications, including but not limited to software source code, +documentation source, and configuration files. + +"Secondary License" means either the GNU General Public License, +Version 2.0, or any later versions of that license, including any +exceptions or additional permissions as identified by the initial +Contributor. + +2. GRANT OF RIGHTS + + a) Subject to the terms of this Agreement, each Contributor hereby + grants Recipient a non-exclusive, worldwide, royalty-free copyright + license to reproduce, prepare Derivative Works of, publicly display, + publicly perform, Distribute and sublicense the Contribution of such + Contributor, if any, and such Derivative Works. + + b) Subject to the terms of this Agreement, each Contributor hereby + grants Recipient a non-exclusive, worldwide, royalty-free patent + license under Licensed Patents to make, use, sell, offer to sell, + import and otherwise transfer the Contribution of such Contributor, + if any, in Source Code or other form. This patent license shall + apply to the combination of the Contribution and the Program if, at + the time the Contribution is added by the Contributor, such addition + of the Contribution causes such combination to be covered by the + Licensed Patents. The patent license shall not apply to any other + combinations which include the Contribution. No hardware per se is + licensed hereunder. + + c) Recipient understands that although each Contributor grants the + licenses to its Contributions set forth herein, no assurances are + provided by any Contributor that the Program does not infringe the + patent or other intellectual property rights of any other entity. + Each Contributor disclaims any liability to Recipient for claims + brought by any other entity based on infringement of intellectual + property rights or otherwise. As a condition to exercising the + rights and licenses granted hereunder, each Recipient hereby + assumes sole responsibility to secure any other intellectual + property rights needed, if any. For example, if a third party + patent license is required to allow Recipient to Distribute the + Program, it is Recipient's responsibility to acquire that license + before distributing the Program. + + d) Each Contributor represents that to its knowledge it has + sufficient copyright rights in its Contribution, if any, to grant + the copyright license set forth in this Agreement. + + e) Notwithstanding the terms of any Secondary License, no + Contributor makes additional grants to any Recipient (other than + those set forth in this Agreement) as a result of such Recipient's + receipt of the Program under the terms of a Secondary License + (if permitted under the terms of Section 3). + +3. REQUIREMENTS + +3.1 If a Contributor Distributes the Program in any form, then: + + a) the Program must also be made available as Source Code, in + accordance with section 3.2, and the Contributor must accompany + the Program with a statement that the Source Code for the Program + is available under this Agreement, and informs Recipients how to + obtain it in a reasonable manner on or through a medium customarily + used for software exchange; and + + b) the Contributor may Distribute the Program under a license + different than this Agreement, provided that such license: + i) effectively disclaims on behalf of all other Contributors all + warranties and conditions, express and implied, including + warranties or conditions of title and non-infringement, and + implied warranties or conditions of merchantability and fitness + for a particular purpose; + + ii) effectively excludes on behalf of all other Contributors all + liability for damages, including direct, indirect, special, + incidental and consequential damages, such as lost profits; + + iii) does not attempt to limit or alter the recipients' rights + in the Source Code under section 3.2; and + + iv) requires any subsequent distribution of the Program by any + party to be under a license that satisfies the requirements + of this section 3. + +3.2 When the Program is Distributed as Source Code: + + a) it must be made available under this Agreement, or if the + Program (i) is combined with other material in a separate file or + files made available under a Secondary License, and (ii) the initial + Contributor attached to the Source Code the notice described in + Exhibit A of this Agreement, then the Program may be made available + under the terms of such Secondary Licenses, and + + b) a copy of this Agreement must be included with each copy of + the Program. + +3.3 Contributors may not remove or alter any copyright, patent, +trademark, attribution notices, disclaimers of warranty, or limitations +of liability ("notices") contained within the Program from any copy of +the Program which they Distribute, provided that Contributors may add +their own appropriate notices. + +4. COMMERCIAL DISTRIBUTION + +Commercial distributors of software may accept certain responsibilities +with respect to end users, business partners and the like. While this +license is intended to facilitate the commercial use of the Program, +the Contributor who includes the Program in a commercial product +offering should do so in a manner which does not create potential +liability for other Contributors. Therefore, if a Contributor includes +the Program in a commercial product offering, such Contributor +("Commercial Contributor") hereby agrees to defend and indemnify every +other Contributor ("Indemnified Contributor") against any losses, +damages and costs (collectively "Losses") arising from claims, lawsuits +and other legal actions brought by a third party against the Indemnified +Contributor to the extent caused by the acts or omissions of such +Commercial Contributor in connection with its distribution of the Program +in a commercial product offering. The obligations in this section do not +apply to any claims or Losses relating to any actual or alleged +intellectual property infringement. In order to qualify, an Indemnified +Contributor must: a) promptly notify the Commercial Contributor in +writing of such claim, and b) allow the Commercial Contributor to control, +and cooperate with the Commercial Contributor in, the defense and any +related settlement negotiations. The Indemnified Contributor may +participate in any such claim at its own expense. + +For example, a Contributor might include the Program in a commercial +product offering, Product X. That Contributor is then a Commercial +Contributor. If that Commercial Contributor then makes performance +claims, or offers warranties related to Product X, those performance +claims and warranties are such Commercial Contributor's responsibility +alone. Under this section, the Commercial Contributor would have to +defend claims against the other Contributors related to those performance +claims and warranties, and if a court requires any other Contributor to +pay any damages as a result, the Commercial Contributor must pay +those damages. + +5. NO WARRANTY + +EXCEPT AS EXPRESSLY SET FORTH IN THIS AGREEMENT, AND TO THE EXTENT +PERMITTED BY APPLICABLE LAW, THE PROGRAM IS PROVIDED ON AN "AS IS" +BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, EITHER EXPRESS OR +IMPLIED INCLUDING, WITHOUT LIMITATION, ANY WARRANTIES OR CONDITIONS OF +TITLE, NON-INFRINGEMENT, MERCHANTABILITY OR FITNESS FOR A PARTICULAR +PURPOSE. Each Recipient is solely responsible for determining the +appropriateness of using and distributing the Program and assumes all +risks associated with its exercise of rights under this Agreement, +including but not limited to the risks and costs of program errors, +compliance with applicable laws, damage to or loss of data, programs +or equipment, and unavailability or interruption of operations. + +6. DISCLAIMER OF LIABILITY + +EXCEPT AS EXPRESSLY SET FORTH IN THIS AGREEMENT, AND TO THE EXTENT +PERMITTED BY APPLICABLE LAW, NEITHER RECIPIENT NOR ANY CONTRIBUTORS +SHALL HAVE ANY LIABILITY FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, +EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING WITHOUT LIMITATION LOST +PROFITS), HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN +CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) +ARISING IN ANY WAY OUT OF THE USE OR DISTRIBUTION OF THE PROGRAM OR THE +EXERCISE OF ANY RIGHTS GRANTED HEREUNDER, EVEN IF ADVISED OF THE +POSSIBILITY OF SUCH DAMAGES. + +7. GENERAL + +If any provision of this Agreement is invalid or unenforceable under +applicable law, it shall not affect the validity or enforceability of +the remainder of the terms of this Agreement, and without further +action by the parties hereto, such provision shall be reformed to the +minimum extent necessary to make such provision valid and enforceable. + +If Recipient institutes patent litigation against any entity +(including a cross-claim or counterclaim in a lawsuit) alleging that the +Program itself (excluding combinations of the Program with other software +or hardware) infringes such Recipient's patent(s), then such Recipient's +rights granted under Section 2(b) shall terminate as of the date such +litigation is filed. + +All Recipient's rights under this Agreement shall terminate if it +fails to comply with any of the material terms or conditions of this +Agreement and does not cure such failure in a reasonable period of +time after becoming aware of such noncompliance. If all Recipient's +rights under this Agreement terminate, Recipient agrees to cease use +and distribution of the Program as soon as reasonably practicable. +However, Recipient's obligations under this Agreement and any licenses +granted by Recipient relating to the Program shall continue and survive. + +Everyone is permitted to copy and distribute copies of this Agreement, +but in order to avoid inconsistency the Agreement is copyrighted and +may only be modified in the following manner. The Agreement Steward +reserves the right to publish new versions (including revisions) of +this Agreement from time to time. No one other than the Agreement +Steward has the right to modify this Agreement. The Eclipse Foundation +is the initial Agreement Steward. The Eclipse Foundation may assign the +responsibility to serve as the Agreement Steward to a suitable separate +entity. Each new version of the Agreement will be given a distinguishing +version number. The Program (including Contributions) may always be +Distributed subject to the version of the Agreement under which it was +received. In addition, after a new version of the Agreement is published, +Contributor may elect to Distribute the Program (including its +Contributions) under the new version. + +Except as expressly stated in Sections 2(a) and 2(b) above, Recipient +receives no rights or licenses to the intellectual property of any +Contributor under this Agreement, whether expressly, by implication, +estoppel or otherwise. All rights in the Program not expressly granted +under this Agreement are reserved. Nothing in this Agreement is intended +to be enforceable by any entity that is not a Contributor or Recipient. +No third-party beneficiary rights are created under this Agreement. + +Exhibit A - Form of Secondary Licenses Notice + +"This Source Code may also be made available under the following +Secondary Licenses when the conditions for such availability set forth +in the Eclipse Public License, v. 2.0 are satisfied: {name license(s), +version(s), and exceptions or additional permissions here}." + + Simply including a copy of this Agreement, including this Exhibit A + is not sufficient to license the Source Code under Secondary Licenses. + + If it is not possible or desirable to put the notice in a particular + file, then You may include the notice in a location (such as a LICENSE + file in a relevant directory) where a recipient would be likely to + look for such a notice. + + You may add additional accurate notices of copyright ownership. \ No newline at end of file diff --git a/.m2/wrapper/dists/apache-maven-3.9.11/a2d47e15/lib/plexus-cipher-2.0.jar b/.m2/wrapper/dists/apache-maven-3.9.11/a2d47e15/lib/plexus-cipher-2.0.jar new file mode 100644 index 0000000..e73475d Binary files /dev/null and b/.m2/wrapper/dists/apache-maven-3.9.11/a2d47e15/lib/plexus-cipher-2.0.jar differ diff --git a/.m2/wrapper/dists/apache-maven-3.9.11/a2d47e15/lib/plexus-cipher.license b/.m2/wrapper/dists/apache-maven-3.9.11/a2d47e15/lib/plexus-cipher.license new file mode 100644 index 0000000..d645695 --- /dev/null +++ b/.m2/wrapper/dists/apache-maven-3.9.11/a2d47e15/lib/plexus-cipher.license @@ -0,0 +1,202 @@ + + Apache License + Version 2.0, January 2004 + http://www.apache.org/licenses/ + + TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION + + 1. Definitions. + + "License" shall mean the terms and conditions for use, reproduction, + and distribution as defined by Sections 1 through 9 of this document. + + "Licensor" shall mean the copyright owner or entity authorized by + the copyright owner that is granting the License. + + "Legal Entity" shall mean the union of the acting entity and all + other entities that control, are controlled by, or are under common + control with that entity. For the purposes of this definition, + "control" means (i) the power, direct or indirect, to cause the + direction or management of such entity, whether by contract or + otherwise, or (ii) ownership of fifty percent (50%) or more of the + outstanding shares, or (iii) beneficial ownership of such entity. + + "You" (or "Your") shall mean an individual or Legal Entity + exercising permissions granted by this License. + + "Source" form shall mean the preferred form for making modifications, + including but not limited to software source code, documentation + source, and configuration files. + + "Object" form shall mean any form resulting from mechanical + transformation or translation of a Source form, including but + not limited to compiled object code, generated documentation, + and conversions to other media types. + + "Work" shall mean the work of authorship, whether in Source or + Object form, made available under the License, as indicated by a + copyright notice that is included in or attached to the work + (an example is provided in the Appendix below). + + "Derivative Works" shall mean any work, whether in Source or Object + form, that is based on (or derived from) the Work and for which the + editorial revisions, annotations, elaborations, or other modifications + represent, as a whole, an original work of authorship. For the purposes + of this License, Derivative Works shall not include works that remain + separable from, or merely link (or bind by name) to the interfaces of, + the Work and Derivative Works thereof. + + "Contribution" shall mean any work of authorship, including + the original version of the Work and any modifications or additions + to that Work or Derivative Works thereof, that is intentionally + submitted to Licensor for inclusion in the Work by the copyright owner + or by an individual or Legal Entity authorized to submit on behalf of + the copyright owner. For the purposes of this definition, "submitted" + means any form of electronic, verbal, or written communication sent + to the Licensor or its representatives, including but not limited to + communication on electronic mailing lists, source code control systems, + and issue tracking systems that are managed by, or on behalf of, the + Licensor for the purpose of discussing and improving the Work, but + excluding communication that is conspicuously marked or otherwise + designated in writing by the copyright owner as "Not a Contribution." + + "Contributor" shall mean Licensor and any individual or Legal Entity + on behalf of whom a Contribution has been received by Licensor and + subsequently incorporated within the Work. + + 2. Grant of Copyright License. Subject to the terms and conditions of + this License, each Contributor hereby grants to You a perpetual, + worldwide, non-exclusive, no-charge, royalty-free, irrevocable + copyright license to reproduce, prepare Derivative Works of, + publicly display, publicly perform, sublicense, and distribute the + Work and such Derivative Works in Source or Object form. + + 3. Grant of Patent License. Subject to the terms and conditions of + this License, each Contributor hereby grants to You a perpetual, + worldwide, non-exclusive, no-charge, royalty-free, irrevocable + (except as stated in this section) patent license to make, have made, + use, offer to sell, sell, import, and otherwise transfer the Work, + where such license applies only to those patent claims licensable + by such Contributor that are necessarily infringed by their + Contribution(s) alone or by combination of their Contribution(s) + with the Work to which such Contribution(s) was submitted. If You + institute patent litigation against any entity (including a + cross-claim or counterclaim in a lawsuit) alleging that the Work + or a Contribution incorporated within the Work constitutes direct + or contributory patent infringement, then any patent licenses + granted to You under this License for that Work shall terminate + as of the date such litigation is filed. + + 4. Redistribution. You may reproduce and distribute copies of the + Work or Derivative Works thereof in any medium, with or without + modifications, and in Source or Object form, provided that You + meet the following conditions: + + (a) You must give any other recipients of the Work or + Derivative Works a copy of this License; and + + (b) You must cause any modified files to carry prominent notices + stating that You changed the files; and + + (c) You must retain, in the Source form of any Derivative Works + that You distribute, all copyright, patent, trademark, and + attribution notices from the Source form of the Work, + excluding those notices that do not pertain to any part of + the Derivative Works; and + + (d) If the Work includes a "NOTICE" text file as part of its + distribution, then any Derivative Works that You distribute must + include a readable copy of the attribution notices contained + within such NOTICE file, excluding those notices that do not + pertain to any part of the Derivative Works, in at least one + of the following places: within a NOTICE text file distributed + as part of the Derivative Works; within the Source form or + documentation, if provided along with the Derivative Works; or, + within a display generated by the Derivative Works, if and + wherever such third-party notices normally appear. The contents + of the NOTICE file are for informational purposes only and + do not modify the License. You may add Your own attribution + notices within Derivative Works that You distribute, alongside + or as an addendum to the NOTICE text from the Work, provided + that such additional attribution notices cannot be construed + as modifying the License. + + You may add Your own copyright statement to Your modifications and + may provide additional or different license terms and conditions + for use, reproduction, or distribution of Your modifications, or + for any such Derivative Works as a whole, provided Your use, + reproduction, and distribution of the Work otherwise complies with + the conditions stated in this License. + + 5. Submission of Contributions. Unless You explicitly state otherwise, + any Contribution intentionally submitted for inclusion in the Work + by You to the Licensor shall be under the terms and conditions of + this License, without any additional terms or conditions. + Notwithstanding the above, nothing herein shall supersede or modify + the terms of any separate license agreement you may have executed + with Licensor regarding such Contributions. + + 6. Trademarks. This License does not grant permission to use the trade + names, trademarks, service marks, or product names of the Licensor, + except as required for reasonable and customary use in describing the + origin of the Work and reproducing the content of the NOTICE file. + + 7. Disclaimer of Warranty. Unless required by applicable law or + agreed to in writing, Licensor provides the Work (and each + Contributor provides its Contributions) on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or + implied, including, without limitation, any warranties or conditions + of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A + PARTICULAR PURPOSE. You are solely responsible for determining the + appropriateness of using or redistributing the Work and assume any + risks associated with Your exercise of permissions under this License. + + 8. Limitation of Liability. In no event and under no legal theory, + whether in tort (including negligence), contract, or otherwise, + unless required by applicable law (such as deliberate and grossly + negligent acts) or agreed to in writing, shall any Contributor be + liable to You for damages, including any direct, indirect, special, + incidental, or consequential damages of any character arising as a + result of this License or out of the use or inability to use the + Work (including but not limited to damages for loss of goodwill, + work stoppage, computer failure or malfunction, or any and all + other commercial damages or losses), even if such Contributor + has been advised of the possibility of such damages. + + 9. Accepting Warranty or Additional Liability. While redistributing + the Work or Derivative Works thereof, You may choose to offer, + and charge a fee for, acceptance of support, warranty, indemnity, + or other liability obligations and/or rights consistent with this + License. However, in accepting such obligations, You may act only + on Your own behalf and on Your sole responsibility, not on behalf + of any other Contributor, and only if You agree to indemnify, + defend, and hold each Contributor harmless for any liability + incurred by, or claims asserted against, such Contributor by reason + of your accepting any such warranty or additional liability. + + END OF TERMS AND CONDITIONS + + APPENDIX: How to apply the Apache License to your work. + + To apply the Apache License to your work, attach the following + boilerplate notice, with the fields enclosed by brackets "[]" + replaced with your own identifying information. (Don't include + the brackets!) The text should be enclosed in the appropriate + comment syntax for the file format. We also recommend that a + file or class name and description of purpose be included on the + same "printed page" as the copyright notice for easier + identification within third-party archives. + + Copyright [yyyy] [name of copyright owner] + + Licensed under the Apache License, Version 2.0 (the "License"); + you may not use this file except in compliance with the License. + You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + + Unless required by applicable law or agreed to in writing, software + distributed under the License is distributed on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + See the License for the specific language governing permissions and + limitations under the License. diff --git a/.m2/wrapper/dists/apache-maven-3.9.11/a2d47e15/lib/plexus-component-annotations-2.2.0.jar b/.m2/wrapper/dists/apache-maven-3.9.11/a2d47e15/lib/plexus-component-annotations-2.2.0.jar new file mode 100644 index 0000000..49113da Binary files /dev/null and b/.m2/wrapper/dists/apache-maven-3.9.11/a2d47e15/lib/plexus-component-annotations-2.2.0.jar differ diff --git a/.m2/wrapper/dists/apache-maven-3.9.11/a2d47e15/lib/plexus-component-annotations.license b/.m2/wrapper/dists/apache-maven-3.9.11/a2d47e15/lib/plexus-component-annotations.license new file mode 100644 index 0000000..d645695 --- /dev/null +++ b/.m2/wrapper/dists/apache-maven-3.9.11/a2d47e15/lib/plexus-component-annotations.license @@ -0,0 +1,202 @@ + + Apache License + Version 2.0, January 2004 + http://www.apache.org/licenses/ + + TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION + + 1. Definitions. + + "License" shall mean the terms and conditions for use, reproduction, + and distribution as defined by Sections 1 through 9 of this document. + + "Licensor" shall mean the copyright owner or entity authorized by + the copyright owner that is granting the License. + + "Legal Entity" shall mean the union of the acting entity and all + other entities that control, are controlled by, or are under common + control with that entity. For the purposes of this definition, + "control" means (i) the power, direct or indirect, to cause the + direction or management of such entity, whether by contract or + otherwise, or (ii) ownership of fifty percent (50%) or more of the + outstanding shares, or (iii) beneficial ownership of such entity. + + "You" (or "Your") shall mean an individual or Legal Entity + exercising permissions granted by this License. + + "Source" form shall mean the preferred form for making modifications, + including but not limited to software source code, documentation + source, and configuration files. + + "Object" form shall mean any form resulting from mechanical + transformation or translation of a Source form, including but + not limited to compiled object code, generated documentation, + and conversions to other media types. + + "Work" shall mean the work of authorship, whether in Source or + Object form, made available under the License, as indicated by a + copyright notice that is included in or attached to the work + (an example is provided in the Appendix below). + + "Derivative Works" shall mean any work, whether in Source or Object + form, that is based on (or derived from) the Work and for which the + editorial revisions, annotations, elaborations, or other modifications + represent, as a whole, an original work of authorship. For the purposes + of this License, Derivative Works shall not include works that remain + separable from, or merely link (or bind by name) to the interfaces of, + the Work and Derivative Works thereof. + + "Contribution" shall mean any work of authorship, including + the original version of the Work and any modifications or additions + to that Work or Derivative Works thereof, that is intentionally + submitted to Licensor for inclusion in the Work by the copyright owner + or by an individual or Legal Entity authorized to submit on behalf of + the copyright owner. For the purposes of this definition, "submitted" + means any form of electronic, verbal, or written communication sent + to the Licensor or its representatives, including but not limited to + communication on electronic mailing lists, source code control systems, + and issue tracking systems that are managed by, or on behalf of, the + Licensor for the purpose of discussing and improving the Work, but + excluding communication that is conspicuously marked or otherwise + designated in writing by the copyright owner as "Not a Contribution." + + "Contributor" shall mean Licensor and any individual or Legal Entity + on behalf of whom a Contribution has been received by Licensor and + subsequently incorporated within the Work. + + 2. Grant of Copyright License. Subject to the terms and conditions of + this License, each Contributor hereby grants to You a perpetual, + worldwide, non-exclusive, no-charge, royalty-free, irrevocable + copyright license to reproduce, prepare Derivative Works of, + publicly display, publicly perform, sublicense, and distribute the + Work and such Derivative Works in Source or Object form. + + 3. Grant of Patent License. Subject to the terms and conditions of + this License, each Contributor hereby grants to You a perpetual, + worldwide, non-exclusive, no-charge, royalty-free, irrevocable + (except as stated in this section) patent license to make, have made, + use, offer to sell, sell, import, and otherwise transfer the Work, + where such license applies only to those patent claims licensable + by such Contributor that are necessarily infringed by their + Contribution(s) alone or by combination of their Contribution(s) + with the Work to which such Contribution(s) was submitted. If You + institute patent litigation against any entity (including a + cross-claim or counterclaim in a lawsuit) alleging that the Work + or a Contribution incorporated within the Work constitutes direct + or contributory patent infringement, then any patent licenses + granted to You under this License for that Work shall terminate + as of the date such litigation is filed. + + 4. Redistribution. You may reproduce and distribute copies of the + Work or Derivative Works thereof in any medium, with or without + modifications, and in Source or Object form, provided that You + meet the following conditions: + + (a) You must give any other recipients of the Work or + Derivative Works a copy of this License; and + + (b) You must cause any modified files to carry prominent notices + stating that You changed the files; and + + (c) You must retain, in the Source form of any Derivative Works + that You distribute, all copyright, patent, trademark, and + attribution notices from the Source form of the Work, + excluding those notices that do not pertain to any part of + the Derivative Works; and + + (d) If the Work includes a "NOTICE" text file as part of its + distribution, then any Derivative Works that You distribute must + include a readable copy of the attribution notices contained + within such NOTICE file, excluding those notices that do not + pertain to any part of the Derivative Works, in at least one + of the following places: within a NOTICE text file distributed + as part of the Derivative Works; within the Source form or + documentation, if provided along with the Derivative Works; or, + within a display generated by the Derivative Works, if and + wherever such third-party notices normally appear. The contents + of the NOTICE file are for informational purposes only and + do not modify the License. You may add Your own attribution + notices within Derivative Works that You distribute, alongside + or as an addendum to the NOTICE text from the Work, provided + that such additional attribution notices cannot be construed + as modifying the License. + + You may add Your own copyright statement to Your modifications and + may provide additional or different license terms and conditions + for use, reproduction, or distribution of Your modifications, or + for any such Derivative Works as a whole, provided Your use, + reproduction, and distribution of the Work otherwise complies with + the conditions stated in this License. + + 5. Submission of Contributions. Unless You explicitly state otherwise, + any Contribution intentionally submitted for inclusion in the Work + by You to the Licensor shall be under the terms and conditions of + this License, without any additional terms or conditions. + Notwithstanding the above, nothing herein shall supersede or modify + the terms of any separate license agreement you may have executed + with Licensor regarding such Contributions. + + 6. Trademarks. This License does not grant permission to use the trade + names, trademarks, service marks, or product names of the Licensor, + except as required for reasonable and customary use in describing the + origin of the Work and reproducing the content of the NOTICE file. + + 7. Disclaimer of Warranty. Unless required by applicable law or + agreed to in writing, Licensor provides the Work (and each + Contributor provides its Contributions) on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or + implied, including, without limitation, any warranties or conditions + of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A + PARTICULAR PURPOSE. You are solely responsible for determining the + appropriateness of using or redistributing the Work and assume any + risks associated with Your exercise of permissions under this License. + + 8. Limitation of Liability. In no event and under no legal theory, + whether in tort (including negligence), contract, or otherwise, + unless required by applicable law (such as deliberate and grossly + negligent acts) or agreed to in writing, shall any Contributor be + liable to You for damages, including any direct, indirect, special, + incidental, or consequential damages of any character arising as a + result of this License or out of the use or inability to use the + Work (including but not limited to damages for loss of goodwill, + work stoppage, computer failure or malfunction, or any and all + other commercial damages or losses), even if such Contributor + has been advised of the possibility of such damages. + + 9. Accepting Warranty or Additional Liability. While redistributing + the Work or Derivative Works thereof, You may choose to offer, + and charge a fee for, acceptance of support, warranty, indemnity, + or other liability obligations and/or rights consistent with this + License. However, in accepting such obligations, You may act only + on Your own behalf and on Your sole responsibility, not on behalf + of any other Contributor, and only if You agree to indemnify, + defend, and hold each Contributor harmless for any liability + incurred by, or claims asserted against, such Contributor by reason + of your accepting any such warranty or additional liability. + + END OF TERMS AND CONDITIONS + + APPENDIX: How to apply the Apache License to your work. + + To apply the Apache License to your work, attach the following + boilerplate notice, with the fields enclosed by brackets "[]" + replaced with your own identifying information. (Don't include + the brackets!) The text should be enclosed in the appropriate + comment syntax for the file format. We also recommend that a + file or class name and description of purpose be included on the + same "printed page" as the copyright notice for easier + identification within third-party archives. + + Copyright [yyyy] [name of copyright owner] + + Licensed under the Apache License, Version 2.0 (the "License"); + you may not use this file except in compliance with the License. + You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + + Unless required by applicable law or agreed to in writing, software + distributed under the License is distributed on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + See the License for the specific language governing permissions and + limitations under the License. diff --git a/.m2/wrapper/dists/apache-maven-3.9.11/a2d47e15/lib/plexus-interpolation-1.28.jar b/.m2/wrapper/dists/apache-maven-3.9.11/a2d47e15/lib/plexus-interpolation-1.28.jar new file mode 100644 index 0000000..37c7954 Binary files /dev/null and b/.m2/wrapper/dists/apache-maven-3.9.11/a2d47e15/lib/plexus-interpolation-1.28.jar differ diff --git a/.m2/wrapper/dists/apache-maven-3.9.11/a2d47e15/lib/plexus-interpolation.license b/.m2/wrapper/dists/apache-maven-3.9.11/a2d47e15/lib/plexus-interpolation.license new file mode 100644 index 0000000..d645695 --- /dev/null +++ b/.m2/wrapper/dists/apache-maven-3.9.11/a2d47e15/lib/plexus-interpolation.license @@ -0,0 +1,202 @@ + + Apache License + Version 2.0, January 2004 + http://www.apache.org/licenses/ + + TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION + + 1. Definitions. + + "License" shall mean the terms and conditions for use, reproduction, + and distribution as defined by Sections 1 through 9 of this document. + + "Licensor" shall mean the copyright owner or entity authorized by + the copyright owner that is granting the License. + + "Legal Entity" shall mean the union of the acting entity and all + other entities that control, are controlled by, or are under common + control with that entity. For the purposes of this definition, + "control" means (i) the power, direct or indirect, to cause the + direction or management of such entity, whether by contract or + otherwise, or (ii) ownership of fifty percent (50%) or more of the + outstanding shares, or (iii) beneficial ownership of such entity. + + "You" (or "Your") shall mean an individual or Legal Entity + exercising permissions granted by this License. + + "Source" form shall mean the preferred form for making modifications, + including but not limited to software source code, documentation + source, and configuration files. + + "Object" form shall mean any form resulting from mechanical + transformation or translation of a Source form, including but + not limited to compiled object code, generated documentation, + and conversions to other media types. + + "Work" shall mean the work of authorship, whether in Source or + Object form, made available under the License, as indicated by a + copyright notice that is included in or attached to the work + (an example is provided in the Appendix below). + + "Derivative Works" shall mean any work, whether in Source or Object + form, that is based on (or derived from) the Work and for which the + editorial revisions, annotations, elaborations, or other modifications + represent, as a whole, an original work of authorship. For the purposes + of this License, Derivative Works shall not include works that remain + separable from, or merely link (or bind by name) to the interfaces of, + the Work and Derivative Works thereof. + + "Contribution" shall mean any work of authorship, including + the original version of the Work and any modifications or additions + to that Work or Derivative Works thereof, that is intentionally + submitted to Licensor for inclusion in the Work by the copyright owner + or by an individual or Legal Entity authorized to submit on behalf of + the copyright owner. For the purposes of this definition, "submitted" + means any form of electronic, verbal, or written communication sent + to the Licensor or its representatives, including but not limited to + communication on electronic mailing lists, source code control systems, + and issue tracking systems that are managed by, or on behalf of, the + Licensor for the purpose of discussing and improving the Work, but + excluding communication that is conspicuously marked or otherwise + designated in writing by the copyright owner as "Not a Contribution." + + "Contributor" shall mean Licensor and any individual or Legal Entity + on behalf of whom a Contribution has been received by Licensor and + subsequently incorporated within the Work. + + 2. Grant of Copyright License. Subject to the terms and conditions of + this License, each Contributor hereby grants to You a perpetual, + worldwide, non-exclusive, no-charge, royalty-free, irrevocable + copyright license to reproduce, prepare Derivative Works of, + publicly display, publicly perform, sublicense, and distribute the + Work and such Derivative Works in Source or Object form. + + 3. Grant of Patent License. Subject to the terms and conditions of + this License, each Contributor hereby grants to You a perpetual, + worldwide, non-exclusive, no-charge, royalty-free, irrevocable + (except as stated in this section) patent license to make, have made, + use, offer to sell, sell, import, and otherwise transfer the Work, + where such license applies only to those patent claims licensable + by such Contributor that are necessarily infringed by their + Contribution(s) alone or by combination of their Contribution(s) + with the Work to which such Contribution(s) was submitted. If You + institute patent litigation against any entity (including a + cross-claim or counterclaim in a lawsuit) alleging that the Work + or a Contribution incorporated within the Work constitutes direct + or contributory patent infringement, then any patent licenses + granted to You under this License for that Work shall terminate + as of the date such litigation is filed. + + 4. Redistribution. You may reproduce and distribute copies of the + Work or Derivative Works thereof in any medium, with or without + modifications, and in Source or Object form, provided that You + meet the following conditions: + + (a) You must give any other recipients of the Work or + Derivative Works a copy of this License; and + + (b) You must cause any modified files to carry prominent notices + stating that You changed the files; and + + (c) You must retain, in the Source form of any Derivative Works + that You distribute, all copyright, patent, trademark, and + attribution notices from the Source form of the Work, + excluding those notices that do not pertain to any part of + the Derivative Works; and + + (d) If the Work includes a "NOTICE" text file as part of its + distribution, then any Derivative Works that You distribute must + include a readable copy of the attribution notices contained + within such NOTICE file, excluding those notices that do not + pertain to any part of the Derivative Works, in at least one + of the following places: within a NOTICE text file distributed + as part of the Derivative Works; within the Source form or + documentation, if provided along with the Derivative Works; or, + within a display generated by the Derivative Works, if and + wherever such third-party notices normally appear. The contents + of the NOTICE file are for informational purposes only and + do not modify the License. You may add Your own attribution + notices within Derivative Works that You distribute, alongside + or as an addendum to the NOTICE text from the Work, provided + that such additional attribution notices cannot be construed + as modifying the License. + + You may add Your own copyright statement to Your modifications and + may provide additional or different license terms and conditions + for use, reproduction, or distribution of Your modifications, or + for any such Derivative Works as a whole, provided Your use, + reproduction, and distribution of the Work otherwise complies with + the conditions stated in this License. + + 5. Submission of Contributions. Unless You explicitly state otherwise, + any Contribution intentionally submitted for inclusion in the Work + by You to the Licensor shall be under the terms and conditions of + this License, without any additional terms or conditions. + Notwithstanding the above, nothing herein shall supersede or modify + the terms of any separate license agreement you may have executed + with Licensor regarding such Contributions. + + 6. Trademarks. This License does not grant permission to use the trade + names, trademarks, service marks, or product names of the Licensor, + except as required for reasonable and customary use in describing the + origin of the Work and reproducing the content of the NOTICE file. + + 7. Disclaimer of Warranty. Unless required by applicable law or + agreed to in writing, Licensor provides the Work (and each + Contributor provides its Contributions) on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or + implied, including, without limitation, any warranties or conditions + of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A + PARTICULAR PURPOSE. You are solely responsible for determining the + appropriateness of using or redistributing the Work and assume any + risks associated with Your exercise of permissions under this License. + + 8. Limitation of Liability. In no event and under no legal theory, + whether in tort (including negligence), contract, or otherwise, + unless required by applicable law (such as deliberate and grossly + negligent acts) or agreed to in writing, shall any Contributor be + liable to You for damages, including any direct, indirect, special, + incidental, or consequential damages of any character arising as a + result of this License or out of the use or inability to use the + Work (including but not limited to damages for loss of goodwill, + work stoppage, computer failure or malfunction, or any and all + other commercial damages or losses), even if such Contributor + has been advised of the possibility of such damages. + + 9. Accepting Warranty or Additional Liability. While redistributing + the Work or Derivative Works thereof, You may choose to offer, + and charge a fee for, acceptance of support, warranty, indemnity, + or other liability obligations and/or rights consistent with this + License. However, in accepting such obligations, You may act only + on Your own behalf and on Your sole responsibility, not on behalf + of any other Contributor, and only if You agree to indemnify, + defend, and hold each Contributor harmless for any liability + incurred by, or claims asserted against, such Contributor by reason + of your accepting any such warranty or additional liability. + + END OF TERMS AND CONDITIONS + + APPENDIX: How to apply the Apache License to your work. + + To apply the Apache License to your work, attach the following + boilerplate notice, with the fields enclosed by brackets "[]" + replaced with your own identifying information. (Don't include + the brackets!) The text should be enclosed in the appropriate + comment syntax for the file format. We also recommend that a + file or class name and description of purpose be included on the + same "printed page" as the copyright notice for easier + identification within third-party archives. + + Copyright [yyyy] [name of copyright owner] + + Licensed under the Apache License, Version 2.0 (the "License"); + you may not use this file except in compliance with the License. + You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + + Unless required by applicable law or agreed to in writing, software + distributed under the License is distributed on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + See the License for the specific language governing permissions and + limitations under the License. diff --git a/.m2/wrapper/dists/apache-maven-3.9.11/a2d47e15/lib/plexus-sec-dispatcher-2.0.jar b/.m2/wrapper/dists/apache-maven-3.9.11/a2d47e15/lib/plexus-sec-dispatcher-2.0.jar new file mode 100644 index 0000000..623cc21 Binary files /dev/null and b/.m2/wrapper/dists/apache-maven-3.9.11/a2d47e15/lib/plexus-sec-dispatcher-2.0.jar differ diff --git a/.m2/wrapper/dists/apache-maven-3.9.11/a2d47e15/lib/plexus-sec-dispatcher.license b/.m2/wrapper/dists/apache-maven-3.9.11/a2d47e15/lib/plexus-sec-dispatcher.license new file mode 100644 index 0000000..d645695 --- /dev/null +++ b/.m2/wrapper/dists/apache-maven-3.9.11/a2d47e15/lib/plexus-sec-dispatcher.license @@ -0,0 +1,202 @@ + + Apache License + Version 2.0, January 2004 + http://www.apache.org/licenses/ + + TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION + + 1. Definitions. + + "License" shall mean the terms and conditions for use, reproduction, + and distribution as defined by Sections 1 through 9 of this document. + + "Licensor" shall mean the copyright owner or entity authorized by + the copyright owner that is granting the License. + + "Legal Entity" shall mean the union of the acting entity and all + other entities that control, are controlled by, or are under common + control with that entity. For the purposes of this definition, + "control" means (i) the power, direct or indirect, to cause the + direction or management of such entity, whether by contract or + otherwise, or (ii) ownership of fifty percent (50%) or more of the + outstanding shares, or (iii) beneficial ownership of such entity. + + "You" (or "Your") shall mean an individual or Legal Entity + exercising permissions granted by this License. + + "Source" form shall mean the preferred form for making modifications, + including but not limited to software source code, documentation + source, and configuration files. + + "Object" form shall mean any form resulting from mechanical + transformation or translation of a Source form, including but + not limited to compiled object code, generated documentation, + and conversions to other media types. + + "Work" shall mean the work of authorship, whether in Source or + Object form, made available under the License, as indicated by a + copyright notice that is included in or attached to the work + (an example is provided in the Appendix below). + + "Derivative Works" shall mean any work, whether in Source or Object + form, that is based on (or derived from) the Work and for which the + editorial revisions, annotations, elaborations, or other modifications + represent, as a whole, an original work of authorship. For the purposes + of this License, Derivative Works shall not include works that remain + separable from, or merely link (or bind by name) to the interfaces of, + the Work and Derivative Works thereof. + + "Contribution" shall mean any work of authorship, including + the original version of the Work and any modifications or additions + to that Work or Derivative Works thereof, that is intentionally + submitted to Licensor for inclusion in the Work by the copyright owner + or by an individual or Legal Entity authorized to submit on behalf of + the copyright owner. For the purposes of this definition, "submitted" + means any form of electronic, verbal, or written communication sent + to the Licensor or its representatives, including but not limited to + communication on electronic mailing lists, source code control systems, + and issue tracking systems that are managed by, or on behalf of, the + Licensor for the purpose of discussing and improving the Work, but + excluding communication that is conspicuously marked or otherwise + designated in writing by the copyright owner as "Not a Contribution." + + "Contributor" shall mean Licensor and any individual or Legal Entity + on behalf of whom a Contribution has been received by Licensor and + subsequently incorporated within the Work. + + 2. Grant of Copyright License. Subject to the terms and conditions of + this License, each Contributor hereby grants to You a perpetual, + worldwide, non-exclusive, no-charge, royalty-free, irrevocable + copyright license to reproduce, prepare Derivative Works of, + publicly display, publicly perform, sublicense, and distribute the + Work and such Derivative Works in Source or Object form. + + 3. Grant of Patent License. Subject to the terms and conditions of + this License, each Contributor hereby grants to You a perpetual, + worldwide, non-exclusive, no-charge, royalty-free, irrevocable + (except as stated in this section) patent license to make, have made, + use, offer to sell, sell, import, and otherwise transfer the Work, + where such license applies only to those patent claims licensable + by such Contributor that are necessarily infringed by their + Contribution(s) alone or by combination of their Contribution(s) + with the Work to which such Contribution(s) was submitted. If You + institute patent litigation against any entity (including a + cross-claim or counterclaim in a lawsuit) alleging that the Work + or a Contribution incorporated within the Work constitutes direct + or contributory patent infringement, then any patent licenses + granted to You under this License for that Work shall terminate + as of the date such litigation is filed. + + 4. Redistribution. You may reproduce and distribute copies of the + Work or Derivative Works thereof in any medium, with or without + modifications, and in Source or Object form, provided that You + meet the following conditions: + + (a) You must give any other recipients of the Work or + Derivative Works a copy of this License; and + + (b) You must cause any modified files to carry prominent notices + stating that You changed the files; and + + (c) You must retain, in the Source form of any Derivative Works + that You distribute, all copyright, patent, trademark, and + attribution notices from the Source form of the Work, + excluding those notices that do not pertain to any part of + the Derivative Works; and + + (d) If the Work includes a "NOTICE" text file as part of its + distribution, then any Derivative Works that You distribute must + include a readable copy of the attribution notices contained + within such NOTICE file, excluding those notices that do not + pertain to any part of the Derivative Works, in at least one + of the following places: within a NOTICE text file distributed + as part of the Derivative Works; within the Source form or + documentation, if provided along with the Derivative Works; or, + within a display generated by the Derivative Works, if and + wherever such third-party notices normally appear. The contents + of the NOTICE file are for informational purposes only and + do not modify the License. You may add Your own attribution + notices within Derivative Works that You distribute, alongside + or as an addendum to the NOTICE text from the Work, provided + that such additional attribution notices cannot be construed + as modifying the License. + + You may add Your own copyright statement to Your modifications and + may provide additional or different license terms and conditions + for use, reproduction, or distribution of Your modifications, or + for any such Derivative Works as a whole, provided Your use, + reproduction, and distribution of the Work otherwise complies with + the conditions stated in this License. + + 5. Submission of Contributions. Unless You explicitly state otherwise, + any Contribution intentionally submitted for inclusion in the Work + by You to the Licensor shall be under the terms and conditions of + this License, without any additional terms or conditions. + Notwithstanding the above, nothing herein shall supersede or modify + the terms of any separate license agreement you may have executed + with Licensor regarding such Contributions. + + 6. Trademarks. This License does not grant permission to use the trade + names, trademarks, service marks, or product names of the Licensor, + except as required for reasonable and customary use in describing the + origin of the Work and reproducing the content of the NOTICE file. + + 7. Disclaimer of Warranty. Unless required by applicable law or + agreed to in writing, Licensor provides the Work (and each + Contributor provides its Contributions) on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or + implied, including, without limitation, any warranties or conditions + of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A + PARTICULAR PURPOSE. You are solely responsible for determining the + appropriateness of using or redistributing the Work and assume any + risks associated with Your exercise of permissions under this License. + + 8. Limitation of Liability. In no event and under no legal theory, + whether in tort (including negligence), contract, or otherwise, + unless required by applicable law (such as deliberate and grossly + negligent acts) or agreed to in writing, shall any Contributor be + liable to You for damages, including any direct, indirect, special, + incidental, or consequential damages of any character arising as a + result of this License or out of the use or inability to use the + Work (including but not limited to damages for loss of goodwill, + work stoppage, computer failure or malfunction, or any and all + other commercial damages or losses), even if such Contributor + has been advised of the possibility of such damages. + + 9. Accepting Warranty or Additional Liability. While redistributing + the Work or Derivative Works thereof, You may choose to offer, + and charge a fee for, acceptance of support, warranty, indemnity, + or other liability obligations and/or rights consistent with this + License. However, in accepting such obligations, You may act only + on Your own behalf and on Your sole responsibility, not on behalf + of any other Contributor, and only if You agree to indemnify, + defend, and hold each Contributor harmless for any liability + incurred by, or claims asserted against, such Contributor by reason + of your accepting any such warranty or additional liability. + + END OF TERMS AND CONDITIONS + + APPENDIX: How to apply the Apache License to your work. + + To apply the Apache License to your work, attach the following + boilerplate notice, with the fields enclosed by brackets "[]" + replaced with your own identifying information. (Don't include + the brackets!) The text should be enclosed in the appropriate + comment syntax for the file format. We also recommend that a + file or class name and description of purpose be included on the + same "printed page" as the copyright notice for easier + identification within third-party archives. + + Copyright [yyyy] [name of copyright owner] + + Licensed under the Apache License, Version 2.0 (the "License"); + you may not use this file except in compliance with the License. + You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + + Unless required by applicable law or agreed to in writing, software + distributed under the License is distributed on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + See the License for the specific language governing permissions and + limitations under the License. diff --git a/.m2/wrapper/dists/apache-maven-3.9.11/a2d47e15/lib/plexus-utils-3.6.0.jar b/.m2/wrapper/dists/apache-maven-3.9.11/a2d47e15/lib/plexus-utils-3.6.0.jar new file mode 100644 index 0000000..5119711 Binary files /dev/null and b/.m2/wrapper/dists/apache-maven-3.9.11/a2d47e15/lib/plexus-utils-3.6.0.jar differ diff --git a/.m2/wrapper/dists/apache-maven-3.9.11/a2d47e15/lib/plexus-utils.license b/.m2/wrapper/dists/apache-maven-3.9.11/a2d47e15/lib/plexus-utils.license new file mode 100644 index 0000000..d645695 --- /dev/null +++ b/.m2/wrapper/dists/apache-maven-3.9.11/a2d47e15/lib/plexus-utils.license @@ -0,0 +1,202 @@ + + Apache License + Version 2.0, January 2004 + http://www.apache.org/licenses/ + + TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION + + 1. Definitions. + + "License" shall mean the terms and conditions for use, reproduction, + and distribution as defined by Sections 1 through 9 of this document. + + "Licensor" shall mean the copyright owner or entity authorized by + the copyright owner that is granting the License. + + "Legal Entity" shall mean the union of the acting entity and all + other entities that control, are controlled by, or are under common + control with that entity. For the purposes of this definition, + "control" means (i) the power, direct or indirect, to cause the + direction or management of such entity, whether by contract or + otherwise, or (ii) ownership of fifty percent (50%) or more of the + outstanding shares, or (iii) beneficial ownership of such entity. + + "You" (or "Your") shall mean an individual or Legal Entity + exercising permissions granted by this License. + + "Source" form shall mean the preferred form for making modifications, + including but not limited to software source code, documentation + source, and configuration files. + + "Object" form shall mean any form resulting from mechanical + transformation or translation of a Source form, including but + not limited to compiled object code, generated documentation, + and conversions to other media types. + + "Work" shall mean the work of authorship, whether in Source or + Object form, made available under the License, as indicated by a + copyright notice that is included in or attached to the work + (an example is provided in the Appendix below). + + "Derivative Works" shall mean any work, whether in Source or Object + form, that is based on (or derived from) the Work and for which the + editorial revisions, annotations, elaborations, or other modifications + represent, as a whole, an original work of authorship. For the purposes + of this License, Derivative Works shall not include works that remain + separable from, or merely link (or bind by name) to the interfaces of, + the Work and Derivative Works thereof. + + "Contribution" shall mean any work of authorship, including + the original version of the Work and any modifications or additions + to that Work or Derivative Works thereof, that is intentionally + submitted to Licensor for inclusion in the Work by the copyright owner + or by an individual or Legal Entity authorized to submit on behalf of + the copyright owner. For the purposes of this definition, "submitted" + means any form of electronic, verbal, or written communication sent + to the Licensor or its representatives, including but not limited to + communication on electronic mailing lists, source code control systems, + and issue tracking systems that are managed by, or on behalf of, the + Licensor for the purpose of discussing and improving the Work, but + excluding communication that is conspicuously marked or otherwise + designated in writing by the copyright owner as "Not a Contribution." + + "Contributor" shall mean Licensor and any individual or Legal Entity + on behalf of whom a Contribution has been received by Licensor and + subsequently incorporated within the Work. + + 2. Grant of Copyright License. Subject to the terms and conditions of + this License, each Contributor hereby grants to You a perpetual, + worldwide, non-exclusive, no-charge, royalty-free, irrevocable + copyright license to reproduce, prepare Derivative Works of, + publicly display, publicly perform, sublicense, and distribute the + Work and such Derivative Works in Source or Object form. + + 3. Grant of Patent License. Subject to the terms and conditions of + this License, each Contributor hereby grants to You a perpetual, + worldwide, non-exclusive, no-charge, royalty-free, irrevocable + (except as stated in this section) patent license to make, have made, + use, offer to sell, sell, import, and otherwise transfer the Work, + where such license applies only to those patent claims licensable + by such Contributor that are necessarily infringed by their + Contribution(s) alone or by combination of their Contribution(s) + with the Work to which such Contribution(s) was submitted. If You + institute patent litigation against any entity (including a + cross-claim or counterclaim in a lawsuit) alleging that the Work + or a Contribution incorporated within the Work constitutes direct + or contributory patent infringement, then any patent licenses + granted to You under this License for that Work shall terminate + as of the date such litigation is filed. + + 4. Redistribution. You may reproduce and distribute copies of the + Work or Derivative Works thereof in any medium, with or without + modifications, and in Source or Object form, provided that You + meet the following conditions: + + (a) You must give any other recipients of the Work or + Derivative Works a copy of this License; and + + (b) You must cause any modified files to carry prominent notices + stating that You changed the files; and + + (c) You must retain, in the Source form of any Derivative Works + that You distribute, all copyright, patent, trademark, and + attribution notices from the Source form of the Work, + excluding those notices that do not pertain to any part of + the Derivative Works; and + + (d) If the Work includes a "NOTICE" text file as part of its + distribution, then any Derivative Works that You distribute must + include a readable copy of the attribution notices contained + within such NOTICE file, excluding those notices that do not + pertain to any part of the Derivative Works, in at least one + of the following places: within a NOTICE text file distributed + as part of the Derivative Works; within the Source form or + documentation, if provided along with the Derivative Works; or, + within a display generated by the Derivative Works, if and + wherever such third-party notices normally appear. The contents + of the NOTICE file are for informational purposes only and + do not modify the License. You may add Your own attribution + notices within Derivative Works that You distribute, alongside + or as an addendum to the NOTICE text from the Work, provided + that such additional attribution notices cannot be construed + as modifying the License. + + You may add Your own copyright statement to Your modifications and + may provide additional or different license terms and conditions + for use, reproduction, or distribution of Your modifications, or + for any such Derivative Works as a whole, provided Your use, + reproduction, and distribution of the Work otherwise complies with + the conditions stated in this License. + + 5. Submission of Contributions. Unless You explicitly state otherwise, + any Contribution intentionally submitted for inclusion in the Work + by You to the Licensor shall be under the terms and conditions of + this License, without any additional terms or conditions. + Notwithstanding the above, nothing herein shall supersede or modify + the terms of any separate license agreement you may have executed + with Licensor regarding such Contributions. + + 6. Trademarks. This License does not grant permission to use the trade + names, trademarks, service marks, or product names of the Licensor, + except as required for reasonable and customary use in describing the + origin of the Work and reproducing the content of the NOTICE file. + + 7. Disclaimer of Warranty. Unless required by applicable law or + agreed to in writing, Licensor provides the Work (and each + Contributor provides its Contributions) on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or + implied, including, without limitation, any warranties or conditions + of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A + PARTICULAR PURPOSE. You are solely responsible for determining the + appropriateness of using or redistributing the Work and assume any + risks associated with Your exercise of permissions under this License. + + 8. Limitation of Liability. In no event and under no legal theory, + whether in tort (including negligence), contract, or otherwise, + unless required by applicable law (such as deliberate and grossly + negligent acts) or agreed to in writing, shall any Contributor be + liable to You for damages, including any direct, indirect, special, + incidental, or consequential damages of any character arising as a + result of this License or out of the use or inability to use the + Work (including but not limited to damages for loss of goodwill, + work stoppage, computer failure or malfunction, or any and all + other commercial damages or losses), even if such Contributor + has been advised of the possibility of such damages. + + 9. Accepting Warranty or Additional Liability. While redistributing + the Work or Derivative Works thereof, You may choose to offer, + and charge a fee for, acceptance of support, warranty, indemnity, + or other liability obligations and/or rights consistent with this + License. However, in accepting such obligations, You may act only + on Your own behalf and on Your sole responsibility, not on behalf + of any other Contributor, and only if You agree to indemnify, + defend, and hold each Contributor harmless for any liability + incurred by, or claims asserted against, such Contributor by reason + of your accepting any such warranty or additional liability. + + END OF TERMS AND CONDITIONS + + APPENDIX: How to apply the Apache License to your work. + + To apply the Apache License to your work, attach the following + boilerplate notice, with the fields enclosed by brackets "[]" + replaced with your own identifying information. (Don't include + the brackets!) The text should be enclosed in the appropriate + comment syntax for the file format. We also recommend that a + file or class name and description of purpose be included on the + same "printed page" as the copyright notice for easier + identification within third-party archives. + + Copyright [yyyy] [name of copyright owner] + + Licensed under the Apache License, Version 2.0 (the "License"); + you may not use this file except in compliance with the License. + You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + + Unless required by applicable law or agreed to in writing, software + distributed under the License is distributed on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + See the License for the specific language governing permissions and + limitations under the License. diff --git a/.m2/wrapper/dists/apache-maven-3.9.11/a2d47e15/lib/slf4j-api-1.7.36.jar b/.m2/wrapper/dists/apache-maven-3.9.11/a2d47e15/lib/slf4j-api-1.7.36.jar new file mode 100644 index 0000000..7d3ce68 Binary files /dev/null and b/.m2/wrapper/dists/apache-maven-3.9.11/a2d47e15/lib/slf4j-api-1.7.36.jar differ diff --git a/.m2/wrapper/dists/apache-maven-3.9.11/a2d47e15/lib/slf4j-api.license b/.m2/wrapper/dists/apache-maven-3.9.11/a2d47e15/lib/slf4j-api.license new file mode 100644 index 0000000..1a3d053 --- /dev/null +++ b/.m2/wrapper/dists/apache-maven-3.9.11/a2d47e15/lib/slf4j-api.license @@ -0,0 +1,24 @@ +Copyright (c) 2004-2022 QOS.ch Sarl (Switzerland) +All rights reserved. + +Permission is hereby granted, free of charge, to any person obtaining +a copy of this software and associated documentation files (the +"Software"), to deal in the Software without restriction, including +without limitation the rights to use, copy, modify, merge, publish, +distribute, sublicense, and/or sell copies of the Software, and to +permit persons to whom the Software is furnished to do so, subject to +the following conditions: + +The above copyright notice and this permission notice shall be +included in all copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, +EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF +MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND +NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE +LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION +OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION +WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. + + + diff --git a/.m2/wrapper/dists/apache-maven-3.9.11/a2d47e15/lib/wagon-file-3.5.3.jar b/.m2/wrapper/dists/apache-maven-3.9.11/a2d47e15/lib/wagon-file-3.5.3.jar new file mode 100644 index 0000000..97222d4 Binary files /dev/null and b/.m2/wrapper/dists/apache-maven-3.9.11/a2d47e15/lib/wagon-file-3.5.3.jar differ diff --git a/.m2/wrapper/dists/apache-maven-3.9.11/a2d47e15/lib/wagon-http-3.5.3.jar b/.m2/wrapper/dists/apache-maven-3.9.11/a2d47e15/lib/wagon-http-3.5.3.jar new file mode 100644 index 0000000..fd1f4a0 Binary files /dev/null and b/.m2/wrapper/dists/apache-maven-3.9.11/a2d47e15/lib/wagon-http-3.5.3.jar differ diff --git a/.m2/wrapper/dists/apache-maven-3.9.11/a2d47e15/lib/wagon-http-shared-3.5.3.jar b/.m2/wrapper/dists/apache-maven-3.9.11/a2d47e15/lib/wagon-http-shared-3.5.3.jar new file mode 100644 index 0000000..d6f2d75 Binary files /dev/null and b/.m2/wrapper/dists/apache-maven-3.9.11/a2d47e15/lib/wagon-http-shared-3.5.3.jar differ diff --git a/.m2/wrapper/dists/apache-maven-3.9.11/a2d47e15/lib/wagon-provider-api-3.5.3.jar b/.m2/wrapper/dists/apache-maven-3.9.11/a2d47e15/lib/wagon-provider-api-3.5.3.jar new file mode 100644 index 0000000..ae6f033 Binary files /dev/null and b/.m2/wrapper/dists/apache-maven-3.9.11/a2d47e15/lib/wagon-provider-api-3.5.3.jar differ diff --git a/.m2/wrapper/dists/apache-maven-3.9.11/a2d47e15/mvnw.url b/.m2/wrapper/dists/apache-maven-3.9.11/a2d47e15/mvnw.url new file mode 100644 index 0000000..36a54c1 --- /dev/null +++ b/.m2/wrapper/dists/apache-maven-3.9.11/a2d47e15/mvnw.url @@ -0,0 +1 @@ +https://repo.maven.apache.org/maven2/org/apache/maven/apache-maven/3.9.11/apache-maven-3.9.11-bin.zip diff --git a/.mvn/wrapper/maven-wrapper.properties b/.mvn/wrapper/maven-wrapper.properties new file mode 100644 index 0000000..c0bcafe --- /dev/null +++ b/.mvn/wrapper/maven-wrapper.properties @@ -0,0 +1,3 @@ +wrapperVersion=3.3.4 +distributionType=only-script +distributionUrl=https://repo.maven.apache.org/maven2/org/apache/maven/apache-maven/3.9.11/apache-maven-3.9.11-bin.zip diff --git a/AGENTS.md b/AGENTS.md new file mode 100644 index 0000000..06d9c8e --- /dev/null +++ b/AGENTS.md @@ -0,0 +1,36 @@ +# Repository Guidelines + +## Project Structure & Module Organization +- `src/main/java/de/tamse/imageconverter` contains production code with `ImageConverterApplication` as the entry point. +- `src/main/resources` stores configuration and static assets; defaults live in `application.properties`. +- `src/test/java` mirrors the production package tree for JUnit 5 coverage. +- `prd/` holds product-facing documentation; `target/` is disposable build output. + +## Build, Test, and Development Commands +- `./mvnw clean package` compiles, runs tests, and produces an executable JAR under `target/`. +- `./mvnw test` executes the unit and integration test suite without packaging. +- `./mvnw spring-boot:run` starts the application for local development; stop with `Ctrl+C`. +- Ensure Java 17 is configured in your IDE and `$JAVA_HOME` before invoking the wrapper. + +## Coding Style & Naming Conventions +- Adopt Spring conventions: classes in PascalCase, methods and fields in camelCase, constants in UPPER_SNAKE. +- Indent with four spaces, let your IDE organise imports, and avoid trailing whitespace. +- Group new components under `de.tamse.imageconverter.` with descriptive names (e.g., `PngToJpegConverter`). +- Prefer constructor injection for Spring beans and commit only formatted code. + +## Testing Guidelines +- Use JUnit 5; name test classes with the `*Tests` suffix and match package paths. +- Limit `@SpringBootTest` to scenarios needing the full application context; favour slice or unit tests otherwise. +- Run `./mvnw test` before pushing to catch regressions locally. +- Expand coverage around new converters, validators, or data flows you introduce. + +## Commit & Pull Request Guidelines +- Follow Conventional Commits (e.g., `feat: add png conversion pipeline`) to keep history searchable. +- Write imperative subject lines and mention affected modules when helpful. +- Pull requests should include a concise summary, linked issues, and manual verification notes. +- Attach screenshots or sample payloads when changes affect user-visible behaviour or external APIs. + +## Configuration Tips +- Keep shared defaults in `application.properties`; never commit secrets or API keys. +- Add environment overrides via `application-.properties` and document activation (`--spring.profiles.active=dev`). +- Prefer environment variables or external vaults for sensitive values and note required secrets in PR checklists. diff --git a/image-converter.zip b/image-converter.zip new file mode 100644 index 0000000..0f38d57 Binary files /dev/null and b/image-converter.zip differ diff --git a/mvnw b/mvnw new file mode 100755 index 0000000..bd8896b --- /dev/null +++ b/mvnw @@ -0,0 +1,295 @@ +#!/bin/sh +# ---------------------------------------------------------------------------- +# Licensed to the Apache Software Foundation (ASF) under one +# or more contributor license agreements. See the NOTICE file +# distributed with this work for additional information +# regarding copyright ownership. The ASF licenses this file +# to you under the Apache License, Version 2.0 (the +# "License"); you may not use this file except in compliance +# with the License. You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, +# software distributed under the License is distributed on an +# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY +# KIND, either express or implied. See the License for the +# specific language governing permissions and limitations +# under the License. +# ---------------------------------------------------------------------------- + +# ---------------------------------------------------------------------------- +# Apache Maven Wrapper startup batch script, version 3.3.4 +# +# Optional ENV vars +# ----------------- +# 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 +# ---------------------------------------------------------------------------- + +set -euf +[ "${MVNW_VERBOSE-}" != debug ] || set -x + +# OS specific support. +native_path() { printf %s\\n "$1"; } +case "$(uname)" in +CYGWIN* | MINGW*) + [ -z "${JAVA_HOME-}" ] || JAVA_HOME="$(cygpath --unix "$JAVA_HOME")" + native_path() { cygpath --path --windows "$1"; } + ;; +esac + +# 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="$( + '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 +} + +# 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 %x\\n $h +} + +verbose() { :; } +[ "${MVNW_VERBOSE-}" != true ] || verbose() { printf %s\\n "${1-}"; } + +die() { + printf %s\\n "$1" >&2 + exit 1 +} + +trim() { + # MWRAPPER-139: + # Trims trailing and leading whitespace, carriage returns, tabs, and linefeeds. + # Needed for removing poorly interpreted newline sequences when running in more + # exotic environments such as mingw bash on Windows. + printf "%s" "${1}" | tr -d '[:space:]' +} + +scriptDir="$(dirname "$0")" +scriptName="$(basename "$0")" + +# parse distributionUrl and optional distributionSha256Sum, requires .mvn/wrapper/maven-wrapper.properties +while IFS="=" read -r key value; do + case "${key-}" in + distributionUrl) distributionUrl=$(trim "${value-}") ;; + distributionSha256Sum) distributionSha256Sum=$(trim "${value-}") ;; + esac +done <"$scriptDir/.mvn/wrapper/maven-wrapper.properties" +[ -n "${distributionUrl-}" ] || die "cannot read distributionUrl property in $scriptDir/.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${scriptName#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_USER_HOME="${MAVEN_USER_HOME:-${HOME}/.m2}" +MAVEN_HOME="${MAVEN_USER_HOME}/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" +} + +if [ -d "$MAVEN_HOME" ]; then + verbose "found existing MAVEN_HOME at $MAVEN_HOME" + exec_maven "$@" +fi + +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 + +# 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 + die "cannot create temp dir" +fi + +mkdir -p -- "${MAVEN_HOME%/*}" + +# 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" + +# select .zip or .tar.gz +if ! command -v unzip >/dev/null; then + distributionUrl="${distributionUrl%.zip}.tar.gz" + distributionUrlName="${distributionUrl##*/}" +fi + +# 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( java.net.URI.create( args[0] ).toURL().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 "$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." >&2 + echo "Please install either command, or disable validation by removing 'distributionSha256Sum' from your maven-wrapper.properties." >&2 + exit 1 + fi + 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 + +# 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 + +# Find the actual extracted directory name (handles snapshots where filename != directory name) +actualDistributionDir="" + +# First try the expected directory name (for regular distributions) +if [ -d "$TMP_DOWNLOAD_DIR/$distributionUrlNameMain" ]; then + if [ -f "$TMP_DOWNLOAD_DIR/$distributionUrlNameMain/bin/$MVN_CMD" ]; then + actualDistributionDir="$distributionUrlNameMain" + fi +fi + +# If not found, search for any directory with the Maven executable (for snapshots) +if [ -z "$actualDistributionDir" ]; then + # enable globbing to iterate over items + set +f + for dir in "$TMP_DOWNLOAD_DIR"/*; do + if [ -d "$dir" ]; then + if [ -f "$dir/bin/$MVN_CMD" ]; then + actualDistributionDir="$(basename "$dir")" + break + fi + fi + done + set -f +fi + +if [ -z "$actualDistributionDir" ]; then + verbose "Contents of $TMP_DOWNLOAD_DIR:" + verbose "$(ls -la "$TMP_DOWNLOAD_DIR")" + die "Could not find Maven distribution directory in extracted archive" +fi + +verbose "Found extracted Maven distribution directory: $actualDistributionDir" +printf %s\\n "$distributionUrl" >"$TMP_DOWNLOAD_DIR/$actualDistributionDir/mvnw.url" +mv -- "$TMP_DOWNLOAD_DIR/$actualDistributionDir" "$MAVEN_HOME" || [ -d "$MAVEN_HOME" ] || die "fail to move MAVEN_HOME" + +clean || : +exec_maven "$@" diff --git a/mvnw.cmd b/mvnw.cmd new file mode 100644 index 0000000..92450f9 --- /dev/null +++ b/mvnw.cmd @@ -0,0 +1,189 @@ +<# : batch portion +@REM ---------------------------------------------------------------------------- +@REM Licensed to the Apache Software Foundation (ASF) under one +@REM or more contributor license agreements. See the NOTICE file +@REM distributed with this work for additional information +@REM regarding copyright ownership. The ASF licenses this file +@REM to you under the Apache License, Version 2.0 (the +@REM "License"); you may not use this file except in compliance +@REM with the License. You may obtain a copy of the License at +@REM +@REM http://www.apache.org/licenses/LICENSE-2.0 +@REM +@REM Unless required by applicable law or agreed to in writing, +@REM software distributed under the License is distributed on an +@REM "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY +@REM KIND, either express or implied. See the License for the +@REM specific language governing permissions and limitations +@REM under the License. +@REM ---------------------------------------------------------------------------- + +@REM ---------------------------------------------------------------------------- +@REM Apache Maven Wrapper startup batch script, version 3.3.4 +@REM +@REM Optional ENV vars +@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 ---------------------------------------------------------------------------- + +@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) +) +@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 -eq $False) { "/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_M2_PATH = "$HOME/.m2" +if ($env:MAVEN_USER_HOME) { + $MAVEN_M2_PATH = "$env:MAVEN_USER_HOME" +} + +if (-not (Test-Path -Path $MAVEN_M2_PATH)) { + New-Item -Path $MAVEN_M2_PATH -ItemType Directory | Out-Null +} + +$MAVEN_WRAPPER_DISTS = $null +if ((Get-Item $MAVEN_M2_PATH).Target[0] -eq $null) { + $MAVEN_WRAPPER_DISTS = "$MAVEN_M2_PATH/wrapper/dists" +} else { + $MAVEN_WRAPPER_DISTS = (Get-Item $MAVEN_M2_PATH).Target[0] + "/wrapper/dists" +} + +$MAVEN_HOME_PARENT = "$MAVEN_WRAPPER_DISTS/$distributionUrlNameMain" +$MAVEN_HOME_NAME = ([System.Security.Cryptography.SHA256]::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 + +# Find the actual extracted directory name (handles snapshots where filename != directory name) +$actualDistributionDir = "" + +# First try the expected directory name (for regular distributions) +$expectedPath = Join-Path "$TMP_DOWNLOAD_DIR" "$distributionUrlNameMain" +$expectedMvnPath = Join-Path "$expectedPath" "bin/$MVN_CMD" +if ((Test-Path -Path $expectedPath -PathType Container) -and (Test-Path -Path $expectedMvnPath -PathType Leaf)) { + $actualDistributionDir = $distributionUrlNameMain +} + +# If not found, search for any directory with the Maven executable (for snapshots) +if (!$actualDistributionDir) { + Get-ChildItem -Path "$TMP_DOWNLOAD_DIR" -Directory | ForEach-Object { + $testPath = Join-Path $_.FullName "bin/$MVN_CMD" + if (Test-Path -Path $testPath -PathType Leaf) { + $actualDistributionDir = $_.Name + } + } +} + +if (!$actualDistributionDir) { + Write-Error "Could not find Maven distribution directory in extracted archive" +} + +Write-Verbose "Found extracted Maven distribution directory: $actualDistributionDir" +Rename-Item -Path "$TMP_DOWNLOAD_DIR/$actualDistributionDir" -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" diff --git a/pom.xml b/pom.xml new file mode 100644 index 0000000..3614cc4 --- /dev/null +++ b/pom.xml @@ -0,0 +1,171 @@ + + + 4.0.0 + + org.springframework.boot + spring-boot-starter-parent + 3.5.7 + + + de.tamse + image-converter + 0.0.1-SNAPSHOT + image-converter + image-converter + + + + + + + + + + + + + + + 17 + 3.12.0 + 1.4.0 + 0.1.6 + + + + + org.springframework.boot + spring-boot-starter + + + + com.twelvemonkeys.imageio + imageio-core + ${twelvemonkeys.version} + + + com.twelvemonkeys.imageio + imageio-tiff + ${twelvemonkeys.version} + + + com.twelvemonkeys.imageio + imageio-psd + ${twelvemonkeys.version} + + + com.twelvemonkeys.imageio + imageio-bmp + ${twelvemonkeys.version} + + + com.twelvemonkeys.imageio + imageio-pnm + ${twelvemonkeys.version} + + + com.twelvemonkeys.imageio + imageio-jpeg + ${twelvemonkeys.version} + + + com.twelvemonkeys.imageio + imageio-pcx + ${twelvemonkeys.version} + + + com.twelvemonkeys.imageio + imageio-batik + ${twelvemonkeys.version} + + + org.apache.xmlgraphics + batik-transcoder + 1.19 + + + com.twelvemonkeys.imageio + imageio-tga + ${twelvemonkeys.version} + + + com.twelvemonkeys.imageio + imageio-hdr + ${twelvemonkeys.version} + + + com.twelvemonkeys.imageio + imageio-iff + ${twelvemonkeys.version} + + + com.twelvemonkeys.imageio + imageio-sgi + ${twelvemonkeys.version} + + + com.twelvemonkeys.imageio + imageio-pict + ${twelvemonkeys.version} + + + com.twelvemonkeys.imageio + imageio-webp + ${twelvemonkeys.version} + + + com.twelvemonkeys.imageio + imageio-hdr + ${twelvemonkeys.version} + + + com.twelvemonkeys.imageio + imageio-xwd + ${twelvemonkeys.version} + + + com.twelvemonkeys.imageio + imageio-dds + ${twelvemonkeys.version} + + + com.github.jai-imageio + jai-imageio-core + ${jai.version} + true + + + com.github.jai-imageio + jai-imageio-jpeg2000 + ${jai.version} + true + + + + + + + org.springframework.boot + spring-boot-starter-test + test + + + + + + + org.springframework.boot + spring-boot-maven-plugin + + + + + diff --git a/prd/Bildkonvertierung Java.md b/prd/Bildkonvertierung Java.md new file mode 100644 index 0000000..9cdd61d --- /dev/null +++ b/prd/Bildkonvertierung Java.md @@ -0,0 +1,310 @@ +# PRD – Java‑native Bildkonvertierung (Spring Boot, OSS) + +**Ziel:** Plattformneutrale (Linux/Windows, Docker/K8s) Java‑Komponente zur Konvertierung beliebiger Eingangsbildformate in ein konfigurierbares Zielformat (Standard: PNG), ohne native Abhängigkeiten oder OS‑Pakete. + +--- + +## 1. Hintergrund & Motivation + +- Ingest erhält Bilder aus heterogenen Quellen (JPEG, TIFF, PSD, PNM/TGA/IFF/ICNS, WebP, ggf. JP2 …). +- Kundenanforderung: *Keine* nativen Tools/OS‑Pakete; alles soll innerhalb des Java‑Artefakts laufen. +- ImageIO + Plugins (TwelveMonkeys, JP2/WebP) decken breite Formate ab. HEIC ist **out of scope** in dieser OSS‑Variante (kann später mit kommerziellen Libs ergänzt werden). + +--- + +## 2. Scope + +**In Scope** + +- Java/Spring Boot‑Bibliothek + optionaler REST‑Controller. +- Übergabe **byte[]** (Quellbild), Liste **erlaubter Zielformate** und **präferiertes Zielformat**. +- Wenn Quellformat ∈ erlaubte Zielformate → **unverändert** zurückgeben. +- Sonst Konvertierung → **präferiertes Zielformat**. +- Optionaler Qualitätsparameter (0..1) für verlustbehaftete Formate (JPEG/WebP). +- Mehrseitige Formate (TIFF/ICO/animierte GIFs): mindestens **Frame 0**; API erweitertbar für `frameIndex`. +- SPI‑basierte Formatdetektion (ImageIO) ohne MIME‑Erkennung; Tika optional (Adapter, nicht standardmäßig aktiv). + +**Out of Scope (Phase 1)** + +- HEIC/HEIF, AVIF, JPEG‑XL (kann in Phase 2 über JDeli/Aspose Imaging ergänzt werden). +- Komplettes Metadaten‑/ICC‑Profile‑Roundtripping (nur baseline: übernehmen, sofern Writer/Format es unterstützt). +- Animations-Erhalt (z. B. GIF→GIF animiert). Standard: erstes Frame. + +--- + +## 3. Ziele & Akzeptanzkriterien + +**Funktional** + +1. `negotiateAndConvert(byte[], allowed, preferred, quality)` liefert: + - **Unverändert**es Byte‑Array falls Quellformat∈allowed erkannt wird. + - Andernfalls konvertiert in `preferred` unter Beachtung des Quality‑Hints (falls anwendbar). +2. Erkennung des Quellformats ohne MIME‑Type ausschließlich über ImageIO/SPI. +3. Unterstützte Ziel‑Formate mindestens: **PNG, JPEG, GIF, BMP, TIFF**, optional **WEBP**, optional **JP2**. + +**Nicht‑funktional** + +- **Portabel**: läuft identisch auf **Linux** und **Windows** Containern. +- **Zero‑native**: keine OS‑Pakete, nur Java‑Abhängigkeiten. +- **Lieferform**: Spring‑Boot‑Fat‑JAR oder Layered‑JAR; Container‑Image ohne zusätzliche Systemlibs. +- **Performance**: Einzelbild‑Konvertierung < 150 ms (warm) für 2–8 MP JPEG→PNG auf x86\_64 Server‑HW (Anhaltswert). +- **Speicher**: hartes Limit pro Bild verifizierbar (z. B. 128 MB Heap‑Budget pro Request) via Größe‑/Dimension‑Checks. + +--- + +## 4. Architektur & Design + +### 4.1 Komponenten + +- ``** (enum)**: hält `extension`, `mimeType`, `imageIoFormatName` (z. B. PNG→"png"). +- ``: generische Konvertierung `InputStream → byte[]` in gewünschtes Zielformat; optional `frameIndex` & `quality`. +- ``: nimmt `byte[]` + `allowedTargets` + `preferredTarget`; nutzt ImageIO‑SPI, entscheidet Pass‑Through vs. Konvertierung. +- **(Optional) REST‑Controller**: Multipart‑Endpoint `/convert` und `/negotiate`. + +### 4.2 Datenfluss + +1. `negotiateAndConvert` erstellt `ImageInputStream` auf `byte[]`. +2. `ImageIO.getImageReaders(iis)` → erster `ImageReader` + `ImageReaderSpi` → Namen/Suffixe/MIMEs sammeln; Vergleich mit `allowedTargets`. +3. Wenn Match → Rückgabe `byte[]` unverändert. Sonst → `ImageConversionService.convert(..., preferred)`. + +### 4.3 SPI & Plugins + +- **ImageIO‑SPI** lädt Reader/Writer per `META-INF/services` der Abhängigkeiten. +- **TwelveMonkeys** erweitert u. a. TIFF/PSD/PNM/TGA/IFF/ICNS u. v. m. +- **JP2** über `jai-imageio-jpeg2000` (optional; Lizenzhinweis JJ2000 beachten). +- **WebP** über `org.sejda.imageio:webp-imageio` (optional). + +### 4.4 Fehlermanagement + +- **Technische Fehler**: `IOException` (I/O), `IndexOutOfBoundsException` (Frame), `IllegalArgumentException` (Parametrisierung) → REST: 4xx/5xx mapping. +- **Unsupported**: kein Reader/Writer gefunden → 415 (Unsupported Media Type) im REST‑Layer. + +### 4.5 Sicherheit/Robustheit + +- **Input‑Limits**: Max‑Bytes pro Upload (z. B. 32 MB), Max‑Dimension (z. B. 12k×12k), Max‑Frames. +- **ZIP/Decompress‑Bomb Schutz**: Ablehnung extrem großer Canvas/Pixelanzahlen; frühzeitiges Abbrechen. +- **Timeouts**: Konvertierung per `@Async`/Executor mit Timeout (Controller‑Schicht) optional. +- **Dependency Hygiene**: regelm. Updates (TwelveMonkeys/WebP/JP2), CVE‑Monitoring. + +### 4.6 Observability & Logging + +- **Micrometer**: Timer `image.convert`, Tags: `src.detected`, `dst.format`, `converted` (true/false), `exception`. +- **Structured Logging**: auf INFO: Zusammenfassung (ohne PII/Bilddaten), DEBUG: techn. Details. + +--- + +## 5. Öffentliche API (Java) + +### 5.1 Enum `OutputImageFormat` + +- Felder: `defaultExtension:String`, `mimeType:String`, `imageIoFormatName:String`. +- Werte (Phase 1): `PNG, JPEG, GIF, BMP, TIFF` (+ optional `WEBP`, `JP2`). +- Methoden: `extension()`, `mimeType()`, `imageIoFormatName()`, `fromExtension(String)`. + +### 5.2 `ImageConversionService` + +```java +byte[] convert(InputStream in, OutputImageFormat target, Float quality) throws IOException; +byte[] convert(InputStream in, OutputImageFormat target, int frameIndex, Float quality) throws IOException; +``` + +### 5.3 `ImageFormatNegotiatorService` + +```java +NegotiationResult negotiateAndConvert(byte[] sourceBytes, + List allowedTargets, + OutputImageFormat preferredTarget, + Float quality) throws IOException; + +final class NegotiationResult { + byte[] data(); + OutputImageFormat finalFormat(); + boolean converted(); + String detectedSourceFormat(); // optional +} +``` + +### 5.4 REST (optional) + +- `POST /convert` (multipart: `file`, `target`, optional `quality`) +- `POST /negotiate` (multipart: `file`, `allowed`=CSV, `preferred`, optional `quality`) +- Responses: `200 OK` mit `Content-Type` gemäß Zielformat; `415` bei nicht unterstützten Quellen/Zielen. + +### 5.5 CSV-Parser `ImageFormatParsers` + +```java +List allowed = ImageFormatParsers.parseCsv(params.getAllowed()); +OutputImageFormat preferred = ImageFormatParsers.lookup(params.getPreferred()) + .orElseThrow(() -> new IllegalArgumentException("Unsupported preferred format")); +if (!allowed.contains(preferred)) { + throw new IllegalArgumentException("Preferred must be included in allowed"); +} +List defaults = ImageFormatParsers.parseCsvLenient(env.getProperty("images.allowed-default")); +``` + +--- + +## 6. Build & Packaging + +- **Spring Boot**: `spring-boot-maven-plugin` → `repackage` Fat‑JAR (Nested JARs in `BOOT-INF/lib`). +- **Ohne Shade** empfohlen: SPI‑Files bleiben automatisch intakt. +- **Falls Shade unbedingt nötig**: `ServicesResourceTransformer` aktivieren (merge `META-INF/services`). +- **Container**: Base `eclipse-temurin:21-jre` (Linux) bzw. Windows‑Servercore‑Variante; nur JAR kopieren. + +--- + +## 7. Abhängigkeiten (Beispiel‑POM, Versionen als Property) + +- `com.twelvemonkeys.imageio:imageio-core`, `imageio-tiff`, `imageio-psd`, optional `imageio-pnm`, `imageio-tga`, `imageio-iff`, `imageio-icns` … +- **Optional JP2**: `com.github.jai-imageio:jai-imageio-core`, `jai-imageio-jpeg2000` (Lizenz prüfen) +- **Optional WebP**: `org.sejda.imageio:webp-imageio` + +--- + +## 8. Konfiguration + +`application.yml` (Beispiele): + +```yaml +images: + allowed-default: [PNG, JPEG] + preferred-default: PNG + max-bytes: 33554432 # 32 MB + max-width: 12000 + max-height: 12000 + max-frames: 1 +``` + +--- + +## 9. Teststrategie + +**Unit‑Tests** + +- Parametrisierte Tests über alle `OutputImageFormat` Ziele (PNG/JPEG/GIF/BMP/TIFF/[WEBP]/[JP2]). +- Erkennungstests: Reader/SPI‑Detection für diverse Quellen (jpg/jpeg, tif/tiff, pnm/ppm/pgm, tga, icns, iff/ilbm, psd, png, gif, bmp, webp, jp2) – kleine Testbilder ins Repo (Lizenzfrei!). +- Negotiation‑Pfad: (a) pass‑through, (b) convert, (c) unsupported. +- Quality‑Pfad: JPEG/WebP Qualität 0.6/0.9. +- Fehlerpfade: korruptes Bild, leeres Byte‑Array, zu groß, falscher FrameIndex. + +**Integration‑Tests** + +- REST‑Endpoints mit Multipart; Content‑Type und Dateiname (Endung vom Enum) verifizieren. + +**Performance‑Tests** + +- Warmlauf + Messung (JMH oder simple Stopwatch) für typische Größen (2MP, 8MP). + +--- + +## 10. Risiken & Gegenmaßnahmen + +- **Plugin‑Abdeckung**: WebP/JP2 benötigen Zusatzmodule → klare Optionalität & Feature‑Flags. +- **Große Bilder/DoS**: harte Limits, frühzeitiger Abbruch. +- **Metadatenverlust**: dokumentieren; falls relevant, Folge‑Ticket für EXIF/ICC‑Handling. +- **Lizenzthemen JP2**: JJ2000‑Lizenz prüfen, Compliance aufnehmen. + +--- + +## 11. Erweiterungen (Phase 2) + +- **HEIC/HEIF**: via JDeli oder Aspose.Imaging (kommerziell), gleiche API beibehalten. +- **Mehrseiten‑Handling**: Seitenliste/Range, Animationserhalt für GIF/WebP. +- **Farbraum**: explizites ICC‑Profile‑Handling & Konvertierung. + +--- + +## 12. Umsetzungsfahrplan (für Codex) + +1. **Enum** `OutputImageFormat` anlegen (PNG/JPEG/GIF/BMP/TIFF + optional WEBP/JP2). +2. **Service** `ImageConversionService` implementieren (Reader→BufferedImage→Writer; Quality nur wenn `canWriteCompressed`). +3. **Negotiator** `ImageFormatNegotiatorService` implementieren (SPI‑Detection via `ImageReaderSpi`: Namen/Suffixe/MIMEs; Pass‑Through vs. Convert). +4. **Controller** (optional) + DTOs + Validation. +5. **POM**: TwelveMonkeys‑Module + optional WebP/JP2. +6. **Tests**: Unit + Integration + Beispielbilder. +7. **Observability**: Micrometer‑Timer & Logs. +8. **Dockerfile** (Linux), optional Windows‑Image; K8s‑Manifest‑Snippets (Resources/Limits/Probes). + +--- + +## 13. Akzeptanz‑Checkliste (DoD) + +- + +--- + +## 14. Anhang – Code‑Skeletons (Kurz) + +**Enum** (Auszug) + +```java +enum OutputImageFormat { + PNG("png", "image/png", "png"), + JPEG("jpg", "image/jpeg", "jpeg"), + GIF("gif", "image/gif", "gif"), + BMP("bmp", "image/bmp", "bmp"), + TIFF("tiff", "image/tiff", "tiff"), + WEBP("webp", "image/webp", "webp"), // optional + JP2("jp2", "image/jp2", "jpeg2000"); // optional + // getter + fromExtension +} +``` + +**ImageConversionService** (Signaturen siehe §5.2) – BufferedImage lesen/schreiben; `ImageWriteParam` nur bei `canWriteCompressed()` + `setCompressionQuality(quality)`. + +**Negotiator** – `ImageReaderSpi` inspizieren (`getFormatNames()`, `getFileSuffixes()`, `getMIMETypes()`), tolerante Matches für jpg/jpeg & tif/tiff. + +**POM Snippets** + +```xml + + com.twelvemonkeys.imageio + imageio-core + ${twelvemonkeys.version} + + + com.twelvemonkeys.imageio + imageio-tiff + ${twelvemonkeys.version} + + + com.twelvemonkeys.imageio + imageio-psd + ${twelvemonkeys.version} + + + + + com.github.jai-imageio + jai-imageio-core + ${jai.version} + + + com.github.jai-imageio + jai-imageio-jpeg2000 + ${jai.version} + + + + org.sejda.imageio + webp-imageio + ${webp.version} + +``` + +**Build** + +- `spring-boot-maven-plugin` → `repackage` Fat‑JAR. +- (Nur falls Shade) `ServicesResourceTransformer` zum Mergen der `META-INF/services`. + +**Docker (Linux, Beispiel)** + +```dockerfile +FROM eclipse-temurin:21-jre +WORKDIR /opt/app +COPY target/app.jar app.jar +ENTRYPOINT ["java","-jar","/opt/app/app.jar"] +``` + +— Ende — + diff --git a/prd/OutputImageFormat-Parser.md b/prd/OutputImageFormat-Parser.md new file mode 100644 index 0000000..8c2fb0a --- /dev/null +++ b/prd/OutputImageFormat-Parser.md @@ -0,0 +1,170 @@ +# PRD – CSV→OutputImageFormat Parser (Erweiterung zum „PRD – Java‑native Bildkonvertierung“) + +**Ziel:** Robustes Parsen einer komma‑separierten Zeichenkette (CSV) in eine **ordnungserhaltende, doppeltfreie** `List` – **ohne** externe Abhängigkeiten. Unterstützt **Synonyme** (z. B. `jpg`→`JPEG`, `tif`→`TIFF`), führende Punkte (`.jpg`), **MIME‑Typen** (`image/jpeg`) und **ImageIO‑Formatnamen** (`jpeg`). Fehlerhafte Tokens führen wahlweise zu **Exception** oder werden „lenient“ ignoriert. + +> Dieses PRD ergänzt das bestehende Dokument „PRD – Java‑native Bildkonvertierung (Spring Boot, OSS)“ und liefert die Spezifikation für den CSV‑Parser, der z. B. REST‑Parameter `allowed` (CSV) in `List` transformiert. + +--- +## 1. Scope +**In Scope** +- Utility‑Klasse zum Parsen einer CSV‑Liste in `List`. +- Case‑insensitive, Whitespace‑tolerant, führende `.` entfernen. +- Synonym‑Mapping für verbreitete Varianten (jpg/jpeg, tif/tiff, jp2/j2k/jpeg2000, webp, mime‑typen etc.). +- **Dedup** bei gleichzeitigem Erhalt der **Eingabereihenfolge**. +- Zwei Modi: + - **Strict:** Unbekannte Tokens → `IllegalArgumentException`. + - **Lenient:** Unbekannte Tokens werden **ignoriert**. +- Öffentliche Helper‑API für Single‑Token‑Lookup. + +**Out of Scope** +- Validierung gegen tatsächlich installierte Writer/Reader (das übernimmt die Konvertierungsschicht). +- Automatisches Nachladen von externen Plugins. + +--- +## 2. Nicht‑funktionale Anforderungen +- **Zero‑Deps**: reine JDK‑Funktionen, keine Tika/Guava etc. +- **Performance**: O(n) über Anzahl Tokens; Lookup über vorkompilierte `Map`. +- **Threadsafety**: statische, unveränderliche Lookup‑Map (unmodifiable); Parser‑Methoden sind reentrant und thread‑safe. +- **Internationalisierung**: nicht relevant (Tokens sind technische Kürzel/MIME‑Typen). + +--- +## 3. Domänenmodell / Abhängigkeiten +- **`OutputImageFormat` (Enum)** aus der Haupt‑PRD: liefert `extension`, `mimeType`, `imageIoFormatName`, `name()`. +- Synonyme werden **aus dem Enum** abgeleitet und um gebräuchliche Aliasse ergänzt: + - `JPEG` ⇄ `jpg` / `jpeg` / `image/jpeg` + - `TIFF` ⇄ `tif` / `tiff` / `image/tiff` + - `PNG` ⇄ `png` / `image/png` + - `BMP` ⇄ `bmp` / `image/bmp` + - `GIF` ⇄ `gif` / `image/gif` + - `WEBP` ⇄ `webp` / `image/webp` + - `JP2` ⇄ `jp2` / `j2k` / `jpeg2000` / `image/jp2` + +> Hinweis: Falls einzelne Enum‑Werte (WEBP/JP2) im Projekt deaktiviert werden, bleibt das Mapping konsistent – Keys auf nicht existierende Enum‑Werte entfallen. + +--- +## 4. Öffentliche API +```java +public final class ImageFormatParsers { + /** Strict: unbekannte Tokens -> IllegalArgumentException */ + public static List parseCsv(String csv); + + /** Lenient: unbekannte Tokens werden ignoriert */ + public static List parseCsvLenient(String csv); + + /** Einzel‑Token‑Lookup (case‑insensitive, . entfernt, Synonyme & MIME) */ + public static Optional lookup(String token); +} +``` + +**Verhalten** +- `null` oder leere/blank CSV → leere Liste. +- Trennung: `,` (Komma). Whitespace wird getrimmt, führende `.` entfernt (z. B. `.jpg`). +- Reihenfolge: Erstes Vorkommen gewinnt; weitere Duplikate werden ignoriert (LinkedHashSet‑Semantik). +- **Strict**: Tokens, die keinem Format zugeordnet werden können, sammeln und am Ende `IllegalArgumentException` mit Auflistung werfen. +- **Lenient**: Unbekannte Tokens stillschweigend überspringen. + +--- +## 5. Implementierungsdetails +- Statische `Map LOOKUP` mit allen erlaubten Schlüsseln (kleingeschrieben): + - `enum.name()` → `png`, `jpeg`, … (kleinbuchstabig) + - `extension()` → `png`, `jpg`, `tiff`, … + - `imageIoFormatName()` → typ. `png`, `jpeg`, `tiff` … + - `mimeType()` → `image/png`, `image/jpeg`, … + - **Zusatz‑Synonyme** je nach Enumwert (siehe §3). +- `normalize(String)`: + - `trim()`, `toLowerCase(Locale.ROOT)`, führenden Punkt entfernen. +- Deduplizierung: `LinkedHashSet` → anschließend in `List.copyOf(...)`. + +**Beispiel (Strict)** +``` +"PNG, JPEG, .tif, image/webp, png, jpg" → [PNG, JPEG, TIFF, WEBP] +``` + +--- +## 6. Teststrategie (JUnit 5) +**Testklasse:** `ImageFormatParsersTest` + +**A. Positivfälle** +1. **Grundlegend**: `"PNG,JPEG"` → `[PNG, JPEG]` (Reihenfolge, Größe=2). +2. **Synonyme**: `"jpg,JPEG"` → `[JPEG]`; `"tif,TIFF"` → `[TIFF]`. +3. **MIME‑Tokens**: `"image/jpeg, image/tiff"` → `[JPEG, TIFF]`. +4. **ImageIO‑Formatname**: `"jpeg,tiff"` → `[JPEG, TIFF]`. +5. **Führender Punkt**: `".jpg, .tif"` → `[JPEG, TIFF]`. +6. **Whitespace & Case**: `" PnG , jPeG "` → `[PNG, JPEG]`. +7. **Dedup & Reihenfolge**: `"PNG, JPEG, png, jpeg"` → `[PNG, JPEG]`; `"jpeg,png,jpeg"` → `[JPEG, PNG]`. +8. **JP2‑Aliasse** (falls Enum enthält): `"j2k, jpeg2000, JP2"` → `[JP2]`. + +**B. Strict‑Fehlerfälle** +9. **Unbekanntes Token**: `"foo,PNG"` → `IllegalArgumentException` mit Hinweis auf `foo`. +10. **Nur Unbekannt**: `"foo,bar"` → `IllegalArgumentException` (Liste aller unbekannten Tokens). + +**C. Lenient‑Variante** +11. `"foo, PNG, bar"` → `[PNG]` (keine Exception). + +**D. Kantenfälle** +12. **Leer/Null**: `null` → `[]`, `" "` → `[]`. +13. **Doppelte Kommas**: `","` bzw. `"PNG,,JPEG"` → `[PNG, JPEG]`. + +**Hilfen** +- Parametrisierte Tests (`@ParameterizedTest`) für Synonym‑Mengen. +- AssertJ/JUnit Assertions für Reihenfolge & Inhalt. + +--- +## 7. Integration in die bestehende Lösung +- REST‑Controller: `allowed` (CSV) → `ImageFormatParsers.parseCsv(...)`; `preferred` (String) → `lookup(...)` + Fehler, wenn `preferred ∉ allowed`. +- `ImageFormatNegotiatorService`: Die geparste `allowedTargets`‑Liste und `preferredTarget` direkt übergeben. +- Konfiguration: Optionale Default‑Liste in `application.yml` (z. B. `images.allowed-default: "PNG,JPEG"`) – beim Booten parsen. + +--- +## 8. Akzeptanzkriterien (DoD) +- [ ] `parseCsv` (strict) wirft bei unbekannten Tokens eine `IllegalArgumentException` mit Token‑Liste. +- [ ] `parseCsvLenient` ignoriert unbekannte Tokens und gibt bekannte in Eingabereihenfolge (dedupliziert) zurück. +- [ ] Unterstützt Synonyme inkl. führender `.` und MIME‑Strings. +- [ ] Testabdeckung ≥ 90 % für `ImageFormatParsers` (Branches: strict/lenient, Synonyme, Kantenfälle). +- [ ] Thread‑safety gegeben (LOOKUP unveränderlich, Methoden reentrant). + +--- +## 9. Aufgabenliste (für Codex) +1. Klasse `ImageFormatParsers` anlegen, `LOOKUP` aus `OutputImageFormat` ableiten und Synonyme ergänzen. +2. Methoden `parseCsv`, `parseCsvLenient`, `lookup` implementieren. +3. Testklasse `ImageFormatParsersTest` mit den o. g. Fällen (JUnit 5, AssertJ optional) implementieren. +4. Beispiel‑Snippet in README/PRD (Verwendung aus REST‑Controller) ergänzen. + +--- +## 10. Beispiel‑Snippets +**Verwendung (REST)** +```java +List allowed = ImageFormatParsers.parseCsv(params.getAllowed()); +OutputImageFormat preferred = ImageFormatParsers.lookup(params.getPreferred()) + .orElseThrow(() -> new IllegalArgumentException("Unsupported preferred format")); +if (!allowed.contains(preferred)) { + throw new IllegalArgumentException("Preferred must be included in allowed"); +} +``` + +**Lenient‑Konfiguration** +```java +List defaults = ImageFormatParsers.parseCsvLenient(env.getProperty("images.allowed-default")); +``` + +--- +## 11. Paket & Dateistruktur (Vorschlag) +``` +src/main/java/com/example/images/ + OutputImageFormat.java + ImageFormatParsers.java + ImageConversionService.java + ImageFormatNegotiatorService.java + +src/test/java/com/example/images/ + ImageFormatParsersTest.java +``` + +--- +## 12. Risiken & Gegenmaßnahmen +- **Token‑Drift**: Neue Enum‑Werte → Lookup beim Start aus Enum ableiten, Zusatz‑Synonyme zentral. +- **Fehlkonfiguration**: `preferred ∉ allowed` → Validierung in REST/Service‑Schicht. +- **Uneinheitliche Schreibweisen**: Abgefangen durch Normalisierung (trim, lowercase, Strip leading `.`). + +— Ende — + diff --git a/src/main/java/de/tamse/imageconverter/ImageConverterApplication.java b/src/main/java/de/tamse/imageconverter/ImageConverterApplication.java new file mode 100644 index 0000000..ab999f7 --- /dev/null +++ b/src/main/java/de/tamse/imageconverter/ImageConverterApplication.java @@ -0,0 +1,13 @@ +package de.tamse.imageconverter; + +import org.springframework.boot.SpringApplication; +import org.springframework.boot.autoconfigure.SpringBootApplication; + +@SpringBootApplication +public class ImageConverterApplication { + + public static void main(String[] args) { + SpringApplication.run(ImageConverterApplication.class, args); + } + +} diff --git a/src/main/java/de/tamse/imageconverter/format/ImageConversionService.java b/src/main/java/de/tamse/imageconverter/format/ImageConversionService.java new file mode 100644 index 0000000..7d6fad1 --- /dev/null +++ b/src/main/java/de/tamse/imageconverter/format/ImageConversionService.java @@ -0,0 +1,157 @@ +package de.tamse.imageconverter.format; + +import java.awt.AlphaComposite; +import java.awt.Color; +import java.awt.Graphics2D; +import java.awt.image.BufferedImage; +import java.io.ByteArrayOutputStream; +import java.io.IOException; +import java.io.InputStream; +import java.util.Iterator; +import java.util.Objects; + +import javax.imageio.IIOImage; +import javax.imageio.ImageIO; +import javax.imageio.ImageReader; +import javax.imageio.ImageWriteParam; +import javax.imageio.ImageWriter; +import javax.imageio.stream.ImageInputStream; +import javax.imageio.stream.ImageOutputStream; + +import org.springframework.stereotype.Service; + +/** + * Performs format conversions while keeping the implementation free from native dependencies. + */ +@Service +public class ImageConversionService { + + private static final float DEFAULT_QUALITY = 1.0f; // Default quality for JPEG + + /** + * Converts the input image to the specified target format. + * + * @param in the input stream containing the source image data. Must not be null. + * @param target the desired {@link OutputImageFormat}. Must not be null. + * @param quality the JPEG quality factor to use when converting to JPEG. It must be + * a value between 0 and 1 inclusive. A {@code null} value indicates + * the default quality defined by the underlying ImageIO writer. + * @return a byte array containing the converted image data in the requested format. + * @throws IOException if an I/O error occurs during the conversion process. + */ + public byte[] convert(InputStream in, OutputImageFormat target, Float quality) throws IOException { + return convert(in, target, 0, quality); + } + + public byte[] convert(InputStream in, OutputImageFormat target, int frameIndex, Float quality) throws IOException { + Objects.requireNonNull(in, "InputStream must not be null"); + Objects.requireNonNull(target, "Target format must not be null"); + validateFrameIndex(frameIndex); + + try (ImageInputStream imageInputStream = ImageIO.createImageInputStream(in)) { + if (imageInputStream == null) { + throw new IOException("Unable to create ImageInputStream for conversion"); + } + ImageReader reader = nextReader(imageInputStream); + try { + reader.setInput(imageInputStream, false, true); + int availableFrames = countFrames(reader); + validateFrameAvailability(frameIndex, availableFrames); + BufferedImage source = reader.read(frameIndex); + BufferedImage prepared = prepareImage(source, target); + + return writeConvertedImage(prepared, target, quality); + } finally { + reader.dispose(); + } + } + } + + private void validateFrameIndex(int frameIndex) { + if (frameIndex < 0) { + throw new IllegalArgumentException("frameIndex must be >= 0"); + } + } + + private void validateFrameAvailability(int frameIndex, int availableFrames) { + if (availableFrames >= 0 && frameIndex >= availableFrames) { + throw new IndexOutOfBoundsException("Requested frame " + frameIndex + " but only " + availableFrames + " available"); + } + } + + private int countFrames(ImageReader reader) throws IOException { + try { + return reader.getNumImages(true); + } catch (UnsupportedOperationException ex) { + return -1; + } + } + + private ImageReader nextReader(ImageInputStream stream) throws IOException { + Iterator readers = ImageIO.getImageReaders(stream); + if (!readers.hasNext()) { + throw new IOException("Unsupported source image format – no ImageIO reader available"); + } + ImageReader reader = readers.next(); + stream.seek(0); + return reader; + } + + private ImageWriter nextWriter(OutputImageFormat target) throws IOException { + Iterator writers = ImageIO.getImageWritersByFormatName(target.imageIoFormatName()); + if (!writers.hasNext()) { + throw new IOException("No ImageIO writer found for target format " + target); + } + return writers.next(); + } + + private ImageWriteParam configureWriteParam(ImageWriter writer, Float quality) { + ImageWriteParam writeParam = writer.getDefaultWriteParam(); + validateQuality(quality); + if (writeParam.canWriteCompressed()) { + writeParam.setCompressionMode(ImageWriteParam.MODE_EXPLICIT); + writeParam.setCompressionQuality(quality != null ? quality : DEFAULT_QUALITY); + } + return writeParam; + } + + private void validateQuality(Float quality) { + if (quality == null) { + return; + } + if (quality < 0f || quality > 1f) { + throw new IllegalArgumentException("quality must be between 0 and 1"); + } + } + + private byte[] writeConvertedImage(BufferedImage prepared, OutputImageFormat target, Float quality) throws IOException { + ByteArrayOutputStream byteStream = new ByteArrayOutputStream(); + ImageWriter writer = nextWriter(target); + try (ImageOutputStream ios = ImageIO.createImageOutputStream(byteStream)) { + writer.setOutput(ios); + ImageWriteParam writeParam = configureWriteParam(writer, quality); + IIOImage output = new IIOImage(prepared, null, null); + writer.write(null, output, writeParam); + } finally { + writer.dispose(); + } + return byteStream.toByteArray(); + } + + private BufferedImage prepareImage(BufferedImage source, OutputImageFormat target) { + if (target == OutputImageFormat.JPEG) { + BufferedImage converted = new BufferedImage(source.getWidth(), source.getHeight(), BufferedImage.TYPE_INT_RGB); + Graphics2D graphics = converted.createGraphics(); + try { + graphics.setComposite(AlphaComposite.Src); + graphics.setColor(Color.WHITE); + graphics.fillRect(0, 0, source.getWidth(), source.getHeight()); + graphics.drawImage(source, 0, 0, null); + } finally { + graphics.dispose(); + } + return converted; + } + return source; + } +} diff --git a/src/main/java/de/tamse/imageconverter/format/ImageFormatNegotiatorService.java b/src/main/java/de/tamse/imageconverter/format/ImageFormatNegotiatorService.java new file mode 100644 index 0000000..542c826 --- /dev/null +++ b/src/main/java/de/tamse/imageconverter/format/ImageFormatNegotiatorService.java @@ -0,0 +1,166 @@ +package de.tamse.imageconverter.format; + +import java.io.ByteArrayInputStream; +import java.io.IOException; +import java.util.ArrayList; +import java.util.Arrays; +import java.util.Collection; +import java.util.List; +import java.util.Objects; +import java.util.Optional; +import java.util.stream.Collectors; + +import javax.imageio.ImageIO; +import javax.imageio.ImageReader; +import javax.imageio.spi.ImageReaderSpi; +import javax.imageio.stream.ImageInputStream; + +import org.springframework.stereotype.Service; + +/** + * Service for negotiating the image format and converting images as needed. + * + *

This service determines the format of an input image and, if that format is not + * among the allowed target formats, converts the image to the preferred target format + * using {@link ImageConversionService}. The conversion respects the specified + * quality settings for lossy formats.

+ * + *

Clients typically invoke {@link #negotiateAndConvert(byte[], java.util.List, de.tamse.imageconverter.format.OutputImageFormat, java.lang.Float)} + * to obtain a {@link NegotiationResult} that contains the resulting image bytes, + * the final format, and metadata about the conversion.

+ * + * @see NegotiationResult + * @see ImageConversionService + */ +@Service +public class ImageFormatNegotiatorService { + + private final ImageConversionService conversionService; + + public ImageFormatNegotiatorService(ImageConversionService conversionService) { + this.conversionService = conversionService; + } + +/** + * Negotiates the format of an image and performs conversion if the detected format is not allowed. + * + *

If the source image format matches one of the {@code allowedTargets}, no conversion is performed and the + * original byte array is returned. Otherwise the image is converted to {@code preferredTarget} + * using the configured {@link ImageConversionService}.

+ * + * @param sourceBytes the raw image bytes + * @param allowedTargets list of permitted target formats + * @param preferredTarget the format to convert to if necessary + * @param quality the image quality for lossy formats, may be {@code null} + * @return a {@link NegotiationResult} containing the resulting bytes, the final format and flags + * @throws IOException if reading or converting the image fails + */ + public NegotiationResult negotiateAndConvert(byte[] sourceBytes, + List allowedTargets, + OutputImageFormat preferredTarget, + Float quality) throws IOException { + Objects.requireNonNull(sourceBytes, "sourceBytes must not be null"); + Objects.requireNonNull(allowedTargets, "allowedTargets must not be null"); + Objects.requireNonNull(preferredTarget, "preferredTarget must not be null"); + + if (sourceBytes.length == 0) { + throw new IllegalArgumentException("sourceBytes must not be empty"); + } + if (allowedTargets.isEmpty()) { + throw new IllegalArgumentException("allowedTargets must contain at least one format"); + } + if (!allowedTargets.contains(preferredTarget)) { + throw new IllegalArgumentException("preferredTarget must be part of allowedTargets"); + } + + Optional detected = detectFormat(sourceBytes); + if (detected.isPresent() && allowedTargets.contains(detected.get())) { + return new NegotiationResult(sourceBytes, detected.get(), false, detected.get().name()); + } + + byte[] converted = conversionService.convert(new ByteArrayInputStream(sourceBytes), preferredTarget, quality); + return new NegotiationResult(converted, + preferredTarget, + true, + detected.map(OutputImageFormat::name).orElse(null)); + } + + private Optional detectFormat(byte[] sourceBytes) throws IOException { + try (ImageInputStream stream = ImageIO.createImageInputStream(new ByteArrayInputStream(sourceBytes))) { + if (stream == null) { + return Optional.empty(); + } + ImageReader reader = nextReader(stream); + if (reader == null) { + return Optional.empty(); + } + try { + reader.setInput(stream, true, true); + ImageReaderSpi spi = reader.getOriginatingProvider(); + if (spi != null) { + List candidates = new ArrayList<>(); + addAll(candidates, spi.getFormatNames()); + addAll(candidates, spi.getFileSuffixes()); + addAll(candidates, spi.getMIMETypes()); + Optional matched = match(candidates); + if (matched.isPresent()) { + return matched; + } + } + String formatName = reader.getFormatName(); + return match(List.of(formatName)); + } finally { + reader.dispose(); + } + } + } + + private ImageReader nextReader(ImageInputStream stream) throws IOException { + var readers = ImageIO.getImageReaders(stream); + if (!readers.hasNext()) { + return null; + } + ImageReader reader = readers.next(); + stream.seek(0); + return reader; + } + + private void addAll(Collection target, String[] values) { + if (values == null) { + return; + } + target.addAll(Arrays.stream(values).filter(Objects::nonNull).collect(Collectors.toList())); + } + + private Optional match(Collection candidates) { + if (candidates == null) { + return Optional.empty(); + } + for (String candidate : candidates) { + if (candidate == null) { + continue; + } + Optional format = OutputImageFormat.fromAny(List.of(candidate)); + if (format.isPresent()) { + return format; + } + } + return Optional.empty(); + } + + /** + * Represents the result of negotiating and potentially converting an image. + * Contains the resulting image data, the final format, a flag indicating whether + * conversion occurred, and the detected source format. + * + * @param data The resulting image data. + * @param finalFormat The final format of the image. + * @param converted Indicates whether the image was converted. + * @param detectedSourceFormat The format detected in the image source. + */ + public record NegotiationResult(byte[] data, + OutputImageFormat finalFormat, + boolean converted, + String detectedSourceFormat) { + } +} diff --git a/src/main/java/de/tamse/imageconverter/format/ImageFormatParsers.java b/src/main/java/de/tamse/imageconverter/format/ImageFormatParsers.java new file mode 100644 index 0000000..22f7ad6 --- /dev/null +++ b/src/main/java/de/tamse/imageconverter/format/ImageFormatParsers.java @@ -0,0 +1,134 @@ +package de.tamse.imageconverter.format; + +import java.util.ArrayList; +import java.util.HashMap; +import java.util.LinkedHashSet; +import java.util.List; +import java.util.Locale; +import java.util.Map; +import java.util.Optional; +import java.util.Set; + +/** + * Utility methods for turning user supplied format identifiers into {@link OutputImageFormat} values. + * + *

The parser accepts comma separated values (CSV) that may contain common aliases such as + * file extensions, MIME types, ImageIO format names, enum names and well known synonyms + * (e.g. {@code jpg}, {@code image/jpeg}). Tokens are matched in a case-insensitive manner, + * leading dots are ignored and duplicates are removed while preserving the original order.

+ */ +public final class ImageFormatParsers { + + private static final Map LOOKUP = buildLookup(); + + private ImageFormatParsers() { + throw new UnsupportedOperationException("Utility class"); + } + + /** + * Parses a comma separated list of format identifiers into {@link OutputImageFormat} values. + * Unknown tokens cause an {@link IllegalArgumentException}. + * + * @param csv the CSV representation, may be {@code null} + * @return deduplicated formats in input order + */ + public static List parseCsv(String csv) { + return parseCsvInternal(csv, true); + } + + /** + * Parses a comma separated list of format identifiers into {@link OutputImageFormat} values. + * Unknown tokens are ignored. + * + * @param csv the CSV representation, may be {@code null} + * @return deduplicated formats in input order + */ + public static List parseCsvLenient(String csv) { + return parseCsvInternal(csv, false); + } + + /** + * Resolves a single token to an {@link OutputImageFormat}. + * + * @param token the user supplied token, may be {@code null} + * @return the matching format if one exists + */ + public static Optional lookup(String token) { + String normalized = normalize(token); + if (normalized.isEmpty()) { + return Optional.empty(); + } + return Optional.ofNullable(LOOKUP.get(normalized)); + } + + private static List parseCsvInternal(String csv, boolean strict) { + if (csv == null || csv.trim().isEmpty()) { + return List.of(); + } + + LinkedHashSet formats = new LinkedHashSet<>(); + List unknownTokens = strict ? new ArrayList<>() : List.of(); + + for (String rawToken : csv.split(",")) { + String normalized = normalize(rawToken); + if (normalized.isEmpty()) { + continue; + } + OutputImageFormat format = LOOKUP.get(normalized); + if (format != null) { + formats.add(format); + } else if (strict) { + unknownTokens.add(rawToken == null ? "" : rawToken.trim()); + } + } + + if (strict && !unknownTokens.isEmpty()) { + throw new IllegalArgumentException("Unrecognized image format tokens: " + unknownTokens); + } + + return List.copyOf(formats); + } + + private static Map buildLookup() { + Map map = new HashMap<>(); + for (OutputImageFormat format : OutputImageFormat.values()) { + OutputImageFormat canonical = canonical(format); + Set aliases = format.aliases(); + for (String alias : aliases) { + String normalized = normalize(alias); + if (normalized.isEmpty()) { + continue; + } + map.put(normalized, canonical); + } + } + return Map.copyOf(map); + } + + private static String normalize(String token) { + if (token == null) { + return ""; + } + String trimmed = token.trim(); + if (trimmed.isEmpty()) { + return ""; + } + int index = 0; + while (index < trimmed.length() && trimmed.charAt(index) == '.') { + index++; + } + String stripped = trimmed.substring(index).trim(); + if (stripped.isEmpty()) { + return ""; + } + return stripped.toLowerCase(Locale.ROOT); + } + + private static OutputImageFormat canonical(OutputImageFormat format) { + return switch (format) { + case JPG -> OutputImageFormat.JPEG; + case TIF -> OutputImageFormat.TIFF; + default -> format; + }; + } +} diff --git a/src/main/java/de/tamse/imageconverter/format/OutputImageFormat.java b/src/main/java/de/tamse/imageconverter/format/OutputImageFormat.java new file mode 100644 index 0000000..bb9465a --- /dev/null +++ b/src/main/java/de/tamse/imageconverter/format/OutputImageFormat.java @@ -0,0 +1,137 @@ +package de.tamse.imageconverter.format; + +import java.util.Arrays; +import java.util.Collection; +import java.util.Collections; +import java.util.Locale; +import java.util.Objects; +import java.util.Optional; +import java.util.Set; +import java.util.stream.Collectors; + +/** + * Canonical list of output image formats supported by the conversion pipeline. + */ +public enum OutputImageFormat { + + BIGTIFF("bigtiff", "image/tiff", "bigtiff"), + BMP("bmp", "image/bmp", "image/x-ms-bmp", "bmp"), + CUR("cur", "image/x-icon", "cur"), + DCX("dcx", "image/x-dcx", "dcx"), + DDS("dds", "image/vnd.ms-dds", "image/x-dds", "dds"), + GIF("gif", "image/gif", "gif"), + HDR("hdr", "image/vnd.radiance", "image/x-hdr", "hdr"), + ICO("ico", "image/x-icon", "ico"), + IFF("iff", "image/iff", "image/x-iff", "iff"), + JPEG("jpeg", "image/jpeg", "jpeg"), + JPEG2000("jpeg2000", "image/jp2", "image/jpeg2000", "jpeg2000", "jp2", "j2k"), + JPEGLS("jpeg-lossless", "image/jpeg", "jpeg-lossless"), + JPG("jpg", "image/jpeg", "jpg"), + PAM("pam", "image/x-portable-arbitrarymap", "pam"), + PBM("pbm", "image/x-portable-bitmap", "pbm"), + PCT("pct", "image/pict", "image/x-pict", "pct"), + PCX("pcx", "image/x-pcx", "pcx"), + PFM("pfm", "image/x-portable-floatmap", "pfm"), + PGM("pgm", "image/x-portable-graymap", "pgm"), + PICT("pict", "image/pict", "pict"), + PNG("png", "image/png", "png"), + PNM("pnm", "image/x-portable-anymap", "pnm"), + PNTG("pntg", "image/x-macpaint", "pntg"), + PPM("ppm", "image/x-portable-pixmap", "ppm"), + PSB("psb", "image/vnd.adobe.photoshop", "psb"), + PSD("psd", "image/vnd.adobe.photoshop", "psd"), + RAW("raw", "image/x-raw", "image/x-dcraw", "raw"), + RGBE("rgbe", "image/vnd.radiance", "rgbe"), + SGI("sgi", "image/sgi", "image/x-sgi", "sgi"), + SVG("svg", "image/svg+xml", "svg"), + TARGA("targa", "image/x-tga", "targa", "tga"), + TGA("tga", "image/x-tga", "tga"), + TIF("tif", "image/tiff", "tif"), + TIFF("tiff", "image/tiff", "tiff"), + WBMP("wbmp", "image/vnd.wap.wbmp", "wbmp"), + WBP("wbp", "image/webp", "wbp"), + WEBP("webp", "image/webp", "webp"), + WMF("wmf", "image/wmf", "application/x-msmetafile", "wmf"), + XWD("xwd", "image/x-xwindowdump", "xwd"); + + private final String defaultExtension; + private final String mimeType; + private final String imageIoFormatName; + private final Set aliases; + + OutputImageFormat(String defaultExtension, String mimeType, String... additionalAliases) { + this.defaultExtension = Objects.requireNonNull(defaultExtension, "defaultExtension"); + this.mimeType = Objects.requireNonNull(mimeType, "mimeType"); + imageIoFormatName = Objects.requireNonNull(defaultExtension, "defaultExtension"); + aliases = buildAliases(additionalAliases); + } + + private Set buildAliases(String[] additionalAliases) { + Set collected = Arrays.stream(additionalAliases == null ? new String[0] : additionalAliases) + .filter(Objects::nonNull) + .map(OutputImageFormat::normalize) + .collect(Collectors.toSet()); + collected.add(normalize(defaultExtension)); + collected.add(normalize(mimeType)); + collected.add(normalize(imageIoFormatName)); + collected.add(normalize(name())); + return Collections.unmodifiableSet(collected); + } + + public String defaultExtension() { + return defaultExtension; + } + + public String mimeType() { + return mimeType; + } + + public String imageIoFormatName() { + return imageIoFormatName; + } + + public boolean matches(String candidate) { + if (candidate == null) { + return false; + } + return aliases.contains(normalize(candidate)); + } + + public static Optional fromAny(Collection candidates) { + if (candidates == null) { + return Optional.empty(); + } + return candidates.stream() + .filter(Objects::nonNull) + .map(OutputImageFormat::normalize) + .map(OutputImageFormat::fromNormalized) + .flatMap(Optional::stream) + .findFirst(); + } + + public static OutputImageFormat fromExtension(String extension) { + return fromNormalized(normalize(extension)) + .orElseThrow(() -> new IllegalArgumentException("Unsupported image format extension: " + extension)); + } + + private static Optional fromNormalized(String normalized) { + if (normalized == null) { + return Optional.empty(); + } + for (OutputImageFormat format : values()) { + if (format.aliases.contains(normalized)) { + return Optional.of(format); + } + } + return Optional.empty(); + } + + private static String normalize(String value) { + return value == null ? null : value.trim().toLowerCase(Locale.ROOT); + } + + public Set aliases() { + return aliases; + } + +} diff --git a/src/main/resources/application.properties b/src/main/resources/application.properties new file mode 100644 index 0000000..7d13217 --- /dev/null +++ b/src/main/resources/application.properties @@ -0,0 +1 @@ +spring.application.name=image-converter diff --git a/src/test/java/de/tamse/imageconverter/ImageConverterApplicationTests.java b/src/test/java/de/tamse/imageconverter/ImageConverterApplicationTests.java new file mode 100644 index 0000000..787c290 --- /dev/null +++ b/src/test/java/de/tamse/imageconverter/ImageConverterApplicationTests.java @@ -0,0 +1,17 @@ +package de.tamse.imageconverter; + +import org.junit.jupiter.api.Test; +import org.springframework.boot.test.context.SpringBootTest; + +import javax.imageio.ImageIO; +import java.util.Arrays; + +@SpringBootTest +class ImageConverterApplicationTests { + + @Test + void contextLoads() { + Arrays.stream(ImageIO.getReaderFormatNames()).sorted().toList().forEach(System.out::println); + } + +} diff --git a/src/test/java/de/tamse/imageconverter/format/ImageConversionServiceTests.java b/src/test/java/de/tamse/imageconverter/format/ImageConversionServiceTests.java new file mode 100644 index 0000000..18657aa --- /dev/null +++ b/src/test/java/de/tamse/imageconverter/format/ImageConversionServiceTests.java @@ -0,0 +1,79 @@ +package de.tamse.imageconverter.format; + +import static org.junit.jupiter.api.Assertions.assertTrue; + +import java.io.IOException; +import java.io.InputStream; +import java.net.URISyntaxException; +import java.nio.file.Files; +import java.nio.file.Path; +import java.nio.file.Paths; +import java.nio.file.StandardOpenOption; +import java.util.List; +import java.util.Locale; +import java.util.stream.Collectors; +import java.util.stream.Stream; + +import org.junit.jupiter.params.ParameterizedTest; +import org.junit.jupiter.params.provider.Arguments; +import org.junit.jupiter.params.provider.MethodSource; + +import javax.imageio.ImageIO; + +class ImageConversionServiceTests { + + private final ImageConversionService conversionService = new ImageConversionService(); + + static Stream imageAndTargets() throws IOException, URISyntaxException { + Path imagesDir = locateImagesDirectory(); + + ImageIO.getImageReadersBySuffix("svg").forEachRemaining(System.out::println); + +/* + List targets = List.of(OutputImageFormat.PNG, OutputImageFormat.JPEG, OutputImageFormat.GIF); +*/ + List targets = List.of(OutputImageFormat.PNG); + try (Stream files = Files.list(imagesDir)) { + List arguments = files + .filter(Files::isRegularFile) + .sorted() + .map(path -> Arguments.of(path, targets)) + .collect(Collectors.toList()); + return arguments.stream(); + } + } + + @ParameterizedTest(name = "convert {0} into multiple formats") + @MethodSource("imageAndTargets") + void convertsImageIntoDesiredFormats(Path image, List targets) throws IOException { + Path outputDir = Paths.get("target", "converter-result"); + Files.createDirectories(outputDir); + + for (OutputImageFormat target : targets) { + try (InputStream inputStream = Files.newInputStream(image)) { + byte[] converted = conversionService.convert(inputStream, target, (Float) null); + Path outputPath = outputDir.resolve(buildOutputFileName(image, target)); + Files.write(outputPath, converted, StandardOpenOption.CREATE, StandardOpenOption.TRUNCATE_EXISTING); + assertTrue(Files.exists(outputPath), "Converted file should exist: " + outputPath); + assertTrue(Files.size(outputPath) > 0, "Converted file should not be empty: " + outputPath); + } + } + } + + private static Path locateImagesDirectory() throws IOException, URISyntaxException { + var resourceUrl = ImageConversionServiceTests.class.getClassLoader().getResource("test-images"); + if (resourceUrl == null) { + throw new IOException("test-images resource directory not found on classpath"); + } + return Path.of(resourceUrl.toURI()); + } + + private static String buildOutputFileName(Path image, OutputImageFormat target) { + String baseName = sanitiseExtension(image.getFileName().toString()); + return baseName + "." + target.defaultExtension(); + } + + private static String sanitiseExtension(String fileName) { + return fileName.replace('.', '_'); + } +} diff --git a/src/test/java/de/tamse/imageconverter/format/ImageFormatNegotiatorServiceTests.java b/src/test/java/de/tamse/imageconverter/format/ImageFormatNegotiatorServiceTests.java new file mode 100644 index 0000000..da4e5d3 --- /dev/null +++ b/src/test/java/de/tamse/imageconverter/format/ImageFormatNegotiatorServiceTests.java @@ -0,0 +1,104 @@ +package de.tamse.imageconverter.format; + +import static org.assertj.core.api.Assertions.assertThat; +import static org.assertj.core.api.Assertions.assertThatThrownBy; + +import java.awt.Color; +import java.awt.Graphics2D; +import java.awt.image.BufferedImage; +import java.io.ByteArrayInputStream; +import java.io.ByteArrayOutputStream; +import java.io.IOException; +import java.util.List; + +import javax.imageio.ImageIO; + +import org.junit.jupiter.api.BeforeEach; +import org.junit.jupiter.api.Test; + +class ImageFormatNegotiatorServiceTests { + + private ImageConversionService conversionService; + private ImageFormatNegotiatorService negotiatorService; + + @BeforeEach + void setUp() { + conversionService = new ImageConversionService(); + negotiatorService = new ImageFormatNegotiatorService(conversionService); + } + + @Test + void returnsOriginalWhenSourceAlreadyAllowed() throws IOException { + byte[] pngData = sampleImage(OutputImageFormat.PNG); + + ImageFormatNegotiatorService.NegotiationResult result = negotiatorService.negotiateAndConvert( + pngData, + List.of(OutputImageFormat.PNG, OutputImageFormat.JPEG), + OutputImageFormat.PNG, + null + ); + + assertThat(result.converted()).isFalse(); + assertThat(result.data()).isSameAs(pngData); + assertThat(result.finalFormat()).isEqualTo(OutputImageFormat.PNG); + assertThat(result.detectedSourceFormat()).isNotNull(); + } + + @Test + void convertsWhenPreferredDiffersFromDetected() throws IOException { + byte[] pngData = sampleImage(OutputImageFormat.PNG); + + ImageFormatNegotiatorService.NegotiationResult result = negotiatorService.negotiateAndConvert( + pngData, + List.of(OutputImageFormat.JPEG), + OutputImageFormat.JPEG, + 0.8f + ); + + assertThat(result.converted()).isTrue(); + assertThat(result.data()).isNotSameAs(pngData); + assertThat(result.data()).isNotEqualTo(pngData); + assertThat(result.finalFormat()).isEqualTo(OutputImageFormat.JPEG); + assertThat(result.detectedSourceFormat()).isNotNull(); + } + + @Test + void rejectsPreferredNotInAllowedList() { + byte[] pngData = new byte[]{1, 2, 3}; + + assertThatThrownBy(() -> negotiatorService.negotiateAndConvert( + pngData, + List.of(OutputImageFormat.PNG), + OutputImageFormat.JPEG, + null + )).isInstanceOf(IllegalArgumentException.class); + } + + @Test + void conversionRejectsFrameOutOfBounds() { + byte[] pngData = sampleImage(OutputImageFormat.PNG); + + assertThatThrownBy(() -> conversionService.convert(new ByteArrayInputStream(pngData), OutputImageFormat.PNG, 1, null)) + .isInstanceOf(IndexOutOfBoundsException.class); + } + + private byte[] sampleImage(OutputImageFormat format) { + try { + BufferedImage image = new BufferedImage(32, 32, BufferedImage.TYPE_INT_ARGB); + Graphics2D graphics = image.createGraphics(); + try { + graphics.setColor(new Color(100, 150, 200, 180)); + graphics.fillRect(0, 0, 32, 32); + graphics.setColor(Color.BLACK); + graphics.drawString("Image", 4, 20); + } finally { + graphics.dispose(); + } + ByteArrayOutputStream baos = new ByteArrayOutputStream(); + ImageIO.write(image, format.imageIoFormatName(), baos); + return baos.toByteArray(); + } catch (IOException ex) { + throw new IllegalStateException("Failed to generate sample image", ex); + } + } +} diff --git a/src/test/java/de/tamse/imageconverter/format/ImageFormatParsersTest.java b/src/test/java/de/tamse/imageconverter/format/ImageFormatParsersTest.java new file mode 100644 index 0000000..25075a9 --- /dev/null +++ b/src/test/java/de/tamse/imageconverter/format/ImageFormatParsersTest.java @@ -0,0 +1,112 @@ +package de.tamse.imageconverter.format; + +import static org.assertj.core.api.Assertions.assertThat; +import static org.assertj.core.api.Assertions.assertThatThrownBy; + +import java.util.List; +import java.util.Optional; + +import org.junit.jupiter.api.Test; + +class ImageFormatParsersTest { + + @Test + void parsesBasicCsvStrict() { + assertThat(ImageFormatParsers.parseCsv("PNG,JPEG")) + .containsExactly(OutputImageFormat.PNG, OutputImageFormat.JPEG); + } + + @Test + void mergesJpegSynonymsIntoCanonicalFormat() { + assertThat(ImageFormatParsers.parseCsv("jpg,JPEG")) + .containsExactly(OutputImageFormat.JPEG); + } + + @Test + void mergesTiffSynonymsIntoCanonicalFormat() { + assertThat(ImageFormatParsers.parseCsv("tif,TIFF")) + .containsExactly(OutputImageFormat.TIFF); + } + + @Test + void supportsMimeTypeTokens() { + assertThat(ImageFormatParsers.parseCsv("image/jpeg, image/tiff")) + .containsExactly(OutputImageFormat.JPEG, OutputImageFormat.TIFF); + } + + @Test + void supportsImageIoFormatNames() { + assertThat(ImageFormatParsers.parseCsv("jpeg,tiff")) + .containsExactly(OutputImageFormat.JPEG, OutputImageFormat.TIFF); + } + + @Test + void stripsLeadingDotsAndWhitespace() { + assertThat(ImageFormatParsers.parseCsv(" .jpg ,\t.tif ")) + .containsExactly(OutputImageFormat.JPEG, OutputImageFormat.TIFF); + } + + @Test + void keepsFirstOccurrenceOrderWhileDeduplicating() { + assertThat(ImageFormatParsers.parseCsv("PNG, JPEG, png, jpeg")) + .containsExactly(OutputImageFormat.PNG, OutputImageFormat.JPEG); + assertThat(ImageFormatParsers.parseCsv("jpeg,png,jpeg")) + .containsExactly(OutputImageFormat.JPEG, OutputImageFormat.PNG); + } + + @Test + void resolvesJp2SynonymsWhenAvailable() { + Optional resolved = ImageFormatParsers.lookup("jp2"); + resolved.ifPresent(format -> assertThat(ImageFormatParsers.parseCsv("j2k, jpeg2000, JP2")) + .containsExactly(format)); + } + + @Test + void strictModeCollectsUnknownTokens() { + assertThatThrownBy(() -> ImageFormatParsers.parseCsv("foo,PNG")) + .isInstanceOf(IllegalArgumentException.class) + .hasMessageContaining("foo"); + } + + @Test + void strictModeFailsWhenOnlyUnknownTokensProvided() { + assertThatThrownBy(() -> ImageFormatParsers.parseCsv("foo,bar")) + .isInstanceOf(IllegalArgumentException.class) + .hasMessageContaining("foo") + .hasMessageContaining("bar"); + } + + @Test + void lenientModeSkipsUnknownTokens() { + assertThat(ImageFormatParsers.parseCsvLenient("foo, PNG, bar")) + .containsExactly(OutputImageFormat.PNG); + } + + @Test + void handlesNullAndBlankInput() { + assertThat(ImageFormatParsers.parseCsv(null)).isEmpty(); + assertThat(ImageFormatParsers.parseCsv(" ")).isEmpty(); + } + + @Test + void ignoresEmptyTokensBetweenCommas() { + assertThat(ImageFormatParsers.parseCsv(",")).isEmpty(); + assertThat(ImageFormatParsers.parseCsv("PNG,,JPEG")) + .containsExactly(OutputImageFormat.PNG, OutputImageFormat.JPEG); + } + + @Test + void lookupSupportsSynonyms() { + assertThat(ImageFormatParsers.lookup("image/jpeg")) + .contains(OutputImageFormat.JPEG); + assertThat(ImageFormatParsers.lookup(".TiF")) + .contains(OutputImageFormat.TIFF); + } + + @Test + void lookupReturnsEmptyForUnknownOrBlankTokens() { + assertThat(ImageFormatParsers.lookup("unknown")).isEmpty(); + assertThat(ImageFormatParsers.lookup(" ")).isEmpty(); + assertThat(ImageFormatParsers.lookup(null)).isEmpty(); + } +} diff --git a/src/test/java/de/tamse/imageconverter/format/OutputImageFormatTests.java b/src/test/java/de/tamse/imageconverter/format/OutputImageFormatTests.java new file mode 100644 index 0000000..8eafb39 --- /dev/null +++ b/src/test/java/de/tamse/imageconverter/format/OutputImageFormatTests.java @@ -0,0 +1,27 @@ +package de.tamse.imageconverter.format; + +import static org.assertj.core.api.Assertions.assertThat; +import static org.assertj.core.api.Assertions.assertThatThrownBy; + +import java.util.List; + +import org.junit.jupiter.api.Test; + +class OutputImageFormatTests { + + @Test + void resolvesByExtensionIgnoringCase() { + assertThat(OutputImageFormat.fromExtension("JpEg")).isEqualTo(OutputImageFormat.JPEG); + } + + @Test + void resolvesByMimeType() { + assertThat(OutputImageFormat.fromAny(List.of("image/png"))).contains(OutputImageFormat.PNG); + } + + @Test + void rejectsUnknownExtension() { + assertThatThrownBy(() -> OutputImageFormat.fromExtension("unknown")) + .isInstanceOf(IllegalArgumentException.class); + } +} diff --git a/src/test/resources/test-images/1.sm.webp b/src/test/resources/test-images/1.sm.webp new file mode 100644 index 0000000..0da983e Binary files /dev/null and b/src/test/resources/test-images/1.sm.webp differ diff --git a/src/test/resources/test-images/2764.svg b/src/test/resources/test-images/2764.svg new file mode 100644 index 0000000..7eb5c59 --- /dev/null +++ b/src/test/resources/test-images/2764.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/src/test/resources/test-images/bmp-example-file-download-1024x1024.bmp b/src/test/resources/test-images/bmp-example-file-download-1024x1024.bmp new file mode 100644 index 0000000..fc57b55 Binary files /dev/null and b/src/test/resources/test-images/bmp-example-file-download-1024x1024.bmp differ diff --git a/src/test/resources/test-images/cat.pcx b/src/test/resources/test-images/cat.pcx new file mode 100644 index 0000000..f021bad Binary files /dev/null and b/src/test/resources/test-images/cat.pcx differ diff --git a/src/test/resources/test-images/file_example_GIF_500kB.gif b/src/test/resources/test-images/file_example_GIF_500kB.gif new file mode 100644 index 0000000..4c05e6a Binary files /dev/null and b/src/test/resources/test-images/file_example_GIF_500kB.gif differ diff --git a/src/test/resources/test-images/file_example_JPG_100kB.jpg b/src/test/resources/test-images/file_example_JPG_100kB.jpg new file mode 100644 index 0000000..1db39e0 Binary files /dev/null and b/src/test/resources/test-images/file_example_JPG_100kB.jpg differ diff --git a/src/test/resources/test-images/file_example_PNG_500kB.png b/src/test/resources/test-images/file_example_PNG_500kB.png new file mode 100644 index 0000000..0218b6e Binary files /dev/null and b/src/test/resources/test-images/file_example_PNG_500kB.png differ diff --git a/src/test/resources/test-images/file_example_TIFF_10MB.tiff b/src/test/resources/test-images/file_example_TIFF_10MB.tiff new file mode 100644 index 0000000..c9d37ff Binary files /dev/null and b/src/test/resources/test-images/file_example_TIFF_10MB.tiff differ diff --git a/src/test/resources/test-images/hopper.psd b/src/test/resources/test-images/hopper.psd new file mode 100644 index 0000000..5ec686c Binary files /dev/null and b/src/test/resources/test-images/hopper.psd differ diff --git a/src/test/resources/test-images/sample.gif b/src/test/resources/test-images/sample.gif new file mode 100644 index 0000000..7f3014c Binary files /dev/null and b/src/test/resources/test-images/sample.gif differ diff --git a/src/test/resources/test-images/sample.jpg b/src/test/resources/test-images/sample.jpg new file mode 100644 index 0000000..037da0e Binary files /dev/null and b/src/test/resources/test-images/sample.jpg differ diff --git a/src/test/resources/test-images/sample.png b/src/test/resources/test-images/sample.png new file mode 100644 index 0000000..0db347d Binary files /dev/null and b/src/test/resources/test-images/sample.png differ diff --git a/src/test/resources/test-images/zelda.tga b/src/test/resources/test-images/zelda.tga new file mode 100644 index 0000000..6a04190 Binary files /dev/null and b/src/test/resources/test-images/zelda.tga differ