in gui/jaxrs/jaxrs-client/src/main/java/org/apache/batchee/jaxrs/client/BatchEEJAXRS1CxfClient.java [43:99]
public BatchEEJAXRS1CxfClient(final ClientConfiguration configuration) {
try {
final List<Object> providers = new LinkedList<Object>();
if (configuration.getJsonProvider() != null) {
providers.add(configuration.getJsonProvider().newInstance());
}
client = JAXRSClientFactory.create(configuration.getBaseUrl(), JBatchResource.class, providers);
final HTTPConduit conduit = WebClient.getConfig(client).getHttpConduit();
if (CxfClientConfiguration.class.isInstance(conduit)) {
final HTTPClientPolicy policy = CxfClientConfiguration.class.cast(configuration).getPolicy();
if (policy != null) {
conduit.setClient(policy);
}
} else {
conduit.setClient(defaultClientPolicy());
}
final ClientSslConfiguration ssl = configuration.getSsl();
if (ssl != null) {
final TLSClientParameters params;
if (conduit.getTlsClientParameters() == null) {
params = new TLSClientParameters();
conduit.setTlsClientParameters(params);
} else {
params = conduit.getTlsClientParameters();
}
if (ssl.getHostnameVerifier() != null) { // not really supported in CXF 2.6
params.setUseHttpsURLConnectionDefaultHostnameVerifier(false);
}
if (ssl.getSslContext() != null) {
params.setSSLSocketFactory(ssl.getSslContext().getSocketFactory());
}
if (ssl.getKeystore() != null) {
try {
final KeyManagerFactory tmf = KeyManagerFactory.getInstance(KeyManagerFactory.getDefaultAlgorithm());
tmf.init(ssl.getKeystore(), ssl.getKeystorePassword().toCharArray());
params.setKeyManagers(tmf.getKeyManagers());
} catch (final Exception ex) {
throw new IllegalArgumentException(ex);
}
}
}
final ClientSecurity security = configuration.getSecurity();
if (security != null) {
final AuthorizationPolicy authorization = new AuthorizationPolicy();
authorization.setUserName(security.getUsername());
authorization.setPassword(security.getPassword());
authorization.setAuthorizationType(security.getType());
conduit.setAuthorization(authorization);
}
} catch (final Exception e) {
throw new IllegalArgumentException(e);
}
}