@Override public Object invoke(Object[] args) { WebTarget target = parent; if (hasJaxParams) { HashMap<String, Object> pathParams = new HashMap<String, Object>(); for (int i = 0; i < jaxParams.length; i++) { if (jaxParams[i] instanceof PathParam) { pathParams.put(((PathParam) jaxParams[i]).value(), args[i]); } else if (jaxParams[i] instanceof MatrixParam) { target = target.matrixParam(((MatrixParam) jaxParams[i]).value(), args[i]); } } if (!pathParams.isEmpty()) { target = target.resolveTemplates(pathParams); } } return ProxyBuilder.proxy(iface, target, config); } }
@Override public WebTarget resolveTemplates(Map<String, Object> templateValues, boolean encodeSlashInPath) { return target.resolveTemplates(templateValues, encodeSlashInPath); }
@Override public WebTarget resolveTemplates(Map<String, Object> templateValues) { return target.resolveTemplates(templateValues); }
@Override public WebTarget resolveTemplates(Map<String, Object> templateValues) { return target.resolveTemplates(templateValues); }
@Override public WebTarget resolveTemplates(Map<String, Object> templateValues) { return base.resolveTemplates(templateValues); }
@Override public WebTarget resolveTemplates(Map<String, Object> templateValues, boolean encodeSlashInPath) { return base.resolveTemplates(templateValues, encodeSlashInPath); }
@Override public WebTarget resolveTemplates(Map<String, Object> templateValues, boolean encodeSlashInPath) { return target.resolveTemplates(templateValues, encodeSlashInPath); }
@Override public WebTarget resolveTemplates(Map<String, Object> templateValues) { return new TenacityWebTarget( delegate.resolveTemplates(templateValues), tenacityPropertyKey, timeoutPadding ); }
@Override public WebTarget resolveTemplates(Map<String, Object> templateValues, boolean encodeSlashInPath) { return new TenacityWebTarget( delegate.resolveTemplates(templateValues, encodeSlashInPath), tenacityPropertyKey, timeoutPadding ); }
@Override public WebTarget resolveTemplates(Map<String, Object> templateValues) { return new TenacityWebTarget( delegate.resolveTemplates(templateValues), tenacityPropertyKey, timeoutPadding ); }
protected Invocation.Builder getInvocationBuilder(final String templateUri, final Map<String, Object> templateValues, final Map<String, Object> queryParameterValues) { final String baseUrl = ApplicationProperties.getInstance().getProperty("ucp.baseUrl"); final Client client = ClientBuilder.newClient(); final WebTarget target = client.target(baseUrl); final WebTarget template = target.path(templateUri); final WebTarget resource = template.resolveTemplates(templateValues); if (queryParameterValues != null) { final Iterator iterator = queryParameterValues.entrySet().iterator(); while (iterator.hasNext()) { final Map.Entry pair = (Map.Entry) iterator.next(); resource.queryParam((String) pair.getKey(), pair.getValue()); } } final Invocation.Builder invocationBuilder = resource.request(MediaType.APPLICATION_JSON_TYPE); return invocationBuilder; }
@Override public WrappedWebTarget resolveTemplates( Map<String, Object> templateValues, boolean encodeSlashInPath) { return new WrappedWebTarget(delegate.resolveTemplates(templateValues, encodeSlashInPath)); }
@Override public WebTarget resolveTemplates(Map<String, Object> templateValues, boolean encodeSlashInPath) { return new TenacityWebTarget( delegate.resolveTemplates(templateValues, encodeSlashInPath), tenacityPropertyKey, timeoutPadding ); }
@Override public CompletableWebTarget resolveTemplates(Map<String, Object> templateValues, boolean encodeSlashInPath) { return new CompletableWebTarget(webTarget.resolveTemplates(templateValues, encodeSlashInPath)); }
@Override public RxWebTarget resolveTemplates(Map<String, Object> templateValues) { return new RxWebTarget(webTarget.resolveTemplates(templateValues)); }
@Override public RxWebTarget resolveTemplates(Map<String, Object> templateValues, boolean encodeSlashInPath) { return new RxWebTarget(webTarget.resolveTemplates(templateValues, encodeSlashInPath)); }
@Override public CompletableWebTarget resolveTemplates(Map<String, Object> templateValues) { return new CompletableWebTarget(webTarget.resolveTemplates(templateValues)); }
public WebTarget resolveTemplates(Map<String, Object> templateValues, boolean encodeSlashInPath) { return getOrCreateDelegate(delegate.resolveTemplates(templateValues, encodeSlashInPath)); }
@Override public Response insert(WebTarget webClient, final InputStream object, final Map<String, Object> pathParams, final Map<String, Object> queryParams, final Map<String, Object> builderProperties) throws Exception { if (queryParams != null) webClient = applyQuery(webClient, queryParams); if (pathParams != null) webClient = webClient.resolveTemplates(pathParams); Builder builder = acceptMediaType(webClient.request()); if (builderProperties != null){ addBuilderProperties(builder, builderProperties); } return builder.post(Entity.entity(object, MediaType.APPLICATION_OCTET_STREAM_TYPE)); }
@Override public StatusResult insertStatusReturn(WebTarget webClient, final T object, final Map<String, Object> pathParams, final Map<String, Object> queryParams, final Map<String, Object> builderProperties) throws Exception { if (queryParams != null) webClient = applyQuery(webClient, queryParams); if (pathParams != null) webClient = webClient.resolveTemplates(pathParams); Builder builder = acceptMediaType(webClient.request()); if (builderProperties != null){ addBuilderProperties(builder, builderProperties); } Response resp = builder.post(Entity.entity(object, acceptMediaType())); return getStatusResult(resp); }