private void logResponseContent(Holder<Response> responseHolder, String msg) throws ResponseException { if (LOG.isDebugEnabled() && responseHolder.get() != null) { if (responseHolder.get().getHeaders() != null) { msg += "\nresponse headers:" + responseHolder.get().getHeaders(); } if (responseHolder.get().getResponseBodyAsString() != null) { msg += "\nresponse message:" + responseHolder.get().getResponseBodyAsString(); } msg += "\n"; LOG.debug(msg); } }
public void handle(final Response restResponse) throws ResponseException { if (restResponse.isSuccessful()) { rpcUrlValid.set(true); } } });
private Manifest doDownload(final URI url, boolean raiseEvent) throws ManifestNotFoundException { final Holder<Manifest> manifestHolder = new Holder<>(); final Holder<Throwable> exception = new Holder<>(); exception.set((Throwable) ObjectUtils.defaultIfNull(re.getCause(), re)); } finally { Thread.currentThread().setContextClassLoader(currentContextClassloader); if (manifestHolder.get() == null) { if (raiseEvent) { eventPublisher.publish(new ManifestDownloadFailedEvent(url, exception.get())); if (exception.get() == null) { throw new ManifestNotFoundException(url.toString()); } else { throw new ManifestNotFoundException(url.toString(), exception.get()); eventPublisher.publish(new ManifestDownloadedEvent(manifestHolder.get())); return manifestHolder.get();
private boolean isRpcUrlValid(final URI url, final URI rpcUrl, final String username, final String password) throws ResponseException { // We send the rpcUrl parameter in a query parameter. For pre-3.4 versions of the REST resource, we also // send it in the path. // TODO If we know the server is using applinks 3.4, the rpcUrl path parameter can be empty String pathUrl = getUrlFor(URIUtil.uncheckedConcatenate(url, RestUtil.REST_APPLINKS_URL), AuthenticationResource.class).rpcUrlIsReachable(internalHostApplication.getId().get(), rpcUrl, null).toString(); String urlWithQuery = pathUrl + "?url=" + URIUtil.utf8Encode(rpcUrl); final Request request = requestFactory.createRequest(Request.MethodType.GET, urlWithQuery); request.addBasicAuthentication(url.getHost(), username, password); final Holder<Boolean> rpcUrlValid = new Holder<Boolean>(false); request.execute(new ResponseHandler<Response>() { public void handle(final Response restResponse) throws ResponseException { if (restResponse.isSuccessful()) { rpcUrlValid.set(true); } } }); return rpcUrlValid.get(); } }
final Request.MethodType action) throws AuthenticationConfigurationException { final Holder<Boolean> success = new Holder<Boolean>(false); final Holder<String> errorMessage = new Holder<String>(); final URI autoConfigUrl = URIUtil.uncheckedConcatenate(applicationLink.getRpcUrl(), AUTOCONFIGURE_SERVLET_LOCATION + hostApplication.getId().toString()); errorMessage.set("Communication error: " + re.getMessage()); if (!success.get()) { throw new AuthenticationConfigurationException( "Error configuring peer: " + errorMessage.get());
tokenRequest.addRequestParameters(parameterToStringArray(signedRequest.getParameters())); final Holder<Map<String, String>> oauthParametersHolder = new Holder<Map<String, String>>(); final Holder<Response> responseHolder = new Holder<Response>(); tokenRequest.setFollowRedirects(false); tokenRequest.execute(responseHandler); final Map<String, String> oAuthParameterMap = oauthParametersHolder.get();
private Manifest download1(final URI url) throws ManifestNotFoundException final Holder<Manifest> manifestHolder = new Holder<Manifest>(); final Holder<Throwable> exception = new Holder<Throwable>(); exception.set((Throwable) ObjectUtils.defaultIfNull(re.getCause(), re)); if (manifestHolder.get() == null) if (exception.get() == null) throw new ManifestNotFoundException(url.toString(), exception.get()); return manifestHolder.get();
public void handle(Response response) throws ResponseException { // this means the response indicates a redirection. if (response.getStatusCode() >= 300 && response.getStatusCode() < 400) { final String location = response.getHeader("Location"); if (location == null) { throw new ResponseException("manifest not found"); } LOG.info("Manifest request got redirected to '" + location + "'."); exception.set(new ManifestGotRedirectedException("manifest got redirected", location)); } else { checkStatusOk(response); try { manifestHolder.set(asManifest(response.getEntity(ManifestEntity.class))); } catch (Exception ex) { exception.set(new ResponseContentException(response, ex)); } } } });
public void handle(Response response) throws ResponseException { // this means the response indicates a redirection. if (response.getStatusCode() >= 300 && response.getStatusCode() < 400) { final String location = response.getHeader("Location"); if (location == null) { throw new ResponseException("manifest not found"); } LOG.info("Manifest request got redirected to '" + location + "'."); exception.set(new ManifestGotRedirectedException("manifest got redirected", location)); } else if (response.isSuccessful()) { try { manifestHolder.set(asManifest(response.getEntity(ManifestEntity.class))); } catch (Exception ex) { exception.set(ex); } } } });
public void handle(final Response response) throws ResponseException { responseHolder.set(response); List<OAuth.Parameter> parameters = OAuth.decodeForm(response.getResponseBodyAsString()); Map<String, String> map = OAuth.newMap(parameters); oauthParametersHolder.set(map); } catch (Exception e) { throw new ResponseException("Failed to get token from service provider. Couldn't parse response body " + response.getResponseBodyAsString() + "'", e);