/** * Creates WebClient, baseURI will be set to Client currentURI * @param client existing client * @param inheritHeaders if existing Client headers can be inherited by new client */ public static WebClient fromClient(Client client, boolean inheritHeaders) { WebClient webClient = null; ClientState clientState = getClientState(client); if (clientState == null) { webClient = create(client.getCurrentURI()); if (inheritHeaders) { webClient.headers(client.getHeaders()); } } else { MultivaluedMap<String, String> headers = inheritHeaders ? client.getHeaders() : null; webClient = new WebClient(clientState.newState(client.getCurrentURI(), headers, null)); } copyProperties(webClient, client); return webClient; }
/** * Creates WebClient, baseURI will be set to Client currentURI * @param client existing client * @param inheritHeaders if existing Client headers can be inherited by new client */ public static WebClient fromClient(Client client, boolean inheritHeaders) { WebClient webClient = null; ClientState clientState = getClientState(client); if (clientState == null) { webClient = create(client.getCurrentURI()); if (inheritHeaders) { webClient.headers(client.getHeaders()); } } else { MultivaluedMap<String, String> headers = inheritHeaders ? client.getHeaders() : null; webClient = new WebClient(clientState.newState(client.getCurrentURI(), headers, null)); } copyProperties(webClient, client); return webClient; }
/** * Creates WebClient, baseURI will be set to Client currentURI * @param client existing client * @param inheritHeaders if existing Client headers can be inherited by new client */ public static WebClient fromClient(Client client, boolean inheritHeaders) { WebClient webClient = null; ClientState clientState = getClientState(client); if (clientState == null) { webClient = create(client.getCurrentURI()); if (inheritHeaders) { webClient.headers(client.getHeaders()); } } else { MultivaluedMap<String, String> headers = inheritHeaders ? client.getHeaders() : null; webClient = new WebClient(clientState.newState(client.getCurrentURI(), headers, null)); } copyProperties(webClient, client); return webClient; }
/** * Creates a proxy, baseURI will be set to Client currentURI * @param client Client instance * @param cls proxy class, if not interface then a CGLIB proxy will be created * @param inheritHeaders if true then existing Client headers will be inherited by new proxy * and subresource proxies if any * @return typed proxy */ public static <T> T fromClient(Client client, Class<T> cls, boolean inheritHeaders) { JAXRSClientFactoryBean bean = getBean(client.getCurrentURI().toString(), cls, null); bean.setInheritHeaders(inheritHeaders); ClientState clientState = WebClient.getClientState(client); T proxy = null; if (clientState == null) { proxy = bean.create(cls); if (inheritHeaders) { WebClient.client(proxy).headers(client.getHeaders()); } } else { MultivaluedMap<String, String> headers = inheritHeaders ? client.getHeaders() : null; bean.setInitialState(clientState.newState(client.getCurrentURI(), headers, null)); proxy = bean.create(cls); } WebClient.copyProperties(WebClient.client(proxy), client); return proxy; }
public Map<String, String> deassociate( final ResourceDeassociationAction action, final String etag, final String key, final List<StatusBean> statuses) { Map<String, String> result = new LinkedHashMap<>(); synchronized (this) { AnyService<?> service = getService(etag, getAnyServiceClass()); Client client = WebClient.client(service); List<String> accept = client.getHeaders().get(HttpHeaders.ACCEPT); if (!accept.contains(RESTHeaders.MULTIPART_MIXED)) { client.accept(RESTHeaders.MULTIPART_MIXED); } ResourceDR resourceDR = new ResourceDR.Builder().key(key). action(action). resources(StatusUtils.statusR(statuses).build().getResources()).build(); try { List<BatchResponseItem> items = parseBatchResponse(service.deassociate(resourceDR)); for (int i = 0; i < items.size(); i++) { result.put( resourceDR.getResources().get(i), getStatus(items.get(i).getStatus())); } } catch (IOException e) { LOG.error("While processing Batch response", e); } resetClient(getAnyServiceClass()); } return result; }
/** * Creates a proxy, baseURI will be set to Client currentURI * @param client Client instance * @param cls proxy class, if not interface then a CGLIB proxy will be created * @param inheritHeaders if true then existing Client headers will be inherited by new proxy * and subresource proxies if any * @return typed proxy */ public static <T> T fromClient(Client client, Class<T> cls, boolean inheritHeaders) { JAXRSClientFactoryBean bean = getBean(client.getCurrentURI().toString(), cls, null); bean.setInheritHeaders(inheritHeaders); ClientState clientState = WebClient.getClientState(client); T proxy = null; if (clientState == null) { proxy = bean.create(cls); if (inheritHeaders) { WebClient.client(proxy).headers(client.getHeaders()); } } else { MultivaluedMap<String, String> headers = inheritHeaders ? client.getHeaders() : null; bean.setInitialState(clientState.newState(client.getCurrentURI(), headers, null)); proxy = bean.create(cls); } WebClient.copyProperties(WebClient.client(proxy), client); return proxy; }
/** * Creates a proxy, baseURI will be set to Client currentURI * @param client Client instance * @param cls proxy class, if not interface then a CGLIB proxy will be created * @param inheritHeaders if true then existing Client headers will be inherited by new proxy * and subresource proxies if any * @return typed proxy */ public static <T> T fromClient(Client client, Class<T> cls, boolean inheritHeaders) { JAXRSClientFactoryBean bean = getBean(client.getCurrentURI().toString(), cls, null); bean.setInheritHeaders(inheritHeaders); ClientState clientState = WebClient.getClientState(client); T proxy = null; if (clientState == null) { proxy = bean.create(cls); if (inheritHeaders) { WebClient.client(proxy).headers(client.getHeaders()); } } else { MultivaluedMap<String, String> headers = inheritHeaders ? client.getHeaders() : null; bean.setInitialState(clientState.newState(client.getCurrentURI(), headers, null)); proxy = bean.create(cls); } WebClient.copyProperties(WebClient.client(proxy), client); return proxy; }
AnyService<?> service = getService(etag, getAnyServiceClass()); Client client = WebClient.client(service); List<String> accept = client.getHeaders().get(HttpHeaders.ACCEPT); if (!accept.contains(RESTHeaders.MULTIPART_MIXED)) { client.accept(RESTHeaders.MULTIPART_MIXED);
private void invoke(int ind) throws Exception { String actualHeaderName = bookHeader + ind; String actualBookName = bookName + ind; if (stateCanBeChanged) { Client c = WebClient.client(proxy); MultivaluedMap<String, String> map = c.getHeaders(); map.putSingle("CustomHeader", actualHeaderName); c.headers(map); proxy.echoBookNameAndHeader2(actualBookName); verifyResponse(c.getResponse(), actualBookName, actualHeaderName); } else { verifyResponse(proxy.echoBookNameAndHeader(actualHeaderName, actualBookName), actualBookName, actualHeaderName); } }