diff --git a/pom.xml b/pom.xml
index 97a590d..6395b00 100644
--- a/pom.xml
+++ b/pom.xml
@@ -39,6 +39,11 @@
jackson-datatype-jsr310
2.12.2
+
+ org.glassfish.jersey.media
+ jersey-media-multipart
+ ${jersey.version}
+
org.slf4j
slf4j-api
diff --git a/src/main/java/com/inteligr8/rs/Client.java b/src/main/java/com/inteligr8/rs/Client.java
index a607652..06a6128 100644
--- a/src/main/java/com/inteligr8/rs/Client.java
+++ b/src/main/java/com/inteligr8/rs/Client.java
@@ -26,7 +26,7 @@ public abstract class Client {
public final javax.ws.rs.client.Client getClient() {
synchronized (this.sync) {
if (this.client == null)
- this.client = this.buildClient(null);
+ this.client = this.buildClient((AuthorizationFilter)null);
}
return this.client;
@@ -48,7 +48,7 @@ public abstract class Client {
* @param authFilter A dynamic authorization filter.
* @return A pre-configured JAX-RS client (no URL) with the specified authorization.
*/
- public javax.ws.rs.client.Client buildClient(AuthorizationFilter authFilter) {
+ public final javax.ws.rs.client.Client buildClient(AuthorizationFilter authFilter) {
JacksonJsonProvider provider = new JacksonJaxbJsonProvider();
if (this.getConfig().isWrapRootValueEnabled())
@@ -64,9 +64,14 @@ public abstract class Client {
authFilter = this.getConfig().createAuthorizationFilter();
if (authFilter != null)
clientBuilder.register(authFilter);
+ this.buildClient(clientBuilder);
return clientBuilder.build();
}
+
+ public void buildClient(ClientBuilder clientBuilder) {
+ // for extension purposes
+ }
/**
* @return A pre-configured JAX-RS target (client w/ base URL) with configured authorization.
diff --git a/src/main/java/com/inteligr8/rs/ClientCxfImpl.java b/src/main/java/com/inteligr8/rs/ClientCxfImpl.java
index 9e4f8f0..c28bbd7 100644
--- a/src/main/java/com/inteligr8/rs/ClientCxfImpl.java
+++ b/src/main/java/com/inteligr8/rs/ClientCxfImpl.java
@@ -9,7 +9,6 @@ import org.apache.cxf.BusFactory;
import org.apache.cxf.jaxrs.client.JAXRSClientFactory;
import org.apache.cxf.jaxrs.client.WebClient;
import org.apache.cxf.jaxrs.impl.RuntimeDelegateImpl;
-import org.apache.cxf.jaxrs.provider.MultipartProvider;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import org.springframework.beans.factory.InitializingBean;
@@ -68,12 +67,14 @@ public abstract class ClientCxfImpl extends Client implements InitializingBean {
List