Loading pom.xml +1 −1 Original line number Diff line number Diff line Loading @@ -4,7 +4,7 @@ <modelVersion>4.0.0</modelVersion> <groupId>com.inteligr8</groupId> <artifactId>common-rest-api</artifactId> <version>1.0.2</version> <version>1.1.0</version> <name>ReST API Client for Java</name> <properties> Loading src/main/java/com/inteligr8/rs/ClientConfiguration.java +13 −13 Original line number Diff line number Diff line Loading @@ -4,31 +4,31 @@ import java.net.URI; import javax.ws.rs.client.ClientRequestFilter; public abstract class ClientConfiguration { public interface ClientConfiguration { public abstract String getBaseUrl(); String getBaseUrl(); public abstract String getBasicAuthUsername(); String getBasicAuthUsername(); public abstract String getBasicAuthPassword(); String getBasicAuthPassword(); public abstract String getAccessToken(); String getAccessToken(); public abstract String getOAuthTokenUrl(); String getOAuthTokenUrl(); public abstract String getOAuthClientId(); String getOAuthClientId(); public abstract String getOAuthClientSecret(); String getOAuthClientSecret(); public abstract String getOAuthAuthCode(); String getOAuthAuthCode(); public abstract String getOAuthAuthRedirectUri(); String getOAuthAuthRedirectUri(); public abstract String getOAuthUsername(); String getOAuthUsername(); public abstract String getOAuthPassword(); String getOAuthPassword(); public ClientRequestFilter getAuthorizationFilter() { default ClientRequestFilter getAuthorizationFilter() { if (this.getAccessToken() != null) { return new AccessTokenRequestFilter(this.getAccessToken()); } else if (this.getOAuthTokenUrl() != null) { Loading src/main/java/com/inteligr8/rs/ClientCxfConfiguration.java 0 → 100644 +9 −0 Original line number Diff line number Diff line package com.inteligr8.rs; public interface ClientCxfConfiguration extends ClientConfiguration { default boolean isDefaultBusEnabled() { return true; } } src/main/java/com/inteligr8/rs/ClientCxfImpl.java +12 −0 Original line number Diff line number Diff line Loading @@ -6,6 +6,7 @@ import java.util.List; import javax.ws.rs.client.ClientRequestFilter; import javax.ws.rs.ext.RuntimeDelegate; 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; Loading @@ -22,6 +23,9 @@ public abstract class ClientCxfImpl extends Client implements InitializingBean { private final Logger logger = LoggerFactory.getLogger(ClientCxfImpl.class); @Override protected abstract ClientCxfConfiguration getConfig(); @Override public void afterPropertiesSet() { if (RuntimeDelegate.getInstance() == null) { Loading Loading @@ -50,6 +54,14 @@ public abstract class ClientCxfImpl extends Client implements InitializingBean { // so we need to create a CXF client WebClient client = WebClient.create(this.getConfig().getBaseUrl(), providersAndFilters); if (!this.getConfig().isDefaultBusEnabled()) { // Some applications (like ACS) add interceptors to the default bus // those interceptors may treat all messages as SOAP messages (like ACS), resulting in ClassCastExceptions // we need to ignore the default bus org.apache.cxf.jaxrs.client.ClientConfiguration config = WebClient.getConfig(client); config.setBus(BusFactory.newInstance().createBus()); } return client; } Loading src/main/java/com/inteligr8/rs/ClientJerseyConfiguration.java 0 → 100644 +9 −0 Original line number Diff line number Diff line package com.inteligr8.rs; public interface ClientJerseyConfiguration extends ClientConfiguration { default boolean isPutBodyRequired() { return true; } } Loading
pom.xml +1 −1 Original line number Diff line number Diff line Loading @@ -4,7 +4,7 @@ <modelVersion>4.0.0</modelVersion> <groupId>com.inteligr8</groupId> <artifactId>common-rest-api</artifactId> <version>1.0.2</version> <version>1.1.0</version> <name>ReST API Client for Java</name> <properties> Loading
src/main/java/com/inteligr8/rs/ClientConfiguration.java +13 −13 Original line number Diff line number Diff line Loading @@ -4,31 +4,31 @@ import java.net.URI; import javax.ws.rs.client.ClientRequestFilter; public abstract class ClientConfiguration { public interface ClientConfiguration { public abstract String getBaseUrl(); String getBaseUrl(); public abstract String getBasicAuthUsername(); String getBasicAuthUsername(); public abstract String getBasicAuthPassword(); String getBasicAuthPassword(); public abstract String getAccessToken(); String getAccessToken(); public abstract String getOAuthTokenUrl(); String getOAuthTokenUrl(); public abstract String getOAuthClientId(); String getOAuthClientId(); public abstract String getOAuthClientSecret(); String getOAuthClientSecret(); public abstract String getOAuthAuthCode(); String getOAuthAuthCode(); public abstract String getOAuthAuthRedirectUri(); String getOAuthAuthRedirectUri(); public abstract String getOAuthUsername(); String getOAuthUsername(); public abstract String getOAuthPassword(); String getOAuthPassword(); public ClientRequestFilter getAuthorizationFilter() { default ClientRequestFilter getAuthorizationFilter() { if (this.getAccessToken() != null) { return new AccessTokenRequestFilter(this.getAccessToken()); } else if (this.getOAuthTokenUrl() != null) { Loading
src/main/java/com/inteligr8/rs/ClientCxfConfiguration.java 0 → 100644 +9 −0 Original line number Diff line number Diff line package com.inteligr8.rs; public interface ClientCxfConfiguration extends ClientConfiguration { default boolean isDefaultBusEnabled() { return true; } }
src/main/java/com/inteligr8/rs/ClientCxfImpl.java +12 −0 Original line number Diff line number Diff line Loading @@ -6,6 +6,7 @@ import java.util.List; import javax.ws.rs.client.ClientRequestFilter; import javax.ws.rs.ext.RuntimeDelegate; 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; Loading @@ -22,6 +23,9 @@ public abstract class ClientCxfImpl extends Client implements InitializingBean { private final Logger logger = LoggerFactory.getLogger(ClientCxfImpl.class); @Override protected abstract ClientCxfConfiguration getConfig(); @Override public void afterPropertiesSet() { if (RuntimeDelegate.getInstance() == null) { Loading Loading @@ -50,6 +54,14 @@ public abstract class ClientCxfImpl extends Client implements InitializingBean { // so we need to create a CXF client WebClient client = WebClient.create(this.getConfig().getBaseUrl(), providersAndFilters); if (!this.getConfig().isDefaultBusEnabled()) { // Some applications (like ACS) add interceptors to the default bus // those interceptors may treat all messages as SOAP messages (like ACS), resulting in ClassCastExceptions // we need to ignore the default bus org.apache.cxf.jaxrs.client.ClientConfiguration config = WebClient.getConfig(client); config.setBus(BusFactory.newInstance().createBus()); } return client; } Loading
src/main/java/com/inteligr8/rs/ClientJerseyConfiguration.java 0 → 100644 +9 −0 Original line number Diff line number Diff line package com.inteligr8.rs; public interface ClientJerseyConfiguration extends ClientConfiguration { default boolean isPutBodyRequired() { return true; } }