private void initTargetClientIfNeeded(Map<String, Object> configProps) { URI uri = uriBuilder.build(); if (targetClient == null) { JAXRSClientFactoryBean bean = new JAXRSClientFactoryBean(); bean.setAddress(uri.toString()); Boolean threadSafe = getBooleanValue(configProps.get(THREAD_SAFE_CLIENT_PROP)); if (threadSafe == null) { threadSafe = DEFAULT_THREAD_SAFETY_CLIENT_STATUS; } bean.setThreadSafe(threadSafe); if (threadSafe) { Integer cleanupPeriod = getIntValue(configProps.get(THREAD_SAFE_CLIENT_STATE_CLEANUP_PROP)); if (cleanupPeriod == null) { cleanupPeriod = THREAD_SAFE_CLIENT_STATE_CLEANUP_PERIOD; } if (cleanupPeriod != null) { bean.setSecondsToKeepState(cleanupPeriod); } } targetClient = bean.createWebClient(); ClientImpl.this.baseClients.add(targetClient); } else if (!targetClient.getCurrentURI().equals(uri)) { targetClient.to(uri.toString(), false); } }
private void initTargetClientIfNeeded(Map<String, Object> configProps) { URI uri = uriBuilder.build(); if (targetClient == null) { JAXRSClientFactoryBean bean = new JAXRSClientFactoryBean(); bean.setAddress(uri.toString()); Boolean threadSafe = getBooleanValue(configProps.get(THREAD_SAFE_CLIENT_PROP)); if (threadSafe == null) { threadSafe = DEFAULT_THREAD_SAFETY_CLIENT_STATUS; } bean.setThreadSafe(threadSafe); if (threadSafe) { Integer cleanupPeriod = getIntValue(configProps.get(THREAD_SAFE_CLIENT_STATE_CLEANUP_PROP)); if (cleanupPeriod == null) { cleanupPeriod = THREAD_SAFE_CLIENT_STATE_CLEANUP_PERIOD; } if (cleanupPeriod != null) { bean.setSecondsToKeepState(cleanupPeriod); } } targetClient = bean.createWebClient(); ClientImpl.this.baseClients.add(targetClient); } else if (!targetClient.getCurrentURI().equals(uri)) { targetClient.to(uri.toString(), false); } }
protected JAXRSClientFactoryBean defaultRestClientFactoryBean() { JAXRSClientFactoryBean defaultRestClientFactoryBean = new JAXRSClientFactoryBean(); defaultRestClientFactoryBean.setHeaders(new HashMap<>()); if (StringUtils.isBlank(address)) { throw new IllegalArgumentException("Property 'address' is missing"); } defaultRestClientFactoryBean.setAddress(address); if (StringUtils.isNotBlank(domain)) { defaultRestClientFactoryBean.getHeaders().put(RESTHeaders.DOMAIN, Collections.singletonList(domain)); } defaultRestClientFactoryBean.setThreadSafe(true); defaultRestClientFactoryBean.setInheritHeaders(true); List<Feature> features = new ArrayList<>(); features.add(new LoggingFeature()); defaultRestClientFactoryBean.setFeatures(features); List<Object> providers = new ArrayList<>(4); providers.add(new DateParamConverterProvider()); providers.add(getJaxbProvider()); providers.add(getJsonProvider()); providers.add(getExceptionMapper()); defaultRestClientFactoryBean.setProviders(providers); return defaultRestClientFactoryBean; }
protected JAXRSClientFactoryBean defaultRestClientFactoryBean() { JAXRSClientFactoryBean defaultRestClientFactoryBean = new JAXRSClientFactoryBean(); defaultRestClientFactoryBean.setHeaders(new HashMap<>()); if (StringUtils.isBlank(address)) { throw new IllegalArgumentException("Property 'address' is missing"); } defaultRestClientFactoryBean.setAddress(address); if (StringUtils.isNotBlank(domain)) { defaultRestClientFactoryBean.getHeaders().put(RESTHeaders.DOMAIN, Collections.singletonList(domain)); } defaultRestClientFactoryBean.setThreadSafe(true); defaultRestClientFactoryBean.setInheritHeaders(true); List<Feature> features = new ArrayList<>(); features.add(new LoggingFeature()); defaultRestClientFactoryBean.setFeatures(features); List<Object> providers = new ArrayList<>(4); providers.add(new DateParamConverterProvider()); providers.add(getJaxbProvider()); providers.add(getJsonProvider()); providers.add(getExceptionMapper()); defaultRestClientFactoryBean.setProviders(providers); return defaultRestClientFactoryBean; }
@PostConstruct private void init() { final JAXRSClientFactoryBean bean = new JAXRSClientFactoryBean(); bean.setAddress("http://api.ipstack.com/"); bean.setProvider(json.provider()); bean.setThreadSafe(true); webClient = bean.createWebClient(); }
@Override protected void setupJAXRSClientFactoryBean(JAXRSClientFactoryBean cfb, String address) { configurer.configureBean(beanId, cfb); // support to call the configurer here getNullSafeCxfRsEndpointConfigurer().configure(cfb); cfb.setAddress(address); cfb.setThreadSafe(true); }
protected Client createClient() { JAXRSClientFactoryBean bean = new JAXRSClientFactoryBean(); bean.setBus(bus); bean.setAddress(address); bean.setThreadSafe(threadSafe); setJaxrsResources(bean); for (String beanName : context.getBeanDefinitionNames()) { if (context.findAnnotationOnBean(beanName, Provider.class) != null) { bean.setProvider(context.getBean(beanName)); } else if (context.findAnnotationOnBean(beanName, org.apache.cxf.annotations.Provider.class) != null) { addCxfProvider(bean, context.getBean(beanName)); } } Map<String, String> extraHeaders = new HashMap<>(); if (!StringUtils.isEmpty(accept)) { extraHeaders.put("Accept", accept); } if (!StringUtils.isEmpty(contentType)) { extraHeaders.put("Content-Type", contentType); } if (!extraHeaders.isEmpty()) { bean.setHeaders(extraHeaders); } return bean.create(); } protected void addCxfProvider(JAXRSClientFactoryBean factory, Object provider) {
protected Client createClient() { JAXRSClientFactoryBean bean = new JAXRSClientFactoryBean(); bean.setBus(bus); bean.setAddress(address); bean.setThreadSafe(threadSafe); setJaxrsResources(bean); for (String beanName : context.getBeanDefinitionNames()) { if (context.findAnnotationOnBean(beanName, Provider.class) != null) { bean.setProvider(context.getBean(beanName)); } else if (context.findAnnotationOnBean(beanName, org.apache.cxf.annotations.Provider.class) != null) { addCxfProvider(bean, context.getBean(beanName)); } } Map<String, String> extraHeaders = new HashMap<>(); if (!StringUtils.isEmpty(accept)) { extraHeaders.put("Accept", accept); } if (!StringUtils.isEmpty(contentType)) { extraHeaders.put("Content-Type", contentType); } if (!extraHeaders.isEmpty()) { bean.setHeaders(extraHeaders); } return bean.create(); } protected void addCxfProvider(JAXRSClientFactoryBean factory, Object provider) {
protected void setupJAXRSClientFactoryBean(JAXRSClientFactoryBean cfb, String address) { if (modelRef != null) { cfb.setModelRef(modelRef); } if (getResourceClasses() != null && !getResourceClasses().isEmpty()) { cfb.setResourceClass(getResourceClasses().get(0)); cfb.getServiceFactory().setResourceClasses(getResourceClasses()); } setupCommonFactoryProperties(cfb); cfb.setThreadSafe(true); getNullSafeCxfRsEndpointConfigurer().configure(cfb); // Add the address could be override by message header if (address != null) { cfb.setAddress(address); } }
protected JAXRSClientFactoryBean getClientFactory() { if (null == cachedClientFactory) { JAXRSClientFactoryBean factoryBean = new JAXRSClientFactoryBean(); factoryBean.setThreadSafe(true); factoryBean.setAddress(getServerURL()); if (Authentication.BASIC == auxiliaryStorageAuthentication) { factoryBean.setUsername(authenticationUser); factoryBean.setPassword(authenticationPassword); } if (Authentication.SAML == auxiliaryStorageAuthentication) { STSClient stsClient = STSClientCreator.create(factoryBean.getBus(), stsProps); STSRESTOutInterceptor outInterceptor = new STSRESTOutInterceptor(); outInterceptor.setStsClient(stsClient); factoryBean.getOutInterceptors().add(outInterceptor); factoryBean.getOutInterceptors().add(new SamlHeaderOutInterceptor()); } cachedClientFactory = factoryBean; } return cachedClientFactory; }
protected JAXRSClientFactoryBean getClientFactory() { if (null == cachedClientFactory) { JAXRSClientFactoryBean factoryBean = new JAXRSClientFactoryBean(); factoryBean.setThreadSafe(true); factoryBean.setAddress(getServerURL()); if (Authentication.BASIC == auxiliaryStorageAuthentication) { factoryBean.setUsername(authenticationUser); factoryBean.setPassword(authenticationPassword); } if (Authentication.SAML == auxiliaryStorageAuthentication) { STSClient stsClient = STSClientCreator.create(factoryBean.getBus(), stsProps); STSRESTOutInterceptor outInterceptor = new STSRESTOutInterceptor(); outInterceptor.setStsClient(stsClient); factoryBean.getOutInterceptors().add(outInterceptor); factoryBean.getOutInterceptors().add(new SamlHeaderOutInterceptor()); } cachedClientFactory = factoryBean; } return cachedClientFactory; }
bean.setFeatures(Arrays.<AbstractFeature>asList(new LoggingFeature())); bean.setThreadSafe(threadSafe); rootResource = bean.create(proxyType);