Compare commits
41 Commits
Author | SHA1 | Date | |
---|---|---|---|
112e520785 | |||
977b4bec14 | |||
49906cf6ca | |||
6d5895f926 | |||
d23e13d232 | |||
2f69eae725 | |||
a46ecf66ba | |||
c774f38449 | |||
760828af20 | |||
c2b9e4ab93 | |||
e6725c0de9 | |||
2eaf8afc51 | |||
0f8071f1ee | |||
61ce3bb5b8 | |||
ca2e2e6c0d | |||
68aef7bce4 | |||
5188c4871e | |||
b5535cc922 | |||
68b5de6eee | |||
5e19e12237 | |||
167a7659d2 | |||
d33621afcc | |||
72f111f97f | |||
47bfd71bf4 | |||
7c60e55845 | |||
d6c8668379 | |||
e4a54fda20 | |||
493dfb3627 | |||
9c115800d1 | |||
feaecf7a15 | |||
9ba77a2f04 | |||
fa914f949d | |||
e5152c059d | |||
5a06d32523 | |||
e96a63afa9 | |||
d2eec8dced | |||
919bb5ae1b | |||
8e9c62f808 | |||
d5ba8a484f | |||
87648cdc10 | |||
d05855c2be |
83
.drone.yml
83
.drone.yml
@ -1,11 +1,51 @@
|
||||
---
|
||||
kind: pipeline
|
||||
type: docker
|
||||
name: haiti-framework
|
||||
name: snapshot-publish
|
||||
|
||||
trigger:
|
||||
branch:
|
||||
- develop
|
||||
|
||||
volumes:
|
||||
- name: m2
|
||||
host:
|
||||
path: /drone/volume/m2
|
||||
|
||||
steps:
|
||||
- name: publish
|
||||
image: hub.docker.struchkov.dev/maven:3.9.5-eclipse-temurin-17-alpine
|
||||
privileged: true
|
||||
volumes:
|
||||
- name: m2
|
||||
path: /root/.m2/repository
|
||||
environment:
|
||||
MAVEN_SETTINGS:
|
||||
from_secret: MAVEN_SETTINGS
|
||||
commands:
|
||||
- echo "$MAVEN_SETTINGS" >> maven-settings.xml
|
||||
- mvn --settings maven-settings.xml -U -P snapshot clean deploy
|
||||
|
||||
image_pull_secrets:
|
||||
- DOCKER_AUTH
|
||||
---
|
||||
kind: pipeline
|
||||
type: docker
|
||||
name: release-maven-central
|
||||
|
||||
trigger:
|
||||
ref:
|
||||
- refs/tags/v.*.*.*
|
||||
|
||||
volumes:
|
||||
- name: m2
|
||||
host:
|
||||
path: /drone/volume/m2
|
||||
|
||||
steps:
|
||||
- name: publish maven central
|
||||
image: maven:3.8.6-openjdk-11
|
||||
image: hub.docker.struchkov.dev/maven:3.9.5-eclipse-temurin-17-alpine
|
||||
privileged: true
|
||||
volumes:
|
||||
- name: m2
|
||||
path: /root/.m2/repository
|
||||
@ -17,11 +57,19 @@ steps:
|
||||
GPG_PASSPHRASE:
|
||||
from_secret: GPG_PASSPHRASE
|
||||
commands:
|
||||
- apk add gnupg
|
||||
- echo "$GPG_PRIVATE_KEY" >> gpg.key
|
||||
- echo "$MAVEN_SETTINGS" >> maven-settings.xml
|
||||
- gpg --pinentry-mode loopback --passphrase $GPG_PASSPHRASE --import gpg.key
|
||||
- mvn --settings maven-settings.xml -U -P ossrh,release clean deploy
|
||||
|
||||
image_pull_secrets:
|
||||
- DOCKER_AUTH
|
||||
---
|
||||
kind: pipeline
|
||||
type: docker
|
||||
name: release-struchkov-nexus
|
||||
|
||||
trigger:
|
||||
ref:
|
||||
- refs/tags/v.*.*.*
|
||||
@ -29,4 +77,33 @@ trigger:
|
||||
volumes:
|
||||
- name: m2
|
||||
host:
|
||||
path: /drone/volume/m2
|
||||
path: /drone/volume/m2
|
||||
|
||||
steps:
|
||||
- name: publish struchkov nexus
|
||||
image: hub.docker.struchkov.dev/maven:3.9.5-eclipse-temurin-17-alpine
|
||||
privileged: true
|
||||
volumes:
|
||||
- name: m2
|
||||
path: /root/.m2/repository
|
||||
environment:
|
||||
GPG_PRIVATE_KEY:
|
||||
from_secret: GPG_PRIVATE_KEY
|
||||
MAVEN_SETTINGS:
|
||||
from_secret: MAVEN_SETTINGS
|
||||
GPG_PASSPHRASE:
|
||||
from_secret: GPG_PASSPHRASE
|
||||
commands:
|
||||
- apk add gnupg
|
||||
- echo "$GPG_PRIVATE_KEY" >> gpg.key
|
||||
- echo "$MAVEN_SETTINGS" >> maven-settings.xml
|
||||
- gpg --pinentry-mode loopback --passphrase $GPG_PASSPHRASE --import gpg.key
|
||||
- mvn --settings maven-settings.xml -U -P ossrh,release-struchkov-nexus clean deploy
|
||||
|
||||
image_pull_secrets:
|
||||
- DOCKER_AUTH
|
||||
---
|
||||
kind: signature
|
||||
hmac: b491639a5561dd54943ad6a141fd406aba3c092007cb82eb838b5b3097c4caca
|
||||
|
||||
...
|
||||
|
86
.gitignore
vendored
86
.gitignore
vendored
@ -1,14 +1,3 @@
|
||||
# Created by .ignore support plugin (hsz.mobi)
|
||||
target/
|
||||
pom.xml.tag
|
||||
pom.xml.releaseBackup
|
||||
pom.xml.versionsBackup
|
||||
pom.xml.next
|
||||
release.properties
|
||||
dependency-reduced-pom.xml
|
||||
buildNumber.properties
|
||||
.mvn/timing.properties
|
||||
.mvn/wrapper/maven-wrapper.jar
|
||||
*.class
|
||||
*.log
|
||||
*.ctxt
|
||||
@ -21,31 +10,68 @@ buildNumber.properties
|
||||
*.tar.gz
|
||||
*.rar
|
||||
hs_err_pid*
|
||||
.idea/**/workspace.xml
|
||||
.idea/**/tasks.xml
|
||||
.idea/**/usage.statistics.xml
|
||||
.idea/**/dictionaries
|
||||
.idea/**/shelf
|
||||
.idea/**/contentModel.xml
|
||||
.idea/**/dataSources/
|
||||
.idea/**/dataSources.ids
|
||||
.idea/**/dataSources.local.xml
|
||||
.idea/**/sqlDataSources.xml
|
||||
.idea/**/dynamic.xml
|
||||
.idea/**/uiDesigner.xml
|
||||
.idea/**/dbnavigator.xml
|
||||
.idea/**/gradle.xml
|
||||
.idea/**/libraries
|
||||
replay_pid*
|
||||
target/
|
||||
pom.xml.tag
|
||||
pom.xml.releaseBackup
|
||||
pom.xml.versionsBackup
|
||||
pom.xml.next
|
||||
release.properties
|
||||
dependency-reduced-pom.xml
|
||||
buildNumber.properties
|
||||
.mvn/timing.properties
|
||||
.mvn/wrapper/maven-wrapper.jar
|
||||
.project
|
||||
.classpath
|
||||
.idea/
|
||||
cmake-build-*/
|
||||
.idea/**/mongoSettings.xml
|
||||
*.iws
|
||||
out/
|
||||
.idea_modules/
|
||||
atlassian-ide-plugin.xml
|
||||
.idea/replstate.xml
|
||||
com_crashlytics_export_strings.xml
|
||||
crashlytics.properties
|
||||
crashlytics-build.properties
|
||||
fabric.properties
|
||||
.idea/httpRequests
|
||||
.idea/caches/build_file_checksums.ser
|
||||
*~
|
||||
.fuse_hidden*
|
||||
.directory
|
||||
.Trash-*
|
||||
.nfs*
|
||||
.gradle
|
||||
**/build/
|
||||
!src/**/build/
|
||||
gradle-app.setting
|
||||
!gradle-wrapper.jar
|
||||
!gradle-wrapper.properties
|
||||
.gradletasknamecache
|
||||
Thumbs.db
|
||||
Thumbs.db:encryptable
|
||||
ehthumbs.db
|
||||
ehthumbs_vista.db
|
||||
*.stackdump
|
||||
[Dd]esktop.ini
|
||||
$RECYCLE.BIN/
|
||||
*.cab
|
||||
*.msi
|
||||
*.msix
|
||||
*.msm
|
||||
*.msp
|
||||
*.lnk
|
||||
.DS_Store
|
||||
.AppleDouble
|
||||
.LSOverride
|
||||
Icon
|
||||
._*
|
||||
.DocumentRevisions-V100
|
||||
.fseventsd
|
||||
.Spotlight-V100
|
||||
.TemporaryItems
|
||||
.Trashes
|
||||
.VolumeIcon.icns
|
||||
.com.apple.timemachine.donotpresent
|
||||
.AppleDB
|
||||
.AppleDesktop
|
||||
Network Trash Folder
|
||||
Temporary Items
|
||||
.apdisk
|
||||
|
@ -1,16 +1,13 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<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">
|
||||
<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>
|
||||
<parent>
|
||||
<groupId>dev.struchkov.haiti</groupId>
|
||||
<artifactId>haiti-dependencies</artifactId>
|
||||
<version>2.3.4</version>
|
||||
<version>3.0.4-SNAPSHOT</version>
|
||||
</parent>
|
||||
|
||||
<artifactId>haiti-exception</artifactId>
|
||||
<version>${haiti.exception.ver}</version>
|
||||
|
||||
<name>Haiti Exception</name>
|
||||
<description>General exceptions for the haiti project</description>
|
||||
|
@ -1,12 +1,10 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<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">
|
||||
<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>
|
||||
<parent>
|
||||
<groupId>dev.struchkov.haiti</groupId>
|
||||
<artifactId>haiti-dependencies</artifactId>
|
||||
<version>2.3.4</version>
|
||||
<version>3.0.4-SNAPSHOT</version>
|
||||
</parent>
|
||||
|
||||
<name>Haiti Utils</name>
|
||||
@ -14,7 +12,6 @@
|
||||
<url>https://github.com/haiti-projects/haiti-framework</url>
|
||||
|
||||
<artifactId>haiti-utils</artifactId>
|
||||
<version>${haiti.utils.ver}</version>
|
||||
|
||||
<dependencies>
|
||||
<dependency>
|
||||
|
@ -92,6 +92,14 @@ public final class Checker {
|
||||
return EMPTY.equals(s);
|
||||
}
|
||||
|
||||
public static boolean checkNotBlank(String s) {
|
||||
return checkNotNull(s) && !s.isBlank();
|
||||
}
|
||||
|
||||
public static boolean checkBlank(String s) {
|
||||
return checkNull(s) || s.isBlank();
|
||||
}
|
||||
|
||||
public static boolean checkFalse(Boolean b) {
|
||||
return b != null && !b;
|
||||
}
|
||||
|
@ -3,7 +3,9 @@ package dev.struchkov.haiti.utils;
|
||||
import java.util.Collection;
|
||||
import java.util.function.Supplier;
|
||||
|
||||
import static dev.struchkov.haiti.utils.Checker.checkBlank;
|
||||
import static dev.struchkov.haiti.utils.Checker.checkEmpty;
|
||||
import static dev.struchkov.haiti.utils.Checker.checkNotBlank;
|
||||
import static dev.struchkov.haiti.utils.Checker.checkNotEmpty;
|
||||
import static dev.struchkov.haiti.utils.Checker.checkNotNull;
|
||||
import static dev.struchkov.haiti.utils.Checker.checkNull;
|
||||
@ -106,9 +108,11 @@ public final class Inspector {
|
||||
* @throws RuntimeException
|
||||
*/
|
||||
public static void isNotEmpty(Supplier<? extends RuntimeException> exception, Object... args) {
|
||||
if (checkEmpty(args)) {
|
||||
throw exception.get();
|
||||
}
|
||||
if (checkEmpty(args)) throw exception.get();
|
||||
}
|
||||
|
||||
public static void isNotEmpty(String s, Supplier<? extends RuntimeException> exception) {
|
||||
if (checkEmpty(s)) throw exception.get();
|
||||
}
|
||||
|
||||
/**
|
||||
@ -121,6 +125,10 @@ public final class Inspector {
|
||||
if (checkNotEmpty(collection)) throw exception.get();
|
||||
}
|
||||
|
||||
public static void isEmpty(String s, Supplier<? extends RuntimeException> exception) {
|
||||
if (checkNotEmpty(s)) throw exception.get();
|
||||
}
|
||||
|
||||
/**
|
||||
* Проверка массива на пустоту. Если массив не пустой и не null, то будет выбрашено исключение.
|
||||
*
|
||||
@ -131,10 +139,19 @@ public final class Inspector {
|
||||
if (checkNotEmpty(args)) throw exception.get();
|
||||
}
|
||||
|
||||
public static void isNotBlank(String s, Supplier<? extends RuntimeException> exception) {
|
||||
if (checkBlank(s)) throw exception.get();
|
||||
}
|
||||
|
||||
public static void isBlank(String s, Supplier<? extends RuntimeException> exception) {
|
||||
if (checkNotBlank(s)) throw exception.get();
|
||||
}
|
||||
|
||||
/**
|
||||
* Утилитарный класс.
|
||||
*/
|
||||
public static final class Utils {
|
||||
|
||||
private Utils() {
|
||||
utilityClass();
|
||||
}
|
||||
|
@ -7,7 +7,9 @@ import java.lang.reflect.Method;
|
||||
import java.math.BigDecimal;
|
||||
import java.math.BigInteger;
|
||||
import java.util.Arrays;
|
||||
import java.util.Optional;
|
||||
|
||||
import static dev.struchkov.haiti.utils.Checker.checkNotNull;
|
||||
import static dev.struchkov.haiti.utils.Exceptions.utilityClass;
|
||||
import static dev.struchkov.haiti.utils.Inspector.isNotNull;
|
||||
|
||||
@ -123,8 +125,8 @@ public class ObjectUtils {
|
||||
public static boolean isGetMethod(String fieldName, Method method) {
|
||||
isNotNull(fieldName);
|
||||
return (method.getName().startsWith("get"))
|
||||
&& (method.getName().length() == (fieldName.length() + 3))
|
||||
&& method.getName().toLowerCase().endsWith(fieldName.toLowerCase());
|
||||
&& (method.getName().length() == (fieldName.length() + 3))
|
||||
&& method.getName().toLowerCase().endsWith(fieldName.toLowerCase());
|
||||
}
|
||||
|
||||
/**
|
||||
@ -137,8 +139,23 @@ public class ObjectUtils {
|
||||
public static boolean isSetMethod(String fieldName, Method method) {
|
||||
isNotNull(fieldName);
|
||||
return (method.getName().startsWith("set"))
|
||||
&& (method.getName().length() == (fieldName.length() + 3))
|
||||
&& method.getName().toLowerCase().endsWith(fieldName.toLowerCase());
|
||||
&& (method.getName().length() == (fieldName.length() + 3))
|
||||
&& method.getName().toLowerCase().endsWith(fieldName.toLowerCase());
|
||||
}
|
||||
|
||||
/**
|
||||
* Позволяет создать произвольный enum из его значения.
|
||||
*
|
||||
* @param name значение из enum
|
||||
* @param enumClass класс enum
|
||||
* @param <T> возвращаемый тип енума
|
||||
* @return преобразованный енум или пустой Optional
|
||||
*/
|
||||
public static <T extends Enum<T>> Optional<T> createEnum(String name, Class<T> enumClass) {
|
||||
if (checkNotNull(name)) {
|
||||
return Optional.of(Enum.valueOf(enumClass, name));
|
||||
}
|
||||
return Optional.empty();
|
||||
}
|
||||
|
||||
}
|
||||
|
@ -1,6 +1,6 @@
|
||||
package dev.struchkov.haiti.utils;
|
||||
|
||||
import dev.struchkov.haiti.utils.domain.CompositeUrl;
|
||||
import dev.struchkov.haiti.utils.container.CompositeUrl;
|
||||
|
||||
import java.util.regex.Matcher;
|
||||
import java.util.regex.Pattern;
|
||||
|
@ -1,9 +1,8 @@
|
||||
package dev.struchkov.haiti.utils;
|
||||
|
||||
import java.util.Set;
|
||||
import java.util.stream.Collectors;
|
||||
import java.util.stream.Stream;
|
||||
|
||||
import static dev.struchkov.haiti.utils.Checker.checkNotNull;
|
||||
import static dev.struchkov.haiti.utils.Exceptions.utilityClass;
|
||||
|
||||
/**
|
||||
@ -13,9 +12,9 @@ import static dev.struchkov.haiti.utils.Exceptions.utilityClass;
|
||||
*/
|
||||
public final class Strings {
|
||||
|
||||
private static final Set<Character> MD_FORBIDDEN_SYMBOLS = Stream.of(
|
||||
private static final Set<Character> MD_FORBIDDEN_SYMBOLS = Set.of(
|
||||
'\\', '+', '`', '[', ']', '\"', '~', '*', '#', '=', '_', '>', '<'
|
||||
).collect(Collectors.toSet());
|
||||
);
|
||||
|
||||
private Strings() {
|
||||
utilityClass();
|
||||
@ -23,7 +22,6 @@ public final class Strings {
|
||||
|
||||
public static final String EMPTY = "";
|
||||
public static final String NEW_LINE = System.getProperty("line.separator");
|
||||
public static final String TWO_NEW_LINE = NEW_LINE + NEW_LINE;
|
||||
public static final String ERR_UTILITY_CLASS = "Нельзя создать объект утилитарного класса";
|
||||
public static final String ERR_OPERATION_NOT_SUPPORTED = "Операция не поддерживается";
|
||||
|
||||
@ -37,7 +35,7 @@ public final class Strings {
|
||||
* @return Обрезанная до length количества символов строка
|
||||
*/
|
||||
public static String cutoff(String string, int length) {
|
||||
if (string != null) {
|
||||
if (checkNotNull(string)) {
|
||||
return string.length() > length ? string.substring(0, length) + "..." : string;
|
||||
}
|
||||
return null;
|
||||
@ -50,7 +48,7 @@ public final class Strings {
|
||||
* @return Строка с экранированными символами
|
||||
*/
|
||||
public static String escapeMarkdown(String str) {
|
||||
if (str != null) {
|
||||
if (checkNotNull(str)) {
|
||||
StringBuilder sb = new StringBuilder();
|
||||
for (int i = 0; i < str.length(); i++) {
|
||||
char c = str.charAt(i);
|
||||
|
@ -1,4 +1,4 @@
|
||||
package dev.struchkov.haiti.utils.domain;
|
||||
package dev.struchkov.haiti.utils.container;
|
||||
|
||||
import java.util.Optional;
|
||||
|
@ -0,0 +1,38 @@
|
||||
package dev.struchkov.haiti.utils.container;
|
||||
|
||||
import java.util.Objects;
|
||||
|
||||
public interface ContextKey<T> {
|
||||
|
||||
String getValue();
|
||||
|
||||
Class<T> getType();
|
||||
|
||||
static <T> ContextKey<T> of(String value, Class<T> type) {
|
||||
return new ContextKey<>() {
|
||||
@Override
|
||||
public String getValue() {
|
||||
return value;
|
||||
}
|
||||
|
||||
@Override
|
||||
public Class<T> getType() {
|
||||
return type;
|
||||
}
|
||||
|
||||
@Override
|
||||
public boolean equals(Object o) {
|
||||
if (this == o) return true;
|
||||
if (o == null || getClass() != o.getClass()) return false;
|
||||
ContextKey<?> contextKey = (ContextKey<?>) o;
|
||||
return Objects.equals(value, contextKey.getValue());
|
||||
}
|
||||
|
||||
@Override
|
||||
public int hashCode() {
|
||||
return Objects.hash(value);
|
||||
}
|
||||
};
|
||||
}
|
||||
|
||||
}
|
@ -1,4 +1,6 @@
|
||||
package dev.struchkov.haiti.utils;
|
||||
package dev.struchkov.haiti.utils.container;
|
||||
|
||||
import java.util.Objects;
|
||||
|
||||
/**
|
||||
* Адаптированная реализация Pair из пакета javafx.util. Реализация необходима, так как в некоторых сборках JDK этот
|
||||
@ -32,4 +34,17 @@ public class Pair<K, V> {
|
||||
this.value = value;
|
||||
}
|
||||
|
||||
@Override
|
||||
public boolean equals(Object o) {
|
||||
if (this == o) return true;
|
||||
if (o == null || getClass() != o.getClass()) return false;
|
||||
Pair<?, ?> pair = (Pair<?, ?>) o;
|
||||
return Objects.equals(key, pair.key);
|
||||
}
|
||||
|
||||
@Override
|
||||
public int hashCode() {
|
||||
return Objects.hash(key);
|
||||
}
|
||||
|
||||
}
|
@ -1,7 +1,7 @@
|
||||
module haiti.utils {
|
||||
exports dev.struchkov.haiti.utils;
|
||||
exports dev.struchkov.haiti.utils.concurrent;
|
||||
exports dev.struchkov.haiti.utils.domain;
|
||||
exports dev.struchkov.haiti.utils.container;
|
||||
|
||||
requires haiti.exception;
|
||||
|
||||
|
177
pom.xml
177
pom.xml
@ -1,12 +1,10 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<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">
|
||||
<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>dev.struchkov.haiti</groupId>
|
||||
<artifactId>haiti-dependencies</artifactId>
|
||||
<version>2.3.4</version>
|
||||
<version>3.0.4-SNAPSHOT</version>
|
||||
<packaging>pom</packaging>
|
||||
|
||||
<name>Haiti Framework</name>
|
||||
@ -29,27 +27,31 @@
|
||||
</modules>
|
||||
|
||||
<properties>
|
||||
<java.version>11</java.version>
|
||||
<java.version>17</java.version>
|
||||
<maven.compiler.source>${java.version}</maven.compiler.source>
|
||||
<maven.compiler.target>${java.version}</maven.compiler.target>
|
||||
<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
|
||||
<project.reporting.outputEncoding>UTF-8</project.reporting.outputEncoding>
|
||||
|
||||
<haiti.ver>2.3.4</haiti.ver>
|
||||
<haiti.exception.ver>${haiti.ver}</haiti.exception.ver>
|
||||
<haiti.context.ver>${haiti.ver}</haiti.context.ver>
|
||||
<haiti.filter.api.ver>${haiti.ver}</haiti.filter.api.ver>
|
||||
<haiti.utils.ver>${haiti.ver}</haiti.utils.ver>
|
||||
<!-- https://mvnrepository.com/artifact/jakarta.persistence/jakarta.persistence-api -->
|
||||
<jakarta.persistence.version>3.2.0</jakarta.persistence.version>
|
||||
<!-- https://mvnrepository.com/artifact/com.google.auto.service/auto-service -->
|
||||
<google.auto.service.version>1.1.1</google.auto.service.version>
|
||||
<!-- https://mvnrepository.com/artifact/org.slf4j/slf4j-api -->
|
||||
<slf4j.api.version>2.0.13</slf4j.api.version>
|
||||
|
||||
<javax.persistence.api.version>2.2</javax.persistence.api.version>
|
||||
<google.auto.service.version>1.0.1</google.auto.service.version>
|
||||
<slf4j.api.version>2.0.6</slf4j.api.version>
|
||||
|
||||
<plugin.maven.compiler.ver>3.10.1</plugin.maven.compiler.ver>
|
||||
<plugin.nexus.staging.ver>1.6.13</plugin.nexus.staging.ver>
|
||||
<plugin.maven.source.ver>3.2.1</plugin.maven.source.ver>
|
||||
<plugin.maven.javadoc.ver>3.4.0</plugin.maven.javadoc.ver>
|
||||
<plugin.maven.gpg.ver>3.0.1</plugin.maven.gpg.ver>
|
||||
<!-- https://mvnrepository.com/artifact/org.apache.maven.plugins/maven-compiler-plugin -->
|
||||
<plugin.maven.compiler.ver>3.13.0</plugin.maven.compiler.ver>
|
||||
<!-- https://mvnrepository.com/artifact/org.sonatype.plugins/nexus-staging-maven-plugin -->
|
||||
<plugin.nexus.staging.ver>1.7.0</plugin.nexus.staging.ver>
|
||||
<!-- https://mvnrepository.com/artifact/org.apache.maven.plugins/maven-source-plugin -->
|
||||
<plugin.maven.source.ver>3.3.1</plugin.maven.source.ver>
|
||||
<!-- https://mvnrepository.com/artifact/org.apache.maven.plugins/maven-javadoc-plugin -->
|
||||
<plugin.maven.javadoc.ver>3.7.0</plugin.maven.javadoc.ver>
|
||||
<!-- https://mvnrepository.com/artifact/org.apache.maven.plugins/maven-gpg-plugin -->
|
||||
<plugin.maven.gpg.ver>3.2.4</plugin.maven.gpg.ver>
|
||||
<!-- https://mvnrepository.com/artifact/org.apache.maven.plugins/maven-release-plugin -->
|
||||
<plugin.maven.release.ver>3.1.0</plugin.maven.release.ver>
|
||||
</properties>
|
||||
|
||||
<dependencyManagement>
|
||||
@ -57,19 +59,20 @@
|
||||
<dependency>
|
||||
<groupId>dev.struchkov.haiti</groupId>
|
||||
<artifactId>haiti-exception</artifactId>
|
||||
<version>${haiti.exception.ver}</version>
|
||||
<version>3.0.4-SNAPSHOT</version>
|
||||
</dependency>
|
||||
<dependency>
|
||||
<groupId>dev.struchkov.haiti</groupId>
|
||||
<artifactId>haiti-utils</artifactId>
|
||||
<version>${haiti.utils.ver}</version>
|
||||
<version>3.0.4-SNAPSHOT</version>
|
||||
</dependency>
|
||||
|
||||
<dependency>
|
||||
<groupId>javax.persistence</groupId>
|
||||
<artifactId>javax.persistence-api</artifactId>
|
||||
<version>${javax.persistence.api.version}</version>
|
||||
<groupId>jakarta.persistence</groupId>
|
||||
<artifactId>jakarta.persistence-api</artifactId>
|
||||
<version>${jakarta.persistence.version}</version>
|
||||
</dependency>
|
||||
|
||||
<dependency>
|
||||
<groupId>com.google.auto.service</groupId>
|
||||
<artifactId>auto-service</artifactId>
|
||||
@ -91,11 +94,6 @@
|
||||
<artifactId>nexus-staging-maven-plugin</artifactId>
|
||||
<version>${plugin.nexus.staging.ver}</version>
|
||||
<extensions>true</extensions>
|
||||
<configuration>
|
||||
<serverId>ossrh</serverId>
|
||||
<nexusUrl>https://s01.oss.sonatype.org/</nexusUrl>
|
||||
<autoReleaseAfterClose>true</autoReleaseAfterClose>
|
||||
</configuration>
|
||||
</plugin>
|
||||
<plugin>
|
||||
<groupId>org.apache.maven.plugins</groupId>
|
||||
@ -146,10 +144,27 @@
|
||||
<target>${java.version}</target>
|
||||
</configuration>
|
||||
</plugin>
|
||||
<plugin>
|
||||
<groupId>org.apache.maven.plugins</groupId>
|
||||
<artifactId>maven-release-plugin</artifactId>
|
||||
<version>${plugin.maven.release.ver}</version>
|
||||
<configuration>
|
||||
<preparationGoals>clean install</preparationGoals>
|
||||
<tagNameFormat>v.@{project.version}</tagNameFormat>
|
||||
<autoVersionSubmodules>true</autoVersionSubmodules>
|
||||
<pushChanges>false</pushChanges>
|
||||
<localCheckout>true</localCheckout>
|
||||
<signTag>true</signTag>
|
||||
</configuration>
|
||||
</plugin>
|
||||
</plugins>
|
||||
</pluginManagement>
|
||||
|
||||
<plugins>
|
||||
<plugin>
|
||||
<groupId>org.apache.maven.plugins</groupId>
|
||||
<artifactId>maven-release-plugin</artifactId>
|
||||
</plugin>
|
||||
<plugin>
|
||||
<groupId>org.apache.maven.plugins</groupId>
|
||||
<artifactId>maven-compiler-plugin</artifactId>
|
||||
@ -173,6 +188,11 @@
|
||||
<plugin>
|
||||
<groupId>org.sonatype.plugins</groupId>
|
||||
<artifactId>nexus-staging-maven-plugin</artifactId>
|
||||
<configuration>
|
||||
<serverId>ossrh</serverId>
|
||||
<nexusUrl>https://s01.oss.sonatype.org/</nexusUrl>
|
||||
<autoReleaseAfterClose>true</autoReleaseAfterClose>
|
||||
</configuration>
|
||||
</plugin>
|
||||
<plugin>
|
||||
<groupId>org.apache.maven.plugins</groupId>
|
||||
@ -189,21 +209,106 @@
|
||||
</plugins>
|
||||
</build>
|
||||
</profile>
|
||||
<profile>
|
||||
<id>release-struchkov-nexus</id>
|
||||
<build>
|
||||
<plugins>
|
||||
<plugin>
|
||||
<groupId>org.sonatype.plugins</groupId>
|
||||
<artifactId>nexus-staging-maven-plugin</artifactId>
|
||||
<configuration>
|
||||
<serverId>struchkov-nexus</serverId>
|
||||
<nexusUrl>https://nexus.struchkov.dev/nexus/</nexusUrl>
|
||||
<autoReleaseAfterClose>true</autoReleaseAfterClose>
|
||||
<skipStaging>true</skipStaging>
|
||||
</configuration>
|
||||
</plugin>
|
||||
<plugin>
|
||||
<groupId>org.apache.maven.plugins</groupId>
|
||||
<artifactId>maven-source-plugin</artifactId>
|
||||
</plugin>
|
||||
<plugin>
|
||||
<groupId>org.apache.maven.plugins</groupId>
|
||||
<artifactId>maven-gpg-plugin</artifactId>
|
||||
</plugin>
|
||||
<plugin>
|
||||
<groupId>org.apache.maven.plugins</groupId>
|
||||
<artifactId>maven-javadoc-plugin</artifactId>
|
||||
</plugin>
|
||||
</plugins>
|
||||
</build>
|
||||
</profile>
|
||||
<profile>
|
||||
<id>snapshot</id>
|
||||
<build>
|
||||
<plugins>
|
||||
<plugin>
|
||||
<groupId>org.sonatype.plugins</groupId>
|
||||
<artifactId>nexus-staging-maven-plugin</artifactId>
|
||||
<configuration>
|
||||
<serverId>struchkov-nexus</serverId>
|
||||
<nexusUrl>https://nexus.struchkov.dev/nexus/</nexusUrl>
|
||||
<autoReleaseAfterClose>true</autoReleaseAfterClose>
|
||||
</configuration>
|
||||
</plugin>
|
||||
<plugin>
|
||||
<groupId>org.apache.maven.plugins</groupId>
|
||||
<artifactId>maven-source-plugin</artifactId>
|
||||
</plugin>
|
||||
<plugin>
|
||||
<groupId>org.apache.maven.plugins</groupId>
|
||||
<artifactId>maven-javadoc-plugin</artifactId>
|
||||
</plugin>
|
||||
</plugins>
|
||||
</build>
|
||||
</profile>
|
||||
</profiles>
|
||||
|
||||
<scm>
|
||||
<connection>scm:git:https://github.com/haiti-projects/haiti-framework.git</connection>
|
||||
<url>https://github.com/haiti-projects/haiti-framework</url>
|
||||
<developerConnection>scm:git:https://github.com/haiti-projects/haiti-framework.git</developerConnection>
|
||||
</scm>
|
||||
<repositories>
|
||||
<repository>
|
||||
<id>struchkov-nexus-release</id>
|
||||
<url>https://nexus.struchkov.dev/repository/maven-releases/</url>
|
||||
<releases>
|
||||
<enabled>true</enabled>
|
||||
<updatePolicy>always</updatePolicy>
|
||||
<checksumPolicy>fail</checksumPolicy>
|
||||
</releases>
|
||||
<snapshots>
|
||||
<enabled>false</enabled>
|
||||
</snapshots>
|
||||
</repository>
|
||||
<repository>
|
||||
<id>struchkov-nexus-snapshot</id>
|
||||
<url>https://nexus.struchkov.dev/repository/maven-snapshots/</url>
|
||||
<releases>
|
||||
<enabled>false</enabled>
|
||||
</releases>
|
||||
<snapshots>
|
||||
<enabled>true</enabled>
|
||||
<updatePolicy>always</updatePolicy>
|
||||
<checksumPolicy>warn</checksumPolicy>
|
||||
</snapshots>
|
||||
</repository>
|
||||
</repositories>
|
||||
|
||||
<distributionManagement>
|
||||
<repository>
|
||||
<id>struchkov-nexus-release</id>
|
||||
<url>https://nexus.struchkov.dev/repository/maven-releases/</url>
|
||||
</repository>
|
||||
<snapshotRepository>
|
||||
<id>ossrh</id>
|
||||
<url>https://s01.oss.sonatype.org/content/repositories/snapshots</url>
|
||||
<id>struchkov-nexus-snapshot</id>
|
||||
<url>https://nexus.struchkov.dev/repository/maven-snapshots/</url>
|
||||
</snapshotRepository>
|
||||
</distributionManagement>
|
||||
|
||||
<scm>
|
||||
<connection>scm:git:https://git.struchkov.dev/Haiti/haiti-framework.git</connection>
|
||||
<url>https://git.struchkov.dev/Haiti/haiti-framework</url>
|
||||
<developerConnection>scm:git:https://git.struchkov.dev/Haiti/haiti-framework.git</developerConnection>
|
||||
<tag>HEAD</tag>
|
||||
</scm>
|
||||
|
||||
<developers>
|
||||
<developer>
|
||||
<id>uPagge</id>
|
||||
|
Loading…
Reference in New Issue
Block a user