diff --git a/pom.xml b/pom.xml
index 0e3118b..7a75f55 100644
--- a/pom.xml
+++ b/pom.xml
@@ -21,7 +21,7 @@
org.commonjava
service-parent
- 2
+ 5
org.commonjava.util
sidecar
@@ -39,7 +39,7 @@
https://github.com/Commonjava/indy-sidecar
UTF-8
UTF-8
- 3.0.0-M5
+ 3.0.0
2.2
@@ -71,7 +71,7 @@
io.quarkus
- quarkus-opentelemetry-exporter-otlp
+ quarkus-opentelemetry
io.opentelemetry
@@ -88,15 +88,15 @@
io.quarkus
- quarkus-rest-client-jsonb
+ quarkus-rest-client-jackson
io.quarkus
- quarkus-reactive-routes
+ quarkus-resteasy-reactive-jackson
io.quarkus
- quarkus-resteasy-mutiny
+ quarkus-reactive-routes
io.quarkus
@@ -110,6 +110,11 @@
org.apache.commons
commons-lang3
+
+ commons-io
+ commons-io
+ 2.11.0
+
io.smallrye.reactive
smallrye-mutiny-vertx-web-client
@@ -147,6 +152,7 @@
io.quarkus
quarkus-maven-plugin
+ ${quarkus.version}
maven-compiler-plugin
diff --git a/src/main/java/org/commonjava/util/sidecar/client/folo/TrackingService.java b/src/main/java/org/commonjava/util/sidecar/client/folo/TrackingService.java
index 185e740..e0caffc 100644
--- a/src/main/java/org/commonjava/util/sidecar/client/folo/TrackingService.java
+++ b/src/main/java/org/commonjava/util/sidecar/client/folo/TrackingService.java
@@ -17,11 +17,11 @@
import org.eclipse.microprofile.rest.client.inject.RegisterRestClient;
-import javax.ws.rs.GET;
-import javax.ws.rs.Path;
-import javax.ws.rs.PathParam;
-import javax.ws.rs.QueryParam;
-import javax.ws.rs.core.Response;
+import jakarta.ws.rs.GET;
+import jakarta.ws.rs.Path;
+import jakarta.ws.rs.PathParam;
+import jakarta.ws.rs.QueryParam;
+import jakarta.ws.rs.core.Response;
@Path( "/api/folo/admin" )
@RegisterRestClient( configKey = "tracking-service-api" )
diff --git a/src/main/java/org/commonjava/util/sidecar/config/ProxyConfiguration.java b/src/main/java/org/commonjava/util/sidecar/config/ProxyConfiguration.java
index 221cbd5..594b3f1 100644
--- a/src/main/java/org/commonjava/util/sidecar/config/ProxyConfiguration.java
+++ b/src/main/java/org/commonjava/util/sidecar/config/ProxyConfiguration.java
@@ -26,9 +26,9 @@
import org.slf4j.LoggerFactory;
import org.yaml.snakeyaml.Yaml;
-import javax.annotation.PostConstruct;
-import javax.enterprise.context.ApplicationScoped;
-import javax.inject.Inject;
+import jakarta.annotation.PostConstruct;
+import jakarta.enterprise.context.ApplicationScoped;
+import jakarta.inject.Inject;
import java.io.File;
import java.io.FileInputStream;
import java.io.IOException;
diff --git a/src/main/java/org/commonjava/util/sidecar/config/SidecarConfig.java b/src/main/java/org/commonjava/util/sidecar/config/SidecarConfig.java
index 9eda6b3..160590f 100644
--- a/src/main/java/org/commonjava/util/sidecar/config/SidecarConfig.java
+++ b/src/main/java/org/commonjava/util/sidecar/config/SidecarConfig.java
@@ -15,17 +15,14 @@
*/
package org.commonjava.util.sidecar.config;
-import io.quarkus.arc.config.ConfigProperties;
-import org.eclipse.microprofile.config.inject.ConfigProperty;
+import io.smallrye.config.ConfigMapping;
import java.util.Optional;
-@ConfigProperties( prefix = "sidecar" )
-public class SidecarConfig
+@ConfigMapping( prefix = "sidecar" )
+public interface SidecarConfig
{
- @ConfigProperty( name = "archive-api" )
- public Optional archiveApi;
+ Optional archiveApi();
- @ConfigProperty( name = "local-repository" )
- public Optional localRepository;
+ Optional localRepository();
}
diff --git a/src/main/java/org/commonjava/util/sidecar/interceptor/ExceptionHandler.java b/src/main/java/org/commonjava/util/sidecar/interceptor/ExceptionHandler.java
index 3b41d0b..36c4b4f 100644
--- a/src/main/java/org/commonjava/util/sidecar/interceptor/ExceptionHandler.java
+++ b/src/main/java/org/commonjava/util/sidecar/interceptor/ExceptionHandler.java
@@ -15,7 +15,7 @@
*/
package org.commonjava.util.sidecar.interceptor;
-import javax.interceptor.InterceptorBinding;
+import jakarta.interceptor.InterceptorBinding;
import java.lang.annotation.Retention;
import java.lang.annotation.Target;
diff --git a/src/main/java/org/commonjava/util/sidecar/interceptor/ExceptionHandlerInterceptor.java b/src/main/java/org/commonjava/util/sidecar/interceptor/ExceptionHandlerInterceptor.java
index 16d27a1..aa1e3e1 100644
--- a/src/main/java/org/commonjava/util/sidecar/interceptor/ExceptionHandlerInterceptor.java
+++ b/src/main/java/org/commonjava/util/sidecar/interceptor/ExceptionHandlerInterceptor.java
@@ -18,10 +18,10 @@
import io.smallrye.mutiny.Uni;
import org.commonjava.util.sidecar.exception.ServiceNotFoundException;
-import javax.interceptor.AroundInvoke;
-import javax.interceptor.Interceptor;
-import javax.interceptor.InvocationContext;
-import javax.ws.rs.core.Response;
+import jakarta.interceptor.AroundInvoke;
+import jakarta.interceptor.Interceptor;
+import jakarta.interceptor.InvocationContext;
+import jakarta.ws.rs.core.Response;
@Interceptor
@ExceptionHandler
diff --git a/src/main/java/org/commonjava/util/sidecar/jaxrs/FoloContentAccessResource.java b/src/main/java/org/commonjava/util/sidecar/jaxrs/FoloContentAccessResource.java
index c5001e8..4b5418c 100644
--- a/src/main/java/org/commonjava/util/sidecar/jaxrs/FoloContentAccessResource.java
+++ b/src/main/java/org/commonjava/util/sidecar/jaxrs/FoloContentAccessResource.java
@@ -32,15 +32,15 @@
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
-import javax.inject.Inject;
-import javax.ws.rs.GET;
-import javax.ws.rs.HEAD;
-import javax.ws.rs.POST;
-import javax.ws.rs.PUT;
-import javax.ws.rs.Path;
-import javax.ws.rs.QueryParam;
-import javax.ws.rs.core.Context;
-import javax.ws.rs.core.Response;
+import jakarta.inject.Inject;
+import jakarta.ws.rs.GET;
+import jakarta.ws.rs.HEAD;
+import jakarta.ws.rs.POST;
+import jakarta.ws.rs.PUT;
+import jakarta.ws.rs.Path;
+import jakarta.ws.rs.QueryParam;
+import jakarta.ws.rs.core.Context;
+import jakarta.ws.rs.core.Response;
import java.io.File;
import java.io.InputStream;
import java.util.Optional;
diff --git a/src/main/java/org/commonjava/util/sidecar/jaxrs/ProxyResource.java b/src/main/java/org/commonjava/util/sidecar/jaxrs/ProxyResource.java
index f334e89..c8301e0 100644
--- a/src/main/java/org/commonjava/util/sidecar/jaxrs/ProxyResource.java
+++ b/src/main/java/org/commonjava/util/sidecar/jaxrs/ProxyResource.java
@@ -22,15 +22,15 @@
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
-import javax.inject.Inject;
-import javax.ws.rs.DELETE;
-import javax.ws.rs.GET;
-import javax.ws.rs.HEAD;
-import javax.ws.rs.POST;
-import javax.ws.rs.PUT;
-import javax.ws.rs.Path;
-import javax.ws.rs.core.Context;
-import javax.ws.rs.core.Response;
+import jakarta.inject.Inject;
+import jakarta.ws.rs.DELETE;
+import jakarta.ws.rs.GET;
+import jakarta.ws.rs.HEAD;
+import jakarta.ws.rs.POST;
+import jakarta.ws.rs.PUT;
+import jakarta.ws.rs.Path;
+import jakarta.ws.rs.core.Context;
+import jakarta.ws.rs.core.Response;
import java.io.InputStream;
@Path( "/{path: (.*)}" )
diff --git a/src/main/java/org/commonjava/util/sidecar/services/ArchiveRetrieveService.java b/src/main/java/org/commonjava/util/sidecar/services/ArchiveRetrieveService.java
index b8dd508..7b24ca7 100644
--- a/src/main/java/org/commonjava/util/sidecar/services/ArchiveRetrieveService.java
+++ b/src/main/java/org/commonjava/util/sidecar/services/ArchiveRetrieveService.java
@@ -19,8 +19,8 @@
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
-import javax.enterprise.context.ApplicationScoped;
-import javax.inject.Inject;
+import jakarta.enterprise.context.ApplicationScoped;
+import jakarta.inject.Inject;
import java.io.File;
import java.util.Optional;
@@ -42,7 +42,7 @@ public class ArchiveRetrieveService
public Optional getLocally( final String path )
{
- File download = new File( sidecarConfig.localRepository.orElse( DEFAULT_REPO_PATH ) + File.separator + path );
+ File download = new File( sidecarConfig.localRepository().orElse( DEFAULT_REPO_PATH ) + File.separator + path );
if ( !download.exists() )
{
return Optional.empty();
diff --git a/src/main/java/org/commonjava/util/sidecar/services/Classifier.java b/src/main/java/org/commonjava/util/sidecar/services/Classifier.java
index 75ee3cd..13ca0c0 100644
--- a/src/main/java/org/commonjava/util/sidecar/services/Classifier.java
+++ b/src/main/java/org/commonjava/util/sidecar/services/Classifier.java
@@ -28,9 +28,9 @@
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
-import javax.annotation.PostConstruct;
-import javax.enterprise.context.ApplicationScoped;
-import javax.inject.Inject;
+import jakarta.annotation.PostConstruct;
+import jakarta.enterprise.context.ApplicationScoped;
+import jakarta.inject.Inject;
import java.util.Map;
import java.util.Set;
import java.util.concurrent.ConcurrentHashMap;
diff --git a/src/main/java/org/commonjava/util/sidecar/services/ProxyService.java b/src/main/java/org/commonjava/util/sidecar/services/ProxyService.java
index d600a0b..03b2ad3 100644
--- a/src/main/java/org/commonjava/util/sidecar/services/ProxyService.java
+++ b/src/main/java/org/commonjava/util/sidecar/services/ProxyService.java
@@ -28,13 +28,13 @@
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
-import javax.enterprise.context.ApplicationScoped;
-import javax.inject.Inject;
-import javax.ws.rs.core.Response;
+import jakarta.enterprise.context.ApplicationScoped;
+import jakarta.inject.Inject;
+import jakarta.ws.rs.core.Response;
import java.io.InputStream;
import static io.vertx.core.http.HttpMethod.HEAD;
-import static javax.ws.rs.core.Response.Status.INTERNAL_SERVER_ERROR;
+import static jakarta.ws.rs.core.Response.Status.INTERNAL_SERVER_ERROR;
import static org.commonjava.util.sidecar.services.PreSeedConstants.FOLO_TRACK_REST_BASE_PATH;
import static org.commonjava.util.sidecar.services.PreSeedConstants.FORBIDDEN_HEADERS;
import static org.commonjava.util.sidecar.util.SidecarUtils.normalizePathAnd;
diff --git a/src/main/java/org/commonjava/util/sidecar/services/ReportService.java b/src/main/java/org/commonjava/util/sidecar/services/ReportService.java
index c1bcfbb..c1e5a0c 100644
--- a/src/main/java/org/commonjava/util/sidecar/services/ReportService.java
+++ b/src/main/java/org/commonjava/util/sidecar/services/ReportService.java
@@ -29,10 +29,10 @@
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
-import javax.annotation.PostConstruct;
-import javax.enterprise.context.ApplicationScoped;
-import javax.inject.Inject;
-import javax.ws.rs.core.Response;
+import jakarta.annotation.PostConstruct;
+import jakarta.enterprise.context.ApplicationScoped;
+import jakarta.inject.Inject;
+import jakarta.ws.rs.core.Response;
import java.io.File;
import java.io.IOException;
import java.nio.file.Files;
@@ -67,7 +67,7 @@ public class ReportService
@PostConstruct
void init()
{
- loadReport( sidecarConfig.localRepository.orElse( DEFAULT_REPO_PATH ) );
+ loadReport( sidecarConfig.localRepository().orElse( DEFAULT_REPO_PATH ) );
}
private void loadReport( String path )
diff --git a/src/main/java/org/commonjava/util/sidecar/util/OtelAdapter.java b/src/main/java/org/commonjava/util/sidecar/util/OtelAdapter.java
index abe6fb2..95612f9 100644
--- a/src/main/java/org/commonjava/util/sidecar/util/OtelAdapter.java
+++ b/src/main/java/org/commonjava/util/sidecar/util/OtelAdapter.java
@@ -24,8 +24,8 @@
import okhttp3.Request;
import org.eclipse.microprofile.config.inject.ConfigProperty;
-import javax.enterprise.context.ApplicationScoped;
-import javax.inject.Inject;
+import jakarta.enterprise.context.ApplicationScoped;
+import jakarta.inject.Inject;
@ApplicationScoped
public class OtelAdapter
diff --git a/src/main/java/org/commonjava/util/sidecar/util/ProxyStreamingOutput.java b/src/main/java/org/commonjava/util/sidecar/util/ProxyStreamingOutput.java
index e7d5a30..a80cc86 100644
--- a/src/main/java/org/commonjava/util/sidecar/util/ProxyStreamingOutput.java
+++ b/src/main/java/org/commonjava/util/sidecar/util/ProxyStreamingOutput.java
@@ -22,7 +22,7 @@
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
-import javax.ws.rs.core.StreamingOutput;
+import jakarta.ws.rs.core.StreamingOutput;
import java.io.IOException;
import java.io.OutputStream;
diff --git a/src/main/java/org/commonjava/util/sidecar/util/TransferStreamingOutput.java b/src/main/java/org/commonjava/util/sidecar/util/TransferStreamingOutput.java
index 4370449..1fabddd 100644
--- a/src/main/java/org/commonjava/util/sidecar/util/TransferStreamingOutput.java
+++ b/src/main/java/org/commonjava/util/sidecar/util/TransferStreamingOutput.java
@@ -20,8 +20,8 @@
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
-import javax.ws.rs.WebApplicationException;
-import javax.ws.rs.core.StreamingOutput;
+import jakarta.ws.rs.WebApplicationException;
+import jakarta.ws.rs.core.StreamingOutput;
import java.io.IOException;
import java.io.InputStream;
import java.io.OutputStream;
diff --git a/src/main/java/org/commonjava/util/sidecar/util/WebClientAdapter.java b/src/main/java/org/commonjava/util/sidecar/util/WebClientAdapter.java
index 6f2b86d..6a17fee 100644
--- a/src/main/java/org/commonjava/util/sidecar/util/WebClientAdapter.java
+++ b/src/main/java/org/commonjava/util/sidecar/util/WebClientAdapter.java
@@ -50,8 +50,8 @@
import java.util.UUID;
import java.util.concurrent.atomic.AtomicLong;
-import static javax.ws.rs.core.HttpHeaders.CONTENT_TYPE;
-import static javax.ws.rs.core.HttpHeaders.HOST;
+import static jakarta.ws.rs.core.HttpHeaders.CONTENT_TYPE;
+import static jakarta.ws.rs.core.HttpHeaders.HOST;
import static org.commonjava.util.sidecar.util.SidecarUtils.getMediaType;
public class WebClientAdapter
diff --git a/src/test/java/org/commonjava/util/sidecar/ftest/MavenDownloadContentTest.java b/src/test/java/org/commonjava/util/sidecar/ftest/MavenDownloadContentTest.java
index 7ded79d..53fa713 100644
--- a/src/test/java/org/commonjava/util/sidecar/ftest/MavenDownloadContentTest.java
+++ b/src/test/java/org/commonjava/util/sidecar/ftest/MavenDownloadContentTest.java
@@ -24,8 +24,8 @@
import org.junit.jupiter.api.Test;
import static io.restassured.RestAssured.given;
-import static javax.ws.rs.core.Response.Status.NOT_FOUND;
-import static javax.ws.rs.core.Response.Status.OK;
+import static jakarta.ws.rs.core.Response.Status.NOT_FOUND;
+import static jakarta.ws.rs.core.Response.Status.OK;
@QuarkusTest
@TestProfile( SidecarFunctionProfile.class )
diff --git a/src/test/java/org/commonjava/util/sidecar/ftest/TrackedContentDownloadTest.java b/src/test/java/org/commonjava/util/sidecar/ftest/TrackedContentDownloadTest.java
index 4b09c5e..9d3b875 100644
--- a/src/test/java/org/commonjava/util/sidecar/ftest/TrackedContentDownloadTest.java
+++ b/src/test/java/org/commonjava/util/sidecar/ftest/TrackedContentDownloadTest.java
@@ -26,12 +26,12 @@
import org.junit.jupiter.api.Tag;
import org.junit.jupiter.api.Test;
-import javax.ws.rs.core.MediaType;
+import jakarta.ws.rs.core.MediaType;
import static io.restassured.RestAssured.given;
import static io.restassured.parsing.Parser.JSON;
-import static javax.ws.rs.core.Response.Status.NOT_FOUND;
-import static javax.ws.rs.core.Response.Status.OK;
+import static jakarta.ws.rs.core.Response.Status.NOT_FOUND;
+import static jakarta.ws.rs.core.Response.Status.OK;
import static org.hamcrest.CoreMatchers.containsString;
@QuarkusTest
diff --git a/src/test/java/org/commonjava/util/sidecar/ftest/mock/BuildConfigIdEnvMock.java b/src/test/java/org/commonjava/util/sidecar/ftest/mock/BuildConfigIdEnvMock.java
index 52ca841..9aeb1ba 100644
--- a/src/test/java/org/commonjava/util/sidecar/ftest/mock/BuildConfigIdEnvMock.java
+++ b/src/test/java/org/commonjava/util/sidecar/ftest/mock/BuildConfigIdEnvMock.java
@@ -17,8 +17,8 @@
import org.commonjava.util.sidecar.services.ArchiveRetrieveService;
-import javax.enterprise.context.ApplicationScoped;
-import javax.enterprise.inject.Alternative;
+import jakarta.enterprise.context.ApplicationScoped;
+import jakarta.enterprise.inject.Alternative;
@ApplicationScoped
@Alternative
diff --git a/src/test/java/org/commonjava/util/sidecar/jaxrs/MavenDownloadFromArchiveTest.java b/src/test/java/org/commonjava/util/sidecar/jaxrs/MavenDownloadFromArchiveTest.java
index acb1428..a334c2b 100644
--- a/src/test/java/org/commonjava/util/sidecar/jaxrs/MavenDownloadFromArchiveTest.java
+++ b/src/test/java/org/commonjava/util/sidecar/jaxrs/MavenDownloadFromArchiveTest.java
@@ -23,8 +23,8 @@
import org.junit.jupiter.api.Test;
import static io.restassured.RestAssured.given;
-import static javax.ws.rs.core.Response.Status.NOT_FOUND;
-import static javax.ws.rs.core.Response.Status.OK;
+import static jakarta.ws.rs.core.Response.Status.NOT_FOUND;
+import static jakarta.ws.rs.core.Response.Status.OK;
@QuarkusTest
@TestProfile( MockTestProfile.class )
diff --git a/src/test/java/org/commonjava/util/sidecar/jaxrs/NPMDownloadFromArchiveTest.java b/src/test/java/org/commonjava/util/sidecar/jaxrs/NPMDownloadFromArchiveTest.java
index 22f8741..5e9c671 100644
--- a/src/test/java/org/commonjava/util/sidecar/jaxrs/NPMDownloadFromArchiveTest.java
+++ b/src/test/java/org/commonjava/util/sidecar/jaxrs/NPMDownloadFromArchiveTest.java
@@ -23,8 +23,8 @@
import org.junit.jupiter.api.Test;
import static io.restassured.RestAssured.given;
-import static javax.ws.rs.core.Response.Status.NOT_FOUND;
-import static javax.ws.rs.core.Response.Status.OK;
+import static jakarta.ws.rs.core.Response.Status.NOT_FOUND;
+import static jakarta.ws.rs.core.Response.Status.OK;
@QuarkusTest
@TestProfile( MockTestProfile.class )
diff --git a/src/test/java/org/commonjava/util/sidecar/jaxrs/mock/MockArchiveRetrieveService.java b/src/test/java/org/commonjava/util/sidecar/jaxrs/mock/MockArchiveRetrieveService.java
index 5b98b09..5c1de2b 100644
--- a/src/test/java/org/commonjava/util/sidecar/jaxrs/mock/MockArchiveRetrieveService.java
+++ b/src/test/java/org/commonjava/util/sidecar/jaxrs/mock/MockArchiveRetrieveService.java
@@ -18,9 +18,9 @@
import org.apache.commons.io.FileUtils;
import org.commonjava.util.sidecar.services.ArchiveRetrieveService;
-import javax.annotation.PostConstruct;
-import javax.enterprise.context.ApplicationScoped;
-import javax.enterprise.inject.Alternative;
+import jakarta.annotation.PostConstruct;
+import jakarta.enterprise.context.ApplicationScoped;
+import jakarta.enterprise.inject.Alternative;
import java.io.File;
import java.io.IOException;