switch from Java EE to Jakarta EE
This commit is contained in:
65
build.gradle
65
build.gradle
@@ -1,6 +1,6 @@
|
|||||||
plugins {
|
plugins {
|
||||||
id 'net.woggioni.gradle.lombok' apply false
|
alias(catalog.plugins.lombok) apply false
|
||||||
id 'net.woggioni.gradle.wildfly'
|
alias(catalog.plugins.wildfly)
|
||||||
id 'war'
|
id 'war'
|
||||||
id 'maven-publish'
|
id 'maven-publish'
|
||||||
}
|
}
|
||||||
@@ -33,7 +33,7 @@ allprojects {
|
|||||||
}
|
}
|
||||||
|
|
||||||
tasks.withType(JavaCompile) {
|
tasks.withType(JavaCompile) {
|
||||||
options.release = 11
|
options.release = 17
|
||||||
}
|
}
|
||||||
|
|
||||||
tasks.withType(Test) {
|
tasks.withType(Test) {
|
||||||
@@ -44,46 +44,35 @@ allprojects {
|
|||||||
|
|
||||||
dependencies {
|
dependencies {
|
||||||
implementation project(':jpacrepo-impl')
|
implementation project(':jpacrepo-impl')
|
||||||
implementation group: 'net.woggioni', name: 'jwo'
|
|
||||||
implementation group: 'org.slf4j', name: 'slf4j-api'
|
|
||||||
|
|
||||||
compileOnly group: 'org.hibernate', name: 'hibernate-jpamodelgen'
|
implementation catalog.jwo
|
||||||
// compileOnly group: 'jakarta.persistence',
|
implementation catalog.slf4j.api
|
||||||
// name: 'jakarta.persistence-api', version: getProperty('jakarta.persistence.version')
|
|
||||||
// compileOnly group: 'jakarta.annotation',
|
|
||||||
// name: 'jakarta.annotation-api',
|
|
||||||
// version: getProperty('jakarta.annotation.version')
|
|
||||||
// compileOnly group: 'jakarta.platform',
|
|
||||||
// name: 'jakarta.jakartaee-web-api',
|
|
||||||
// version: getProperty('jakarta.ee.version')
|
|
||||||
compileOnly group: 'jakarta.platform', name: 'jakarta.jakartaee-api'
|
|
||||||
implementation group: 'org.apache.commons', name: 'commons-compress'
|
|
||||||
implementation group: 'net.java.dev.jna', name: 'jna'
|
|
||||||
|
|
||||||
// compileOnly group: 'jakarta.inject',
|
compileOnly catalog.hibernate.jpamodelgen
|
||||||
// name: 'jakarta.inject-api', version: getProperty('jakarta.inject.version')
|
compileOnly catalog.jakarta.enterprise.cdi.api
|
||||||
// compileOnly group: 'jakarta.enterprise', name: 'jakarta.enterprise.cdi-api', version: getProperty('jakarta.cdi.version')
|
compileOnly catalog.jakarta.servlet.api
|
||||||
|
compileOnly catalog.jakarta.ejb.api
|
||||||
|
compileOnly catalog.jakarta.ws.rs.api
|
||||||
|
compileOnly catalog.jakarta.xml.bind.api
|
||||||
|
compileOnly catalog.jakarta.enterprise.concurrent.api
|
||||||
|
|
||||||
testImplementation group: 'jakarta.platform', name: 'jakarta.jakartaee-api'
|
|
||||||
|
|
||||||
// testImplementation group: 'jakarta.platform',
|
implementation catalog.commons.compress
|
||||||
// name: 'jakarta.jakartaee-web-api',
|
implementation catalog.jna
|
||||||
// version: getProperty('jakarta.ee.version')
|
|
||||||
testImplementation group: 'org.jboss', name: 'jboss-ejb-client'
|
|
||||||
testImplementation group: 'org.jboss.weld.se', name: 'weld-se-core'
|
|
||||||
testImplementation group: 'com.h2database', name: 'h2'
|
|
||||||
testImplementation group: 'org.hibernate', name: 'hibernate-core'
|
|
||||||
testImplementation group: 'org.jboss.resteasy', name: 'resteasy-client'
|
|
||||||
testImplementation group: 'org.jboss.resteasy', name: 'resteasy-jackson2-provider'
|
|
||||||
testRuntimeOnly group: 'org.slf4j', name: 'slf4j-simple'
|
|
||||||
testImplementation group: 'org.junit.jupiter', name: 'junit-jupiter-api'
|
|
||||||
testImplementation group: 'org.junit.jupiter', name: 'junit-jupiter-params'
|
|
||||||
testRuntimeOnly group: 'org.junit.jupiter', name: 'junit-jupiter-engine'
|
|
||||||
}
|
|
||||||
|
|
||||||
wrapper {
|
|
||||||
distributionType = Wrapper.DistributionType.BIN
|
testImplementation catalog.jackson.module.jakarta.xmlbind.annotations
|
||||||
gradleVersion = getProperty('gradle.version')
|
testImplementation catalog.jboss.ejb.client
|
||||||
|
testImplementation catalog.weld.se.core
|
||||||
|
testImplementation catalog.h2
|
||||||
|
testImplementation catalog.hibernate.core
|
||||||
|
testImplementation catalog.resteasy.client
|
||||||
|
testImplementation catalog.resteasy.jackson2.provider
|
||||||
|
testImplementation catalog.jackson.datatype.jsr310
|
||||||
|
testRuntimeOnly catalog.slf4j.simple
|
||||||
|
testImplementation catalog.junit.jupiter.api
|
||||||
|
testImplementation catalog.junit.jupiter.params
|
||||||
|
testRuntimeOnly catalog.junit.jupiter.engine
|
||||||
}
|
}
|
||||||
|
|
||||||
File nimDir = project.file('nim')
|
File nimDir = project.file('nim')
|
||||||
|
@@ -1,5 +1,3 @@
|
|||||||
gradle.version=7.4.2
|
|
||||||
|
|
||||||
net.woggioni.gradle.lombok.version=0.1
|
net.woggioni.gradle.lombok.version=0.1
|
||||||
net.woggioni.gradle.wildfly.version=0.1
|
net.woggioni.gradle.wildfly.version=0.1
|
||||||
net.woggioni.gradle.envelope.version=1.0-SNAPSHOT
|
net.woggioni.gradle.envelope.version=1.0-SNAPSHOT
|
||||||
@@ -15,10 +13,10 @@ apache.commons.compress.version=1.21
|
|||||||
hibernate.version=5.6.5.Final
|
hibernate.version=5.6.5.Final
|
||||||
jzstd.version=0.1-SNAPSHOT
|
jzstd.version=0.1-SNAPSHOT
|
||||||
jwo.version=1.0-SNAPSHOT
|
jwo.version=1.0-SNAPSHOT
|
||||||
jakarta.persistence.version=3.0.0
|
jakarta.persistence.version=3.1.0
|
||||||
jakarta.inject.version=2.0.0
|
jakarta.inject.version=2.0.1
|
||||||
jakarta.cdi.version=3.0.1
|
jakarta.cdi.version=4.0.1
|
||||||
jakarta.annotation.version=2.0.0
|
jakarta.annotation.version=2.1.1
|
||||||
jakarta.ee.version=8.0.0
|
jakarta.ee.version=8.0.0
|
||||||
jaxb.api.version=2.3.1
|
jaxb.api.version=2.3.1
|
||||||
|
|
||||||
|
2
gradle/wrapper/gradle-wrapper.properties
vendored
2
gradle/wrapper/gradle-wrapper.properties
vendored
@@ -1,5 +1,5 @@
|
|||||||
distributionBase=GRADLE_USER_HOME
|
distributionBase=GRADLE_USER_HOME
|
||||||
distributionPath=wrapper/dists
|
distributionPath=wrapper/dists
|
||||||
distributionUrl=https\://services.gradle.org/distributions/gradle-7.4.2-bin.zip
|
distributionUrl=https\://services.gradle.org/distributions/gradle-7.5.1-bin.zip
|
||||||
zipStoreBase=GRADLE_USER_HOME
|
zipStoreBase=GRADLE_USER_HOME
|
||||||
zipStorePath=wrapper/dists
|
zipStorePath=wrapper/dists
|
||||||
|
@@ -3,11 +3,12 @@ plugins {
|
|||||||
}
|
}
|
||||||
|
|
||||||
dependencies {
|
dependencies {
|
||||||
compileOnly group: 'jakarta.platform', name: 'jakarta.jakartaee-api'
|
compileOnly catalog.jakarta.xml.bind.api
|
||||||
compileOnly group: 'javax.xml.bind', name: 'jaxb-api'
|
compileOnly catalog.jakarta.ejb.api
|
||||||
|
compileOnly catalog.jakarta.persistence.api
|
||||||
}
|
}
|
||||||
|
|
||||||
tasks.named(JavaPlugin.COMPILE_JAVA_TASK_NAME, JavaCompile) { JavaCompile j ->
|
tasks.named(JavaPlugin.COMPILE_JAVA_TASK_NAME, JavaCompile) {
|
||||||
options.compilerArgs += [
|
options.compilerArgs += [
|
||||||
'--add-reads', 'net.woggioni.jpacrepo.api=ALL-UNNAMED'
|
'--add-reads', 'net.woggioni.jpacrepo.api=ALL-UNNAMED'
|
||||||
]
|
]
|
||||||
|
@@ -1,6 +1,9 @@
|
|||||||
module net.woggioni.jpacrepo.api {
|
module net.woggioni.jpacrepo.api {
|
||||||
requires static lombok;
|
requires static lombok;
|
||||||
requires static java.xml.bind;
|
requires static jakarta.xml.bind;
|
||||||
|
requires static jakarta.ejb;
|
||||||
|
requires static jakarta.persistence;
|
||||||
|
|
||||||
exports net.woggioni.jpacrepo.api.model;
|
exports net.woggioni.jpacrepo.api.model;
|
||||||
exports net.woggioni.jpacrepo.api.service;
|
exports net.woggioni.jpacrepo.api.service;
|
||||||
}
|
}
|
@@ -1,22 +1,26 @@
|
|||||||
package net.woggioni.jpacrepo.api.model;
|
package net.woggioni.jpacrepo.api.model;
|
||||||
|
|
||||||
|
import jakarta.persistence.ElementCollection;
|
||||||
|
import jakarta.persistence.Entity;
|
||||||
|
import jakarta.persistence.Access;
|
||||||
|
import jakarta.persistence.AccessType;
|
||||||
|
import jakarta.persistence.FetchType;
|
||||||
|
import jakarta.persistence.NamedQueries;
|
||||||
|
import jakarta.persistence.NamedQuery;
|
||||||
|
import jakarta.persistence.PrePersist;
|
||||||
|
import jakarta.persistence.PreUpdate;
|
||||||
|
import jakarta.persistence.Table;
|
||||||
|
import jakarta.persistence.Index;
|
||||||
|
import jakarta.persistence.EmbeddedId;
|
||||||
|
|
||||||
|
import jakarta.xml.bind.annotation.XmlRootElement;
|
||||||
|
import jakarta.xml.bind.annotation.XmlAccessType;
|
||||||
|
import jakarta.xml.bind.annotation.XmlAccessorType;
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
import lombok.Data;
|
import lombok.Data;
|
||||||
|
|
||||||
import javax.persistence.Access;
|
|
||||||
import javax.persistence.AccessType;
|
|
||||||
import javax.persistence.ElementCollection;
|
|
||||||
import javax.persistence.EmbeddedId;
|
|
||||||
import javax.persistence.Entity;
|
|
||||||
import javax.persistence.FetchType;
|
|
||||||
import javax.persistence.Index;
|
|
||||||
import javax.persistence.NamedQueries;
|
|
||||||
import javax.persistence.NamedQuery;
|
|
||||||
import javax.persistence.PrePersist;
|
|
||||||
import javax.persistence.PreUpdate;
|
|
||||||
import javax.persistence.Table;
|
|
||||||
import javax.xml.bind.annotation.XmlAccessType;
|
|
||||||
import javax.xml.bind.annotation.XmlAccessorType;
|
|
||||||
import javax.xml.bind.annotation.XmlRootElement;
|
|
||||||
import java.time.OffsetDateTime;
|
import java.time.OffsetDateTime;
|
||||||
import java.util.Set;
|
import java.util.Set;
|
||||||
|
|
||||||
|
@@ -1,17 +1,16 @@
|
|||||||
package net.woggioni.jpacrepo.api.model;
|
package net.woggioni.jpacrepo.api.model;
|
||||||
|
|
||||||
|
import jakarta.persistence.Access;
|
||||||
|
import jakarta.persistence.AccessType;
|
||||||
|
import jakarta.persistence.Embeddable;
|
||||||
|
import jakarta.persistence.EnumType;
|
||||||
|
import jakarta.persistence.Enumerated;
|
||||||
|
import jakarta.xml.bind.annotation.XmlAccessType;
|
||||||
|
import jakarta.xml.bind.annotation.XmlAccessorType;
|
||||||
|
import jakarta.xml.bind.annotation.XmlRootElement;
|
||||||
import lombok.Data;
|
import lombok.Data;
|
||||||
|
|
||||||
import javax.persistence.Access;
|
|
||||||
import javax.persistence.AccessType;
|
|
||||||
import javax.persistence.Embeddable;
|
|
||||||
import javax.persistence.EnumType;
|
|
||||||
import javax.persistence.Enumerated;
|
|
||||||
import javax.xml.bind.annotation.XmlAccessType;
|
|
||||||
import javax.xml.bind.annotation.XmlAccessorType;
|
|
||||||
import javax.xml.bind.annotation.XmlRootElement;
|
|
||||||
import java.io.Serializable;
|
import java.io.Serializable;
|
||||||
|
|
||||||
@Data
|
@Data
|
||||||
@Embeddable
|
@Embeddable
|
||||||
@Access(AccessType.FIELD)
|
@Access(AccessType.FIELD)
|
||||||
|
@@ -1,9 +1,10 @@
|
|||||||
package net.woggioni.jpacrepo.api.service;
|
package net.woggioni.jpacrepo.api.service;
|
||||||
|
|
||||||
|
import jakarta.ejb.Local;
|
||||||
|
|
||||||
|
|
||||||
import net.woggioni.jpacrepo.api.model.PkgData;
|
import net.woggioni.jpacrepo.api.model.PkgData;
|
||||||
|
|
||||||
import javax.ejb.Local;
|
|
||||||
import java.util.List;
|
import java.util.List;
|
||||||
|
|
||||||
@Local
|
@Local
|
||||||
|
@@ -1,6 +1,6 @@
|
|||||||
package net.woggioni.jpacrepo.api.service;
|
package net.woggioni.jpacrepo.api.service;
|
||||||
|
|
||||||
import javax.ejb.Remote;
|
import jakarta.ejb.Remote;
|
||||||
|
|
||||||
@Remote
|
@Remote
|
||||||
public interface PacmanServiceRemote {
|
public interface PacmanServiceRemote {
|
||||||
|
@@ -1,6 +1,6 @@
|
|||||||
plugins {
|
plugins {
|
||||||
id 'java-library'
|
id 'java-library'
|
||||||
id "net.woggioni.gradle.envelope"
|
alias(catalog.plugins.envelope)
|
||||||
}
|
}
|
||||||
|
|
||||||
import net.woggioni.gradle.envelope.EnvelopeJarTask
|
import net.woggioni.gradle.envelope.EnvelopeJarTask
|
||||||
@@ -8,10 +8,10 @@ import net.woggioni.gradle.envelope.EnvelopeJarTask
|
|||||||
dependencies {
|
dependencies {
|
||||||
|
|
||||||
implementation project(':jpacrepo-api')
|
implementation project(':jpacrepo-api')
|
||||||
implementation group: 'org.slf4j', name: 'slf4j-api'
|
implementation catalog.slf4j.api
|
||||||
implementation group: 'org.apache.logging.log4j', name: 'log4j-slf4j-impl'
|
implementation catalog.log4j.slf4j.impl
|
||||||
|
|
||||||
runtimeOnly group: 'org.jboss', name: 'jboss-ejb-client'
|
runtimeOnly catalog.jboss.ejb.client
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -19,7 +19,7 @@ java {
|
|||||||
modularity.inferModulePath = true
|
modularity.inferModulePath = true
|
||||||
}
|
}
|
||||||
|
|
||||||
tasks.named(JavaPlugin.COMPILE_JAVA_TASK_NAME, JavaCompile) { JavaCompile j ->
|
tasks.named(JavaPlugin.COMPILE_JAVA_TASK_NAME, JavaCompile) {
|
||||||
options.javaModuleMainClass = 'net.woggioni.jpacrepo.client.Main'
|
options.javaModuleMainClass = 'net.woggioni.jpacrepo.client.Main'
|
||||||
// options.compilerArgs += [
|
// options.compilerArgs += [
|
||||||
// '--add-reads', 'javax.ejb=ALL-UNNAMED'
|
// '--add-reads', 'javax.ejb=ALL-UNNAMED'
|
||||||
|
@@ -3,17 +3,13 @@ plugins {
|
|||||||
}
|
}
|
||||||
|
|
||||||
dependencies {
|
dependencies {
|
||||||
compileOnly group: 'jakarta.platform',
|
compileOnly catalog.jakarta.persistence.api
|
||||||
name: 'jakarta.jakartaee-api',
|
|
||||||
version: getProperty('jakarta.ee.version')
|
|
||||||
|
|
||||||
implementation group: 'org.tukaani', name: 'xz'
|
implementation catalog.xz
|
||||||
implementation group: 'org.slf4j', name: 'slf4j-api'
|
implementation catalog.slf4j.api
|
||||||
implementation group: 'net.woggioni', name: 'jzstd', version: getProperty('jzstd.version')
|
implementation catalog.jzstd
|
||||||
implementation group: 'net.woggioni', name: 'jwo'
|
implementation catalog.jwo
|
||||||
implementation group: 'org.apache.commons',
|
implementation catalog.commons.compress
|
||||||
name: 'commons-compress',
|
|
||||||
version: getProperty('apache.commons.compress.version')
|
|
||||||
|
|
||||||
api project(':jpacrepo-api')
|
api project(':jpacrepo-api')
|
||||||
}
|
}
|
@@ -1,5 +1,6 @@
|
|||||||
module net.woggioni.jpacrepo.impl {
|
module net.woggioni.jpacrepo.impl {
|
||||||
requires static lombok;
|
requires static lombok;
|
||||||
|
requires jakarta.persistence;
|
||||||
requires net.woggioni.jpacrepo.api;
|
requires net.woggioni.jpacrepo.api;
|
||||||
requires net.woggioni.jwo;
|
requires net.woggioni.jwo;
|
||||||
requires net.woggioni.jzstd;
|
requires net.woggioni.jzstd;
|
||||||
|
@@ -11,11 +11,22 @@ pluginManagement {
|
|||||||
}
|
}
|
||||||
gradlePluginPortal()
|
gradlePluginPortal()
|
||||||
}
|
}
|
||||||
|
}
|
||||||
|
|
||||||
plugins {
|
dependencyResolutionManagement {
|
||||||
id "net.woggioni.gradle.lombok" version getProperty('net.woggioni.gradle.lombok.version')
|
repositories {
|
||||||
id "net.woggioni.gradle.wildfly" version getProperty('net.woggioni.gradle.wildfly.version')
|
maven {
|
||||||
id "net.woggioni.gradle.envelope" version getProperty('net.woggioni.gradle.envelope.version')
|
url = 'https://woggioni.net/mvn/'
|
||||||
|
content {
|
||||||
|
includeGroup 'com.lys'
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
versionCatalogs {
|
||||||
|
catalog {
|
||||||
|
from group: 'com.lys', name: 'lys-catalog', version: getProperty('lys.version')
|
||||||
|
version("slf4j", "1.7.36")
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
17
src/main/java/module-info.java
Normal file
17
src/main/java/module-info.java
Normal file
@@ -0,0 +1,17 @@
|
|||||||
|
open module net.woggioni.jpacrepo {
|
||||||
|
requires static lombok;
|
||||||
|
requires static jakarta.xml.bind;
|
||||||
|
requires static jakarta.ejb;
|
||||||
|
requires static jakarta.persistence;
|
||||||
|
requires static jakarta.servlet;
|
||||||
|
requires static jakarta.inject;
|
||||||
|
requires static jakarta.concurrency;
|
||||||
|
requires static jakarta.cdi;
|
||||||
|
requires static jakarta.ws.rs;
|
||||||
|
|
||||||
|
requires net.woggioni.jwo;
|
||||||
|
requires net.woggioni.jpacrepo.impl;
|
||||||
|
requires org.slf4j;
|
||||||
|
|
||||||
|
requires net.woggioni.jpacrepo.api;
|
||||||
|
}
|
@@ -1,11 +1,11 @@
|
|||||||
package net.woggioni.jpacrepo.factory;
|
package net.woggioni.jpacrepo.factory;
|
||||||
|
|
||||||
|
import jakarta.enterprise.inject.Produces;
|
||||||
|
import jakarta.enterprise.inject.spi.InjectionPoint;
|
||||||
import net.woggioni.jpacrepo.config.AppConfig;
|
import net.woggioni.jpacrepo.config.AppConfig;
|
||||||
import org.slf4j.Logger;
|
import org.slf4j.Logger;
|
||||||
import org.slf4j.LoggerFactory;
|
import org.slf4j.LoggerFactory;
|
||||||
|
|
||||||
import javax.enterprise.inject.Produces;
|
|
||||||
import javax.enterprise.inject.spi.InjectionPoint;
|
|
||||||
|
|
||||||
public class BeanFactory {
|
public class BeanFactory {
|
||||||
|
|
||||||
|
@@ -1,11 +1,11 @@
|
|||||||
package net.woggioni.jpacrepo.factory;
|
package net.woggioni.jpacrepo.factory;
|
||||||
|
|
||||||
|
import jakarta.enterprise.context.ApplicationScoped;
|
||||||
|
import jakarta.enterprise.inject.Produces;
|
||||||
|
import jakarta.persistence.EntityManagerFactory;
|
||||||
|
import jakarta.persistence.Persistence;
|
||||||
import net.woggioni.jpacrepo.config.AppConfig;
|
import net.woggioni.jpacrepo.config.AppConfig;
|
||||||
|
|
||||||
import javax.enterprise.context.ApplicationScoped;
|
|
||||||
import javax.enterprise.inject.Produces;
|
|
||||||
import javax.persistence.EntityManagerFactory;
|
|
||||||
import javax.persistence.Persistence;
|
|
||||||
import java.util.Properties;
|
import java.util.Properties;
|
||||||
|
|
||||||
public class PersistenceUnitFactory {
|
public class PersistenceUnitFactory {
|
||||||
|
@@ -1,14 +1,14 @@
|
|||||||
package net.woggioni.jpacrepo.persistence;
|
package net.woggioni.jpacrepo.persistence;
|
||||||
|
|
||||||
|
|
||||||
|
import jakarta.persistence.EntityManager;
|
||||||
|
import jakarta.persistence.TypedQuery;
|
||||||
|
import jakarta.persistence.criteria.CriteriaBuilder;
|
||||||
|
import jakarta.persistence.criteria.CriteriaQuery;
|
||||||
|
import jakarta.persistence.criteria.Predicate;
|
||||||
|
import jakarta.persistence.criteria.Root;
|
||||||
import net.woggioni.jpacrepo.api.model.PkgData;
|
import net.woggioni.jpacrepo.api.model.PkgData;
|
||||||
|
|
||||||
import javax.persistence.EntityManager;
|
|
||||||
import javax.persistence.TypedQuery;
|
|
||||||
import javax.persistence.criteria.CriteriaBuilder;
|
|
||||||
import javax.persistence.criteria.CriteriaQuery;
|
|
||||||
import javax.persistence.criteria.Predicate;
|
|
||||||
import javax.persistence.criteria.Root;
|
|
||||||
import java.util.ArrayList;
|
import java.util.ArrayList;
|
||||||
import java.util.List;
|
import java.util.List;
|
||||||
|
|
||||||
|
@@ -1,5 +1,25 @@
|
|||||||
package net.woggioni.jpacrepo.service;
|
package net.woggioni.jpacrepo.service;
|
||||||
|
|
||||||
|
import jakarta.annotation.Resource;
|
||||||
|
import jakarta.ejb.Asynchronous;
|
||||||
|
import jakarta.ejb.ConcurrencyManagement;
|
||||||
|
import jakarta.ejb.ConcurrencyManagementType;
|
||||||
|
import jakarta.ejb.Local;
|
||||||
|
import jakarta.ejb.Lock;
|
||||||
|
import jakarta.ejb.LockType;
|
||||||
|
import jakarta.ejb.Remote;
|
||||||
|
import jakarta.ejb.Schedule;
|
||||||
|
import jakarta.ejb.Startup;
|
||||||
|
import jakarta.ejb.TransactionAttribute;
|
||||||
|
import jakarta.ejb.TransactionAttributeType;
|
||||||
|
import jakarta.ejb.TransactionManagement;
|
||||||
|
import jakarta.ejb.TransactionManagementType;
|
||||||
|
import jakarta.enterprise.concurrent.ManagedExecutorService;
|
||||||
|
import jakarta.inject.Inject;
|
||||||
|
import jakarta.inject.Singleton;
|
||||||
|
import jakarta.persistence.EntityManager;
|
||||||
|
import jakarta.persistence.EntityManagerFactory;
|
||||||
|
import jakarta.persistence.TypedQuery;
|
||||||
import lombok.SneakyThrows;
|
import lombok.SneakyThrows;
|
||||||
import net.woggioni.jpacrepo.api.model.PkgData;
|
import net.woggioni.jpacrepo.api.model.PkgData;
|
||||||
import net.woggioni.jpacrepo.api.service.PacmanServiceLocal;
|
import net.woggioni.jpacrepo.api.service.PacmanServiceLocal;
|
||||||
@@ -13,26 +33,7 @@ import net.woggioni.jwo.JWO;
|
|||||||
import net.woggioni.jwo.Sup;
|
import net.woggioni.jwo.Sup;
|
||||||
import org.slf4j.Logger;
|
import org.slf4j.Logger;
|
||||||
|
|
||||||
import javax.annotation.Resource;
|
|
||||||
import javax.ejb.Asynchronous;
|
|
||||||
import javax.ejb.ConcurrencyManagement;
|
|
||||||
import javax.ejb.ConcurrencyManagementType;
|
|
||||||
import javax.ejb.Local;
|
|
||||||
import javax.ejb.Lock;
|
|
||||||
import javax.ejb.LockType;
|
|
||||||
import javax.ejb.Remote;
|
|
||||||
import javax.ejb.Schedule;
|
|
||||||
import javax.ejb.Singleton;
|
|
||||||
import javax.ejb.Startup;
|
|
||||||
import javax.ejb.TransactionAttribute;
|
|
||||||
import javax.ejb.TransactionAttributeType;
|
|
||||||
import javax.ejb.TransactionManagement;
|
|
||||||
import javax.ejb.TransactionManagementType;
|
|
||||||
import javax.enterprise.concurrent.ManagedExecutorService;
|
|
||||||
import javax.inject.Inject;
|
|
||||||
import javax.persistence.EntityManager;
|
|
||||||
import javax.persistence.EntityManagerFactory;
|
|
||||||
import javax.persistence.TypedQuery;
|
|
||||||
import java.nio.file.Files;
|
import java.nio.file.Files;
|
||||||
import java.nio.file.Path;
|
import java.nio.file.Path;
|
||||||
import java.time.OffsetDateTime;
|
import java.time.OffsetDateTime;
|
||||||
|
@@ -1,5 +1,39 @@
|
|||||||
package net.woggioni.jpacrepo.service;
|
package net.woggioni.jpacrepo.service;
|
||||||
|
|
||||||
|
import jakarta.ejb.ConcurrencyManagement;
|
||||||
|
import jakarta.ejb.ConcurrencyManagementType;
|
||||||
|
import jakarta.ejb.Singleton;
|
||||||
|
import jakarta.ejb.TransactionAttribute;
|
||||||
|
import jakarta.ejb.TransactionAttributeType;
|
||||||
|
import jakarta.ejb.TransactionManagement;
|
||||||
|
import jakarta.ejb.TransactionManagementType;
|
||||||
|
import jakarta.inject.Inject;
|
||||||
|
import jakarta.persistence.EntityManager;
|
||||||
|
import jakarta.persistence.EntityManagerFactory;
|
||||||
|
import jakarta.persistence.NoResultException;
|
||||||
|
import jakarta.persistence.NonUniqueResultException;
|
||||||
|
import jakarta.persistence.TypedQuery;
|
||||||
|
import jakarta.ws.rs.BadRequestException;
|
||||||
|
import jakarta.ws.rs.Consumes;
|
||||||
|
import jakarta.ws.rs.FormParam;
|
||||||
|
import jakarta.ws.rs.GET;
|
||||||
|
import jakarta.ws.rs.MatrixParam;
|
||||||
|
import jakarta.ws.rs.NotFoundException;
|
||||||
|
import jakarta.ws.rs.OPTIONS;
|
||||||
|
import jakarta.ws.rs.POST;
|
||||||
|
import jakarta.ws.rs.Path;
|
||||||
|
import jakarta.ws.rs.PathParam;
|
||||||
|
import jakarta.ws.rs.Produces;
|
||||||
|
import jakarta.ws.rs.QueryParam;
|
||||||
|
import jakarta.ws.rs.WebApplicationException;
|
||||||
|
import jakarta.ws.rs.core.CacheControl;
|
||||||
|
import jakarta.ws.rs.core.Context;
|
||||||
|
import jakarta.ws.rs.core.EntityTag;
|
||||||
|
import jakarta.ws.rs.core.MediaType;
|
||||||
|
import jakarta.ws.rs.core.Request;
|
||||||
|
import jakarta.ws.rs.core.Response;
|
||||||
|
import jakarta.ws.rs.core.StreamingOutput;
|
||||||
|
import jakarta.ws.rs.core.UriInfo;
|
||||||
import lombok.SneakyThrows;
|
import lombok.SneakyThrows;
|
||||||
import lombok.val;
|
import lombok.val;
|
||||||
import net.woggioni.jpacrepo.api.model.CompressionFormat;
|
import net.woggioni.jpacrepo.api.model.CompressionFormat;
|
||||||
@@ -22,40 +56,7 @@ import org.apache.commons.compress.archivers.tar.TarArchiveEntry;
|
|||||||
import org.apache.commons.compress.archivers.tar.TarArchiveOutputStream;
|
import org.apache.commons.compress.archivers.tar.TarArchiveOutputStream;
|
||||||
import org.slf4j.Logger;
|
import org.slf4j.Logger;
|
||||||
|
|
||||||
import javax.ejb.ConcurrencyManagement;
|
|
||||||
import javax.ejb.ConcurrencyManagementType;
|
|
||||||
import javax.ejb.Singleton;
|
|
||||||
import javax.ejb.TransactionAttribute;
|
|
||||||
import javax.ejb.TransactionAttributeType;
|
|
||||||
import javax.ejb.TransactionManagement;
|
|
||||||
import javax.ejb.TransactionManagementType;
|
|
||||||
import javax.inject.Inject;
|
|
||||||
import javax.persistence.EntityManager;
|
|
||||||
import javax.persistence.EntityManagerFactory;
|
|
||||||
import javax.persistence.NoResultException;
|
|
||||||
import javax.persistence.NonUniqueResultException;
|
|
||||||
import javax.persistence.TypedQuery;
|
|
||||||
import javax.ws.rs.BadRequestException;
|
|
||||||
import javax.ws.rs.Consumes;
|
|
||||||
import javax.ws.rs.FormParam;
|
|
||||||
import javax.ws.rs.GET;
|
|
||||||
import javax.ws.rs.MatrixParam;
|
|
||||||
import javax.ws.rs.NotFoundException;
|
|
||||||
import javax.ws.rs.OPTIONS;
|
|
||||||
import javax.ws.rs.POST;
|
|
||||||
import javax.ws.rs.Path;
|
|
||||||
import javax.ws.rs.PathParam;
|
|
||||||
import javax.ws.rs.Produces;
|
|
||||||
import javax.ws.rs.QueryParam;
|
|
||||||
import javax.ws.rs.WebApplicationException;
|
|
||||||
import javax.ws.rs.core.CacheControl;
|
|
||||||
import javax.ws.rs.core.Context;
|
|
||||||
import javax.ws.rs.core.EntityTag;
|
|
||||||
import javax.ws.rs.core.MediaType;
|
|
||||||
import javax.ws.rs.core.Request;
|
|
||||||
import javax.ws.rs.core.Response;
|
|
||||||
import javax.ws.rs.core.StreamingOutput;
|
|
||||||
import javax.ws.rs.core.UriInfo;
|
|
||||||
import java.io.InputStream;
|
import java.io.InputStream;
|
||||||
import java.io.OutputStream;
|
import java.io.OutputStream;
|
||||||
import java.net.URI;
|
import java.net.URI;
|
||||||
|
@@ -1,7 +1,8 @@
|
|||||||
package net.woggioni.jpacrepo.service;
|
package net.woggioni.jpacrepo.service;
|
||||||
|
|
||||||
import javax.ws.rs.ApplicationPath;
|
import jakarta.ws.rs.ApplicationPath;
|
||||||
import javax.ws.rs.core.Application;
|
import jakarta.ws.rs.core.Application;
|
||||||
|
|
||||||
import java.util.HashSet;
|
import java.util.HashSet;
|
||||||
import java.util.Set;
|
import java.util.Set;
|
||||||
|
|
||||||
|
@@ -1,10 +1,10 @@
|
|||||||
package net.woggioni.jpacrepo.service.wire;
|
package net.woggioni.jpacrepo.service.wire;
|
||||||
|
|
||||||
|
|
||||||
|
import jakarta.xml.bind.annotation.XmlElement;
|
||||||
|
import jakarta.xml.bind.annotation.XmlRootElement;
|
||||||
import net.woggioni.jpacrepo.api.model.PkgData;
|
import net.woggioni.jpacrepo.api.model.PkgData;
|
||||||
|
|
||||||
import javax.xml.bind.annotation.XmlElement;
|
|
||||||
import javax.xml.bind.annotation.XmlRootElement;
|
|
||||||
import java.util.ArrayList;
|
import java.util.ArrayList;
|
||||||
import java.util.List;
|
import java.util.List;
|
||||||
|
|
||||||
|
@@ -1,9 +1,8 @@
|
|||||||
package net.woggioni.jpacrepo.service.wire;
|
package net.woggioni.jpacrepo.service.wire;
|
||||||
|
|
||||||
|
import jakarta.xml.bind.annotation.XmlRootElement;
|
||||||
import lombok.Data;
|
import lombok.Data;
|
||||||
|
|
||||||
import javax.xml.bind.annotation.XmlRootElement;
|
|
||||||
|
|
||||||
@Data
|
@Data
|
||||||
@XmlRootElement
|
@XmlRootElement
|
||||||
public class PkgTuple {
|
public class PkgTuple {
|
||||||
|
@@ -1,7 +1,8 @@
|
|||||||
package net.woggioni.jpacrepo.service.wire;
|
package net.woggioni.jpacrepo.service.wire;
|
||||||
|
|
||||||
import javax.xml.bind.annotation.XmlElement;
|
import jakarta.xml.bind.annotation.XmlElement;
|
||||||
import javax.xml.bind.annotation.XmlRootElement;
|
import jakarta.xml.bind.annotation.XmlRootElement;
|
||||||
|
|
||||||
import java.util.ArrayList;
|
import java.util.ArrayList;
|
||||||
import java.util.List;
|
import java.util.List;
|
||||||
|
|
||||||
|
@@ -1,10 +1,12 @@
|
|||||||
package net.woggioni.jpacrepo.servlet;
|
package net.woggioni.jpacrepo.servlet;
|
||||||
|
|
||||||
import javax.servlet.ServletException;
|
import jakarta.servlet.ServletException;
|
||||||
import javax.servlet.ServletOutputStream;
|
import jakarta.servlet.ServletOutputStream;
|
||||||
import javax.servlet.http.HttpServlet;
|
import jakarta.servlet.ServletContext;
|
||||||
import javax.servlet.http.HttpServletRequest;
|
import jakarta.servlet.http.HttpServlet;
|
||||||
import javax.servlet.http.HttpServletResponse;
|
import jakarta.servlet.http.HttpServletRequest;
|
||||||
|
import jakarta.servlet.http.HttpServletResponse;
|
||||||
|
|
||||||
import java.io.File;
|
import java.io.File;
|
||||||
import java.io.FileInputStream;
|
import java.io.FileInputStream;
|
||||||
import java.io.IOException;
|
import java.io.IOException;
|
||||||
|
@@ -1,10 +1,10 @@
|
|||||||
package net.woggioni.jpacrepo.servlet;
|
package net.woggioni.jpacrepo.servlet;
|
||||||
|
|
||||||
|
import jakarta.inject.Inject;
|
||||||
|
import jakarta.servlet.annotation.WebServlet;
|
||||||
|
import jakarta.servlet.http.HttpServletRequest;
|
||||||
import net.woggioni.jpacrepo.config.AppConfig;
|
import net.woggioni.jpacrepo.config.AppConfig;
|
||||||
|
|
||||||
import javax.inject.Inject;
|
|
||||||
import javax.servlet.annotation.WebServlet;
|
|
||||||
import javax.servlet.http.HttpServletRequest;
|
|
||||||
import java.io.File;
|
import java.io.File;
|
||||||
import java.nio.file.Path;
|
import java.nio.file.Path;
|
||||||
|
|
||||||
|
@@ -1,5 +1,5 @@
|
|||||||
import com.fasterxml.jackson.databind.ObjectMapper;
|
import com.fasterxml.jackson.databind.ObjectMapper;
|
||||||
import com.fasterxml.jackson.module.jaxb.JaxbAnnotationModule;
|
import com.fasterxml.jackson.module.jakarta.xmlbind.JakartaXmlBindAnnotationModule;
|
||||||
import jakarta.ws.rs.client.Client;
|
import jakarta.ws.rs.client.Client;
|
||||||
import jakarta.ws.rs.client.ClientBuilder;
|
import jakarta.ws.rs.client.ClientBuilder;
|
||||||
import jakarta.ws.rs.client.Entity;
|
import jakarta.ws.rs.client.Entity;
|
||||||
@@ -41,7 +41,7 @@ public class ClientTest {
|
|||||||
|
|
||||||
static {
|
static {
|
||||||
om = new ObjectMapper();
|
om = new ObjectMapper();
|
||||||
JaxbAnnotationModule module = new JaxbAnnotationModule();
|
JakartaXmlBindAnnotationModule module = new JakartaXmlBindAnnotationModule();
|
||||||
om.registerModule(module);
|
om.registerModule(module);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@@ -1,9 +1,11 @@
|
|||||||
import com.fasterxml.jackson.databind.ObjectMapper;
|
import com.fasterxml.jackson.databind.ObjectMapper;
|
||||||
import com.fasterxml.jackson.module.jaxb.JaxbAnnotationModule;
|
import com.fasterxml.jackson.datatype.jsr310.JavaTimeModule;
|
||||||
|
import com.fasterxml.jackson.module.jakarta.xmlbind.JakartaXmlBindAnnotationModule;
|
||||||
import lombok.SneakyThrows;
|
import lombok.SneakyThrows;
|
||||||
import net.woggioni.jpacrepo.api.model.PkgData;
|
import net.woggioni.jpacrepo.api.model.PkgData;
|
||||||
import net.woggioni.jpacrepo.impl.model.CompressionFormatImpl;
|
import net.woggioni.jpacrepo.impl.model.CompressionFormatImpl;
|
||||||
import net.woggioni.jpacrepo.impl.model.PkgDataImpl;
|
import net.woggioni.jpacrepo.impl.model.PkgDataImpl;
|
||||||
|
import org.junit.jupiter.api.Test;
|
||||||
|
|
||||||
import java.lang.reflect.ParameterizedType;
|
import java.lang.reflect.ParameterizedType;
|
||||||
import java.lang.reflect.Type;
|
import java.lang.reflect.Type;
|
||||||
@@ -17,11 +19,14 @@ import java.util.regex.Pattern;
|
|||||||
|
|
||||||
public class ParseTest {
|
public class ParseTest {
|
||||||
|
|
||||||
|
@Test
|
||||||
@SneakyThrows
|
@SneakyThrows
|
||||||
public void test() {
|
public void test() {
|
||||||
ObjectMapper om = new ObjectMapper();
|
ObjectMapper om = new ObjectMapper();
|
||||||
JaxbAnnotationModule module = new JaxbAnnotationModule();
|
JakartaXmlBindAnnotationModule module = new JakartaXmlBindAnnotationModule();
|
||||||
om.registerModule(module);
|
om.registerModule(module);
|
||||||
|
JavaTimeModule javaTimeModule = new JavaTimeModule();
|
||||||
|
om.registerModule(javaTimeModule);
|
||||||
Pattern pattern = Pattern.compile(".*\\.pkg\\.tar\\.(zst)");
|
Pattern pattern = Pattern.compile(".*\\.pkg\\.tar\\.(zst)");
|
||||||
Files.list(Paths.get("/var/cache/pacman/pkg"))
|
Files.list(Paths.get("/var/cache/pacman/pkg"))
|
||||||
.filter(Files::isRegularFile)
|
.filter(Files::isRegularFile)
|
||||||
|
Reference in New Issue
Block a user