mirror of
https://github.com/tiennm99/java-design-patterns.git
synced 2026-05-14 08:58:26 +00:00
8d139234f3
Bumps [org.projectlombok:lombok](https://github.com/projectlombok/lombok) from 1.18.36 to 1.18.38. - [Changelog](https://github.com/projectlombok/lombok/blob/master/doc/changelog.markdown) - [Commits](https://github.com/projectlombok/lombok/compare/v1.18.36...v1.18.38) --- updated-dependencies: - dependency-name: org.projectlombok:lombok dependency-version: 1.18.38 dependency-type: direct:production update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] <support@github.com> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
503 lines
18 KiB
XML
503 lines
18 KiB
XML
<?xml version="1.0" encoding="UTF-8"?>
|
|
<!--
|
|
|
|
This project is licensed under the MIT license. Module model-view-viewmodel is using ZK framework licensed under LGPL (see lgpl-3.0.txt).
|
|
|
|
The MIT License
|
|
Copyright © 2014-2022 Ilkka Seppälä
|
|
|
|
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.
|
|
|
|
-->
|
|
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
|
|
<modelVersion>4.0.0</modelVersion>
|
|
<groupId>com.iluwatar</groupId>
|
|
<artifactId>java-design-patterns</artifactId>
|
|
<version>1.26.0-SNAPSHOT</version>
|
|
<packaging>pom</packaging>
|
|
<inceptionYear>2014-2022</inceptionYear>
|
|
<name>Java Design Patterns</name>
|
|
<description>Java Design Patterns</description>
|
|
<properties>
|
|
<!-- General properties -->
|
|
<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
|
|
|
|
<!-- Spring Boot related dependencies. Keep these in sync! -->
|
|
<spring-boot.version>3.4.4</spring-boot.version>
|
|
<junit.version>5.11.4</junit.version>
|
|
<mockito.version>5.14.2</mockito.version>
|
|
<logback.version>1.5.18</logback.version>
|
|
<slf4j.version>2.0.17</slf4j.version>
|
|
|
|
<!-- Other dependencies -->
|
|
<jacoco.version>0.8.12</jacoco.version>
|
|
<commons-dbcp.version>1.4</commons-dbcp.version>
|
|
<htmlunit.version>4.7.0</htmlunit.version>
|
|
<gson.version>2.11.0</gson.version>
|
|
<guice.version>6.0.0</guice.version>
|
|
<system-lambda.version>1.1.0</system-lambda.version>
|
|
<lombok.version>1.18.38</lombok.version>
|
|
<mongo.version>5.4.0</mongo.version>
|
|
<bson.version>5.4.0</bson.version>
|
|
<h2.version>2.3.232</h2.version>
|
|
|
|
<!-- Plugins -->
|
|
<maven-surefire-plugin.version>3.5.2</maven-surefire-plugin.version>
|
|
<license-maven-plugin.version>4.6</license-maven-plugin.version>
|
|
<maven-compiler-plugin.version>3.14.0</maven-compiler-plugin.version>
|
|
|
|
<!-- SonarCloud -->
|
|
<sonar-maven-plugin.version>5.0.0.4389</sonar-maven-plugin.version>
|
|
<sonar.host.url>https://sonarcloud.io</sonar.host.url>
|
|
<sonar.organization>iluwatar</sonar.organization>
|
|
<sonar.projectKey>iluwatar_java-design-patterns</sonar.projectKey>
|
|
<sonar.moduleKey>${project.artifactId}</sonar.moduleKey>
|
|
<sonar.projectName>Java Design Patterns</sonar.projectName>
|
|
</properties>
|
|
<modules>
|
|
<module>abstract-document</module>
|
|
<module>abstract-factory</module>
|
|
<module>active-object</module>
|
|
<module>acyclic-visitor</module>
|
|
<module>adapter</module>
|
|
<module>ambassador</module>
|
|
<module>anti-corruption-layer</module>
|
|
<module>arrange-act-assert</module>
|
|
<module>async-method-invocation</module>
|
|
<module>balking</module>
|
|
<module>bloc</module>
|
|
<module>bridge</module>
|
|
<module>builder</module>
|
|
<module>business-delegate</module>
|
|
<module>bytecode</module>
|
|
<module>caching</module>
|
|
<module>callback</module>
|
|
<module>chain-of-responsibility</module>
|
|
<module>circuit-breaker</module>
|
|
<module>clean-architecture</module>
|
|
<module>client-session</module>
|
|
<module>collecting-parameter</module>
|
|
<module>collection-pipeline</module>
|
|
<module>combinator</module>
|
|
<module>command</module>
|
|
<module>command-query-responsibility-segregation</module>
|
|
<module>commander</module>
|
|
<module>component</module>
|
|
<module>composite</module>
|
|
<module>composite-entity</module>
|
|
<module>composite-view</module>
|
|
<module>context-object</module>
|
|
<module>converter</module>
|
|
<module>curiously-recurring-template-pattern</module>
|
|
<module>currying</module>
|
|
<module>data-access-object</module>
|
|
<module>data-bus</module>
|
|
<module>data-locality</module>
|
|
<module>data-mapper</module>
|
|
<module>data-transfer-object</module>
|
|
<module>decorator</module>
|
|
<module>delegation</module>
|
|
<module>dependency-injection</module>
|
|
<module>dirty-flag</module>
|
|
<module>domain-model</module>
|
|
<module>double-buffer</module>
|
|
<module>double-checked-locking</module>
|
|
<module>double-dispatch</module>
|
|
<module>dynamic-proxy</module>
|
|
<module>event-aggregator</module>
|
|
<module>event-based-asynchronous</module>
|
|
<module>event-driven-architecture</module>
|
|
<module>event-queue</module>
|
|
<module>event-sourcing</module>
|
|
<module>execute-around</module>
|
|
<module>extension-objects</module>
|
|
<module>facade</module>
|
|
<module>factory</module>
|
|
<module>factory-kit</module>
|
|
<module>factory-method</module>
|
|
<module>fanout-fanin</module>
|
|
<module>feature-toggle</module>
|
|
<module>filterer</module>
|
|
<module>fluent-interface</module>
|
|
<module>flux</module>
|
|
<module>flyweight</module>
|
|
<module>front-controller</module>
|
|
<module>function-composition</module>
|
|
<module>game-loop</module>
|
|
<module>gateway</module>
|
|
<module>guarded-suspension</module>
|
|
<module>half-sync-half-async</module>
|
|
<module>health-check</module>
|
|
<module>hexagonal-architecture</module>
|
|
<module>identity-map</module>
|
|
<module>intercepting-filter</module>
|
|
<module>interpreter</module>
|
|
<module>iterator</module>
|
|
<module>layered-architecture</module>
|
|
<module>lazy-loading</module>
|
|
<module>leader-election</module>
|
|
<module>leader-followers</module>
|
|
<module>lockable-object</module>
|
|
<module>map-reduce</module>
|
|
<module>marker-interface</module>
|
|
<module>master-worker</module>
|
|
<module>mediator</module>
|
|
<module>memento</module>
|
|
<module>metadata-mapping</module>
|
|
<module>microservices-aggregrator</module>
|
|
<module>microservices-api-gateway</module>
|
|
<module>microservices-client-side-ui-composition</module>
|
|
<module>microservices-distributed-tracing</module>
|
|
<module>microservices-idempotent-consumer</module>
|
|
<module>microservices-log-aggregation</module>
|
|
<module>model-view-controller</module>
|
|
<module>model-view-intent</module>
|
|
<module>model-view-presenter</module>
|
|
<module>model-view-viewmodel</module>
|
|
<module>monad</module>
|
|
<module>money</module>
|
|
<module>monitor</module>
|
|
<module>monolithic-architecture</module>
|
|
<module>monostate</module>
|
|
<module>multiton</module>
|
|
<module>mute-idiom</module>
|
|
<module>notification</module>
|
|
<module>null-object</module>
|
|
<module>object-mother</module>
|
|
<module>object-pool</module>
|
|
<module>observer</module>
|
|
<module>optimistic-offline-lock</module>
|
|
<module>page-controller</module>
|
|
<module>page-object</module>
|
|
<module>parameter-object</module>
|
|
<module>partial-response</module>
|
|
<module>pipeline</module>
|
|
<module>poison-pill</module>
|
|
<module>presentation-model</module>
|
|
<module>private-class-data</module>
|
|
<module>producer-consumer</module>
|
|
<module>promise</module>
|
|
<module>property</module>
|
|
<module>prototype</module>
|
|
<module>proxy</module>
|
|
<module>publish-subscribe</module>
|
|
<module>queue-based-load-leveling</module>
|
|
<module>reactor</module>
|
|
<module>registry</module>
|
|
<module>repository</module>
|
|
<module>resource-acquisition-is-initialization</module>
|
|
<module>retry</module>
|
|
<module>role-object</module>
|
|
<module>saga</module>
|
|
<module>separated-interface</module>
|
|
<module>serialized-entity</module>
|
|
<module>serialized-lob</module>
|
|
<module>servant</module>
|
|
<module>server-session</module>
|
|
<module>service-layer</module>
|
|
<module>service-locator</module>
|
|
<module>service-stub</module>
|
|
<module>service-to-worker</module>
|
|
<module>session-facade</module>
|
|
<module>sharding</module>
|
|
<module>single-table-inheritance</module>
|
|
<module>singleton</module>
|
|
<module>spatial-partition</module>
|
|
<module>special-case</module>
|
|
<module>specification</module>
|
|
<module>state</module>
|
|
<module>step-builder</module>
|
|
<module>strangler</module>
|
|
<module>strategy</module>
|
|
<module>subclass-sandbox</module>
|
|
<module>table-inheritance</module>
|
|
<module>table-module</module>
|
|
<module>template-method</module>
|
|
<module>templateview</module>
|
|
<module>throttling</module>
|
|
<module>tolerant-reader</module>
|
|
<module>trampoline</module>
|
|
<module>transaction-script</module>
|
|
<module>twin</module>
|
|
<module>type-object</module>
|
|
<module>unit-of-work</module>
|
|
<module>update-method</module>
|
|
<module>value-object</module>
|
|
<module>version-number</module>
|
|
<module>virtual-proxy</module>
|
|
<module>visitor</module>
|
|
</modules>
|
|
<repositories>
|
|
<repository>
|
|
<id>jitpack.io</id>
|
|
<url>https://jitpack.io</url>
|
|
</repository>
|
|
</repositories>
|
|
<dependencyManagement>
|
|
<dependencies>
|
|
<dependency>
|
|
<groupId>org.springframework.boot</groupId>
|
|
<artifactId>spring-boot-starter</artifactId>
|
|
<version>${spring-boot.version}</version>
|
|
</dependency>
|
|
<dependency>
|
|
<groupId>org.springframework.boot</groupId>
|
|
<artifactId>spring-boot-starter-web</artifactId>
|
|
<version>${spring-boot.version}</version>
|
|
</dependency>
|
|
<dependency>
|
|
<groupId>org.springframework.boot</groupId>
|
|
<artifactId>spring-boot-starter-actuator</artifactId>
|
|
<version>${spring-boot.version}</version>
|
|
</dependency>
|
|
<dependency>
|
|
<groupId>org.springframework.boot</groupId>
|
|
<artifactId>spring-boot-starter-data-jpa</artifactId>
|
|
<version>${spring-boot.version}</version>
|
|
</dependency>
|
|
<dependency>
|
|
<groupId>org.springframework.boot</groupId>
|
|
<artifactId>spring-boot-starter-test</artifactId>
|
|
<scope>test</scope>
|
|
<version>${spring-boot.version}</version>
|
|
</dependency>
|
|
<dependency>
|
|
<groupId>commons-dbcp</groupId>
|
|
<artifactId>commons-dbcp</artifactId>
|
|
<version>${commons-dbcp.version}</version>
|
|
</dependency>
|
|
<dependency>
|
|
<groupId>org.htmlunit</groupId>
|
|
<artifactId>htmlunit</artifactId>
|
|
<version>${htmlunit.version}</version>
|
|
</dependency>
|
|
<dependency>
|
|
<groupId>com.google.code.gson</groupId>
|
|
<artifactId>gson</artifactId>
|
|
<version>${gson.version}</version>
|
|
</dependency>
|
|
<dependency>
|
|
<groupId>com.google.inject</groupId>
|
|
<artifactId>guice</artifactId>
|
|
<version>${guice.version}</version>
|
|
</dependency>
|
|
<dependency>
|
|
<groupId>com.github.stefanbirkner</groupId>
|
|
<artifactId>system-lambda</artifactId>
|
|
<version>${system-lambda.version}</version>
|
|
<scope>test</scope>
|
|
</dependency>
|
|
<dependency>
|
|
<groupId>org.junit.jupiter</groupId>
|
|
<artifactId>junit-jupiter-engine</artifactId>
|
|
<version>${junit.version}</version>
|
|
<scope>test</scope>
|
|
</dependency>
|
|
<dependency>
|
|
<groupId>org.junit.jupiter</groupId>
|
|
<artifactId>junit-jupiter-params</artifactId>
|
|
<version>${junit.version}</version>
|
|
<scope>test</scope>
|
|
</dependency>
|
|
<dependency>
|
|
<groupId>org.junit.jupiter</groupId>
|
|
<artifactId>junit-jupiter-params</artifactId>
|
|
<version>${junit.version}</version>
|
|
<scope>test</scope>
|
|
</dependency>
|
|
<dependency>
|
|
<groupId>org.junit.jupiter</groupId>
|
|
<artifactId>junit-jupiter-migrationsupport</artifactId>
|
|
<version>${junit.version}</version>
|
|
<scope>test</scope>
|
|
</dependency>
|
|
<dependency>
|
|
<groupId>org.slf4j</groupId>
|
|
<artifactId>slf4j-api</artifactId>
|
|
<version>${slf4j.version}</version>
|
|
</dependency>
|
|
<dependency>
|
|
<groupId>ch.qos.logback</groupId>
|
|
<artifactId>logback-classic</artifactId>
|
|
<version>${logback.version}</version>
|
|
</dependency>
|
|
<dependency>
|
|
<groupId>org.mockito</groupId>
|
|
<artifactId>mockito-core</artifactId>
|
|
<version>${mockito.version}</version>
|
|
</dependency>
|
|
<dependency>
|
|
<groupId>org.mongodb</groupId>
|
|
<artifactId>bson</artifactId>
|
|
<version>${bson.version}</version>
|
|
</dependency>
|
|
<dependency>
|
|
<groupId>org.mongodb</groupId>
|
|
<artifactId>mongodb-driver-legacy</artifactId>
|
|
<version>${mongo.version}</version>
|
|
</dependency>
|
|
<dependency>
|
|
<groupId>com.h2database</groupId>
|
|
<artifactId>h2</artifactId>
|
|
<version>${h2.version}</version>
|
|
</dependency>
|
|
</dependencies>
|
|
</dependencyManagement>
|
|
<dependencies>
|
|
<dependency>
|
|
<groupId>org.projectlombok</groupId>
|
|
<artifactId>lombok</artifactId>
|
|
<version>${lombok.version}</version>
|
|
<scope>provided</scope>
|
|
</dependency>
|
|
</dependencies>
|
|
<build>
|
|
<pluginManagement>
|
|
<plugins>
|
|
<plugin>
|
|
<groupId>org.apache.maven.plugins</groupId>
|
|
<artifactId>maven-compiler-plugin</artifactId>
|
|
<version>${maven-compiler-plugin.version}</version>
|
|
<configuration>
|
|
<source>21</source>
|
|
<target>21</target>
|
|
<annotationProcessorPaths>
|
|
<path>
|
|
<groupId>org.projectlombok</groupId>
|
|
<artifactId>lombok</artifactId>
|
|
<version>${lombok.version}</version>
|
|
</path>
|
|
</annotationProcessorPaths>
|
|
</configuration>
|
|
</plugin>
|
|
<plugin>
|
|
<groupId>org.apache.maven.plugins</groupId>
|
|
<artifactId>maven-surefire-plugin</artifactId>
|
|
<version>${maven-surefire-plugin.version}</version>
|
|
</plugin>
|
|
<plugin>
|
|
<groupId>org.springframework.boot</groupId>
|
|
<artifactId>spring-boot-maven-plugin</artifactId>
|
|
</plugin>
|
|
<!-- Maven assembly plugin template for all child project to follow -->
|
|
<plugin>
|
|
<groupId>org.apache.maven.plugins</groupId>
|
|
<artifactId>maven-assembly-plugin</artifactId>
|
|
<executions>
|
|
<execution>
|
|
<phase>package</phase>
|
|
<goals>
|
|
<goal>single</goal>
|
|
</goals>
|
|
<configuration>
|
|
<descriptorRefs>
|
|
<descriptorRef>jar-with-dependencies</descriptorRef>
|
|
</descriptorRefs>
|
|
<!-- below two line make sure the fat jar is sharing the same name as of project name -->
|
|
<finalName>${project.artifactId}-${project.version}</finalName>
|
|
<appendAssemblyId>false</appendAssemblyId>
|
|
</configuration>
|
|
</execution>
|
|
</executions>
|
|
</plugin>
|
|
<plugin>
|
|
<groupId>org.sonarsource.scanner.maven</groupId>
|
|
<artifactId>sonar-maven-plugin</artifactId>
|
|
<version>${sonar-maven-plugin.version}</version>
|
|
</plugin>
|
|
</plugins>
|
|
</pluginManagement>
|
|
<plugins>
|
|
<plugin>
|
|
<groupId>com.mycila</groupId>
|
|
<artifactId>license-maven-plugin</artifactId>
|
|
<version>${license-maven-plugin.version}</version>
|
|
<configuration>
|
|
<licenseSets>
|
|
<licenseSet>
|
|
<multi>
|
|
<preamble><![CDATA[This project is licensed under the MIT license. Module model-view-viewmodel is using ZK framework licensed under LGPL (see lgpl-3.0.txt).]]></preamble>
|
|
<header>com/mycila/maven/plugin/license/templates/MIT.txt</header>
|
|
</multi>
|
|
<excludes>
|
|
<exclude>**/README</exclude>
|
|
<exclude>src/test/resources/**</exclude>
|
|
<exclude>src/main/resources/**</exclude>
|
|
<exclude>checkstyle-suppressions.xml</exclude>
|
|
</excludes>
|
|
</licenseSet>
|
|
</licenseSets>
|
|
<properties>
|
|
<owner>Ilkka Seppälä</owner>
|
|
<email>iluwatar@gmail.com</email>
|
|
</properties>
|
|
</configuration>
|
|
<executions>
|
|
<execution>
|
|
<id>install-format</id>
|
|
<phase>install</phase>
|
|
<goals>
|
|
<goal>format</goal>
|
|
</goals>
|
|
</execution>
|
|
</executions>
|
|
</plugin>
|
|
<plugin>
|
|
<groupId>org.jacoco</groupId>
|
|
<artifactId>jacoco-maven-plugin</artifactId>
|
|
<version>${jacoco.version}</version>
|
|
<executions>
|
|
<execution>
|
|
<id>prepare-agent</id>
|
|
<goals>
|
|
<goal>prepare-agent</goal>
|
|
</goals>
|
|
</execution>
|
|
<execution>
|
|
<id>report</id>
|
|
<goals>
|
|
<goal>report</goal>
|
|
</goals>
|
|
</execution>
|
|
</executions>
|
|
</plugin>
|
|
<plugin>
|
|
<groupId>com.diffplug.spotless</groupId>
|
|
<artifactId>spotless-maven-plugin</artifactId>
|
|
<version>2.44.3</version> <!-- Use latest version -->
|
|
<executions>
|
|
<execution>
|
|
<goals>
|
|
<goal>check</goal> <!-- Run to check formatting -->
|
|
<goal>apply</goal> <!-- Run to format automatically -->
|
|
</goals>
|
|
</execution>
|
|
</executions>
|
|
<configuration>
|
|
<java>
|
|
<googleJavaFormat>
|
|
<version>1.17.0</version> <!-- Optional: choose the GJF version -->
|
|
</googleJavaFormat>
|
|
</java>
|
|
</configuration>
|
|
</plugin>
|
|
</plugins>
|
|
</build>
|
|
</project>
|