diff --git a/pom.xml b/pom.xml
index 97848dc..59551ee 100644
--- a/pom.xml
+++ b/pom.xml
@@ -3,8 +3,8 @@
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 https://maven.apache.org/xsd/maven-4.0.0.xsd">
4.0.0
com.inteligr8
- common-rest-api
- 1.1.6
+ common-rest-client
+ 2.0.0
ReST API Client for Java
@@ -39,11 +39,6 @@
jackson-datatype-jsr310
2.12.2
-
- org.glassfish.jersey.media
- jersey-media-multipart
- ${jersey.version}
-
org.slf4j
slf4j-api
@@ -54,36 +49,6 @@
jakarta.ws.rs-api
2.1.6
-
- org.glassfish.jersey.ext
- jersey-proxy-client
- ${jersey.version}
- provided
-
-
- org.glassfish.jersey.core
- jersey-client
- ${jersey.version}
- provided
-
-
- org.apache.cxf
- cxf-rt-rs-client
- ${cxf.version}
- provided
-
-
- org.glassfish.jersey.inject
- jersey-hk2
- ${jersey.version}
- test
-
-
- org.glassfish.jersey.media
- jersey-media-json-jackson
- ${jersey.version}
- test
-
org.junit.jupiter
junit-jupiter-api
@@ -106,6 +71,37 @@
+
+ org.codehaus.mojo
+ build-helper-maven-plugin
+ 3.2.0
+
+
+ add-jaxrs-src
+ add-source
+
+
+ src/main/${jaxrs.impl}
+
+
+
+
+ add-test-src
+ add-test-source
+
+
+ src/test/${jaxrs.impl}
+
+
+
+
+
+
+ maven-jar-plugin
+
+ ${jaxrs.impl}
+
+
maven-surefire-plugin
3.0.0-M5
@@ -144,6 +140,70 @@
+
+
+ jaxrs-jersey
+
+ true
+
+ jaxrs.impl
+ jersey
+
+
+
+ jersey
+
+
+
+ org.glassfish.jersey.ext
+ jersey-proxy-client
+ ${jersey.version}
+
+
+ org.glassfish.jersey.core
+ jersey-client
+ ${jersey.version}
+
+
+ org.glassfish.jersey.media
+ jersey-media-multipart
+ ${jersey.version}
+
+
+ org.glassfish.jersey.inject
+ jersey-hk2
+ ${jersey.version}
+ test
+
+
+ org.glassfish.jersey.media
+ jersey-media-json-jackson
+ ${jersey.version}
+ test
+
+
+
+
+ jaxrs-cxf
+
+
+ jaxrs.impl
+ cxf
+
+
+
+ cxf
+
+
+
+ org.apache.cxf
+ cxf-rt-rs-client
+ ${cxf.version}
+
+
+
+
+
inteligr8-public
diff --git a/src/main/java/com/inteligr8/rs/ClientCxfConfiguration.java b/src/main/cxf/com/inteligr8/rs/ClientCxfConfiguration.java
similarity index 100%
rename from src/main/java/com/inteligr8/rs/ClientCxfConfiguration.java
rename to src/main/cxf/com/inteligr8/rs/ClientCxfConfiguration.java
diff --git a/src/main/java/com/inteligr8/rs/ClientCxfImpl.java b/src/main/cxf/com/inteligr8/rs/ClientCxfImpl.java
similarity index 87%
rename from src/main/java/com/inteligr8/rs/ClientCxfImpl.java
rename to src/main/cxf/com/inteligr8/rs/ClientCxfImpl.java
index c28bbd7..35829cd 100644
--- a/src/main/java/com/inteligr8/rs/ClientCxfImpl.java
+++ b/src/main/cxf/com/inteligr8/rs/ClientCxfImpl.java
@@ -3,6 +3,7 @@ package com.inteligr8.rs;
import java.util.LinkedList;
import java.util.List;
+import javax.annotation.PostConstruct;
import javax.ws.rs.ext.RuntimeDelegate;
import org.apache.cxf.BusFactory;
@@ -11,7 +12,8 @@ import org.apache.cxf.jaxrs.client.WebClient;
import org.apache.cxf.jaxrs.impl.RuntimeDelegateImpl;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
-import org.springframework.beans.factory.InitializingBean;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.stereotype.Component;
import com.fasterxml.jackson.jaxrs.json.JacksonJaxbJsonProvider;
@@ -21,22 +23,26 @@ import com.fasterxml.jackson.jaxrs.json.JacksonJaxbJsonProvider;
*
* @author brian@inteligr8.com
*/
-public abstract class ClientCxfImpl extends Client implements InitializingBean {
+@Component("client.cxf")
+public class ClientCxfImpl extends Client {
private final Logger logger = LoggerFactory.getLogger(ClientCxfImpl.class);
- @Override
- protected abstract ClientCxfConfiguration getConfig();
+ private ClientCxfConfiguration config;
- @Override
- public void afterPropertiesSet() {
- this.register();
+ /**
+ * This constructor is for Spring or POJO use
+ */
+ @Autowired
+ public ClientCxfImpl(ClientCxfConfiguration config) {
+ this.config = config;
}
/**
* This method registers the Apache CXF library as the default provider for
* the JAX-RS specification.
*/
+ @PostConstruct
public void register() {
if (RuntimeDelegate.getInstance() == null) {
this.logger.info("Setting JAX-RS runtime delegate to the CXF library");
@@ -94,6 +100,10 @@ public abstract class ClientCxfImpl extends Client implements InitializingBean {
public void addProvidersAndFilters(List