Commit f2032df0 authored by Brian Long's avatar Brian Long
Browse files

Merge branch 'develop' into stable

parents 8d3f4559 824b58bc
Loading
Loading
Loading
Loading
+1 −1
Original line number Diff line number Diff line
@@ -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>
+13 −13
Original line number Diff line number Diff line
@@ -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) {
+9 −0
Original line number Diff line number Diff line
package com.inteligr8.rs;

public interface ClientCxfConfiguration extends ClientConfiguration {
	
	default boolean isDefaultBusEnabled() {
		return true;
	}

}
+12 −0
Original line number Diff line number Diff line
@@ -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;
@@ -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) {
@@ -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;
	}
	
+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