类com.sun.jersey.api.client.ClientRequest源码实例Demo

下面列出了怎么用com.sun.jersey.api.client.ClientRequest的API类实例代码及写法,或者点击链接到github查看源代码。

源代码1 项目: Bats   文件: WebServicesVersionConversion.java
@Override
public ClientResponse handle(ClientRequest cr) throws ClientHandlerException
{
  URIBuilder uriBuilder = new URIBuilder(cr.getURI());
  String path = uriBuilder.getPath();
  uriBuilder.setPath(converter.convertCommandPath(path));
  try {
    cr.setURI(uriBuilder.build());
    ClientResponse response = getNext().handle(cr);
    String newEntity = converter.convertResponse(path, response.getEntity(String.class));
    response.setEntityInputStream(new ByteArrayInputStream(newEntity.getBytes()));
    return response;
  } catch (Exception ex) {
    throw new ClientHandlerException(ex);
  }
}
 
源代码2 项目: phoebus   文件: RawLoggingFilter.java
@Override
public ClientResponse handle(ClientRequest request)
		throws ClientHandlerException {
	if (this.logger.isLoggable(Level.FINE)) {
		long id = ++this._id;
		logRequest(id, request);
		
		ClientResponse response = getNext().handle(request);

		logResponse(id, response);

		return response;
	} else{
		return getNext().handle(request);			
	}

}
 
源代码3 项目: phoebus   文件: RawLoggingFilter.java
@Override
public ClientResponse handle(ClientRequest request)
		throws ClientHandlerException {
	if (this.logger.isLoggable(Level.FINE)) {
		long id = ++this._id;
		logRequest(id, request);
		
		ClientResponse response = getNext().handle(request);

		logResponse(id, response);

		return response;
	} else{
		return getNext().handle(request);			
	}

}
 
源代码4 项目: phoebus   文件: RawLoggingFilter.java
@Override
public ClientResponse handle(ClientRequest request)
		throws ClientHandlerException {
	if (this.logger.isLoggable(Level.FINE)) {
		long id = ++this._id;
		logRequest(id, request);
		
		ClientResponse response = getNext().handle(request);

		logResponse(id, response);

		return response;
	} else{
		return getNext().handle(request);			
	}

}
 
源代码5 项目: qaf   文件: RequestLogger.java
@Override
public ClientResponse handle(ClientRequest request) throws ClientHandlerException {
	long id = ++_id;

	StringBuilder requestString = new StringBuilder();
	logRequest(id, request, requestString);

	LoggingBean loggingBean = new LoggingBean();
	loggingBean.setCommandName(request.getMethod() + ":" + request.getURI());

	loggingBean.setArgs(new String[] { request.getURI().getPath(), request.getURI().getQuery() });

	ClientResponse response = getNext().handle(request);
	loggingBean.setResult(response.toString());
	StringBuilder responseString = logResponse(id, response);

	LoggingBean detailsLoggingBean = new LoggingBean();
	detailsLoggingBean.setArgs(new String[] { noPrifix(requestString).toString() });
	detailsLoggingBean.setResult(noPrifix(responseString).toString());

	loggingBean.getSubLogs().add(detailsLoggingBean);

	TestBaseProvider.instance().get().getLog().add(loggingBean);

	return response;
}
 
源代码6 项目: qaf   文件: RequestLogger.java
private void printRequestHeaders(StringBuilder b, long id, MultivaluedMap<String, Object> headers) {
	for (Map.Entry<String, List<Object>> e : headers.entrySet()) {
		List<Object> val = e.getValue();
		String header = e.getKey();

		if (val.size() == 1) {
			prefixId(b, id).append(REQUEST_PREFIX).append(header).append(": ")
					.append(ClientRequest.getHeaderValue(val.get(0))).append("\n");
		} else {
			StringBuilder sb = new StringBuilder();
			boolean add = false;
			for (Object o : val) {
				if (add) {
					sb.append(',');
				}
				add = true;
				sb.append(ClientRequest.getHeaderValue(o));
			}
			prefixId(b, id).append(REQUEST_PREFIX).append(header).append(": ").append(sb.toString()).append("\n");
		}
	}
}
 
@Override
public ClientResponse handle(ClientRequest cr) throws ClientHandlerException
{
  URIBuilder uriBuilder = new URIBuilder(cr.getURI());
  String path = uriBuilder.getPath();
  uriBuilder.setPath(converter.convertCommandPath(path));
  try {
    cr.setURI(uriBuilder.build());
    ClientResponse response = getNext().handle(cr);
    String newEntity = converter.convertResponse(path, response.getEntity(String.class));
    response.setEntityInputStream(new ByteArrayInputStream(newEntity.getBytes()));
    return response;
  } catch (Exception ex) {
    throw new ClientHandlerException(ex);
  }
}
 
源代码8 项目: jersey-hmac-auth   文件: RequestEncoder.java
/**
 * Get the serialized representation of the request entity. This is used when generating the client
 * signature, because this is the representation that the server will receive and use when it generates
 * the server-side signature to compare to the client-side signature.
 *
 * @see com.sun.jersey.client.urlconnection.URLConnectionClientHandler
 */
private byte[] getSerializedEntity(ClientRequest request) {
    final ByteArrayOutputStream outputStream = new ByteArrayOutputStream();

    try {
        // By using the RequestWriter parent class, we match the behavior of entity writing from
        // for example, com.sun.jersey.client.urlconnection.URLConnectionClientHandler.
        writeRequestEntity(request, new RequestEntityWriterListener() {
            public void onRequestEntitySize(long size) throws IOException {
            }

            public OutputStream onGetOutputStream() throws IOException {
                return outputStream;
            }
        });

    } catch (IOException e) {
        throw new ClientHandlerException("Unable to serialize request entity", e);
    }

    return outputStream.toByteArray();
}
 
源代码9 项目: Bats   文件: HeaderClientFilter.java
@Override
public ClientResponse handle(ClientRequest clientRequest) throws ClientHandlerException
{
  final MultivaluedMap<String, Object> headers = clientRequest.getHeaders();
  List<Object> hcookies = headers.get(COOKIE_HEADER);
  if (hcookies == null) {
    hcookies = new ArrayList<>();
  }
  hcookies.addAll(cookies);
  headers.put(COOKIE_HEADER, hcookies);
  return getNext().handle(clientRequest);
}
 
源代码10 项目: mPaaS   文件: DiscoveryHeaderClientFilter.java
@Override
public ClientResponse handle(ClientRequest cr) throws ClientHandlerException {
    Map<String, String> headers = DiscoveryHeaderHelper.getInstance().getRequestHeaderInfo();
    for (Map.Entry<String, String> entry : headers.entrySet()) {
        cr.getHeaders().put(entry.getKey(), Collections.singletonList(entry.getValue()));
    }
    return getNext().handle(cr);
}
 
源代码11 项目: phoebus   文件: RawLoggingFilter.java
private void logRequest(long id, ClientRequest request) {
	StringBuilder b = new StringBuilder();

	printRequestLine(b, id, request);
	printRequestHeaders(b, id, request.getHeaders());

	if (request.getEntity() != null) {
		request.setAdapter(new Adapter(request.getAdapter(), b));
	} else {
		log(b);
	}
}
 
源代码12 项目: phoebus   文件: RawLoggingFilter.java
private void printRequestLine(StringBuilder b, long id,
		ClientRequest request) {
	prefixId(b, id).append(NOTIFICATION_PREFIX)
			.append("Client out-bound request").append("\n");
	prefixId(b, id).append(REQUEST_PREFIX).append(request.getMethod())
			.append(" ").append(request.getURI().toASCIIString())
			.append("\n");
}
 
源代码13 项目: phoebus   文件: RawLoggingFilter.java
private void printRequestHeaders(StringBuilder b, long id,
		MultivaluedMap<String, Object> headers) {
	for (Map.Entry<String, List<Object>> e : headers.entrySet()) {
		String header = e.getKey();
		for (Object value : e.getValue()) {
			prefixId(b, id).append(REQUEST_PREFIX).append(header)
					.append(": ")
					.append(ClientRequest.getHeaderValue(value))
					.append("\n");
		}
	}
	prefixId(b, id).append(REQUEST_PREFIX).append("\n");
}
 
源代码14 项目: phoebus   文件: RawLoggingFilter.java
private void logRequest(long id, ClientRequest request) {
	StringBuilder b = new StringBuilder();

	printRequestLine(b, id, request);
	printRequestHeaders(b, id, request.getHeaders());

	if (request.getEntity() != null) {
		request.setAdapter(new Adapter(request.getAdapter(), b));
	} else {
		log(b);
	}
}
 
源代码15 项目: phoebus   文件: RawLoggingFilter.java
private void printRequestLine(StringBuilder b, long id,
		ClientRequest request) {
	prefixId(b, id).append(NOTIFICATION_PREFIX)
			.append("Client out-bound request").append("\n");
	prefixId(b, id).append(REQUEST_PREFIX).append(request.getMethod())
			.append(" ").append(request.getURI().toASCIIString())
			.append("\n");
}
 
源代码16 项目: phoebus   文件: RawLoggingFilter.java
private void printRequestHeaders(StringBuilder b, long id,
		MultivaluedMap<String, Object> headers) {
	for (Map.Entry<String, List<Object>> e : headers.entrySet()) {
		String header = e.getKey();
		for (Object value : e.getValue()) {
			prefixId(b, id).append(REQUEST_PREFIX).append(header)
					.append(": ")
					.append(ClientRequest.getHeaderValue(value))
					.append("\n");
		}
	}
	prefixId(b, id).append(REQUEST_PREFIX).append("\n");
}
 
源代码17 项目: phoebus   文件: RawLoggingFilter.java
private void logRequest(long id, ClientRequest request) {
	StringBuilder b = new StringBuilder();

	printRequestLine(b, id, request);
	printRequestHeaders(b, id, request.getHeaders());

	if (request.getEntity() != null) {
		request.setAdapter(new Adapter(request.getAdapter(), b));
	} else {
		log(b);
	}
}
 
源代码18 项目: phoebus   文件: RawLoggingFilter.java
private void printRequestLine(StringBuilder b, long id,
		ClientRequest request) {
	prefixId(b, id).append(NOTIFICATION_PREFIX)
			.append("Client out-bound request").append("\n");
	prefixId(b, id).append(REQUEST_PREFIX).append(request.getMethod())
			.append(" ").append(request.getURI().toASCIIString())
			.append("\n");
}
 
源代码19 项目: phoebus   文件: RawLoggingFilter.java
private void printRequestHeaders(StringBuilder b, long id,
		MultivaluedMap<String, Object> headers) {
	for (Map.Entry<String, List<Object>> e : headers.entrySet()) {
		String header = e.getKey();
		for (Object value : e.getValue()) {
			prefixId(b, id).append(REQUEST_PREFIX).append(header)
					.append(": ")
					.append(ClientRequest.getHeaderValue(value))
					.append("\n");
		}
	}
	prefixId(b, id).append(REQUEST_PREFIX).append("\n");
}
 
源代码20 项目: qaf   文件: RequestLogger.java
private void logRequest(long id, ClientRequest request, StringBuilder b) {

		printRequestLine(b, id, request);
		printRequestHeaders(b, id, request.getHeaders());
		if (request.getEntity() != null) {
			prefixId(b, id).append(REQUEST_PREFIX).append(request.getEntity());
			request.setAdapter(new Adapter(request.getAdapter(), b));
		}
		log(b.toString());
	}
 
源代码21 项目: qaf   文件: RequestTracker.java
@Override
public ClientResponse handle(ClientRequest request) throws ClientHandlerException {

	ClientResponse response = getNext().handle(request);
	clientRequest = request;
	clientResponse = response;
	return response;
}
 
源代码22 项目: attic-apex-core   文件: HeaderClientFilter.java
@Override
public ClientResponse handle(ClientRequest clientRequest) throws ClientHandlerException
{
  final MultivaluedMap<String, Object> headers = clientRequest.getHeaders();
  List<Object> hcookies = headers.get(COOKIE_HEADER);
  if (hcookies == null) {
    hcookies = new ArrayList<>();
  }
  hcookies.addAll(cookies);
  headers.put(COOKIE_HEADER, hcookies);
  return getNext().handle(clientRequest);
}
 
@Override
public ClientResponse handle(ClientRequest cr) throws ClientHandlerException {
	if (decorator.getHeaders() != null) {
		for (Entry<String, List<String>> entry : decorator.getHeaders().entrySet()) {
			for (String value : entry.getValue()) {
				cr.getHeaders().add(entry.getKey(), value);
			}
		}
	}
	return getNext().handle(cr);
}
 
@Override
public ClientResponse handle(ClientRequest cr) throws ClientHandlerException {
	Instant now = Clock.systemUTC().instant();
	if (accessToken == null || now.isAfter(accessToken.getExpiresAt())) {
		DefaultClientCredentialsTokenResponseClient tokenResponseClient = new DefaultClientCredentialsTokenResponseClient();
		OAuth2ClientCredentialsGrantRequest clientCredentialsGrantRequest = new OAuth2ClientCredentialsGrantRequest(
				clientRegistration);
		accessToken = tokenResponseClient.getTokenResponse(clientCredentialsGrantRequest).getAccessToken();
	}

	cr.getHeaders().add(HttpHeaders.AUTHORIZATION, "Bearer " + accessToken.getTokenValue());

	return getNext().handle(cr);
}
 
源代码25 项目: jersey-hmac-auth   文件: HmacClientFilter.java
@Override
public ClientResponse handle(ClientRequest request) throws ClientHandlerException {
    // Modify the request to include security credentials if appropriate
    if (shouldEncode(request)) {
        requestEncoder.encode(request);
    }

    // Following the ClientFilter protocol, pass the request to the next filter in the chain
    return getNext().handle(request);
}
 
源代码26 项目: jersey-hmac-auth   文件: RequestEncoder.java
public void encode(ClientRequest request) {
    String timestamp = TimeUtils.getCurrentTimestamp();
    addApiKey(request);
    addTimestamp(request, timestamp);
    addSignature(request, timestamp);
    addVersion(request);
}
 
源代码27 项目: jersey-hmac-auth   文件: RequestEncoder.java
private void addApiKey(ClientRequest request) {
    URI uriWithApiKey = UriBuilder.fromUri(request.getURI())
            .queryParam(this.requestConfiguration.getApiKeyQueryParamName(), apiKey)
            .build();

    request.setURI(uriWithApiKey);
}
 
源代码28 项目: jersey-hmac-auth   文件: RequestEncoder.java
private String buildSignature(ClientRequest request, String timestamp) {
    String method = getMethod(request);
    String path = getPath(request);
    byte[] content = this.requestConfiguration.isDataInSignature() ? getContent(request) : null;

    return signatureGenerator.generate(secretKey, method, timestamp, path, content);
}
 
源代码29 项目: pentaho-reporting   文件: CookiesHandlerFilter.java
@Override
public ClientResponse handle( ClientRequest request ) throws ClientHandlerException {
  List<Object> authorizationHeader = request.getHeaders().get( "Authorization" );
  String authToken = (String) authorizationHeader.get( 0 );
  // If we have cookies, inject them. When session is expired, basic auth
  // header is not used instead of the expired cookies, so we just use
  // them as a token.
  List<Object> cookiesList = getCachedCookiesByAuthToken( authToken );
  if ( cookiesList != null ) {
    request.getHeaders().put( "Cookie", cookiesList );
    request.getHeaders().remove( "Authorization" );
  }
  ClientResponse response = getNext().handle( request );
  // If session has expired, remove cookies, put back basic auth header,
  // try one more time and save new cookies.
  if ( response.getStatus() == HttpStatus.SC_UNAUTHORIZED ) {
    logger.warn( "Request to" + request.getURI() + "returned Unauthorized." );
    if ( logger.isDebugEnabled() ) {
      logger.debug( "http status=" + response.getStatus() + " response=" + response.getEntity( String.class ) );
    }
    request.getHeaders().remove( "Cookie" );
    request.getHeaders().put( "Authorization", authorizationHeader );
    logger.warn( "Trying one more time" );
    response = getNext().handle( request );
    if ( response.getStatus() == HttpStatus.SC_UNAUTHORIZED ) {
      logger.error( "Request to" + request.getURI() + "returned Unauthorized 2nd time." );
      logger.error( "http status=" + response.getStatus() + " response=" + response.getEntity( String.class ) );
    }
  }
  // always use the new cookies.
  if ( response.getCookies() != null && response.getCookies().isEmpty() == false ) {
    cookiesList = new ArrayList<Object>();
    cookiesList.addAll( response.getCookies() );
    setCookiesByAuthToken( authToken, cookiesList );
  }
  return response;
}
 
源代码30 项目: docker-java   文件: JsonClientFilter.java
public ClientResponse handle(ClientRequest cr) {
    // Call the next filter
    ClientResponse resp = getNext().handle(cr);
    String respContentType = resp.getHeaders().getFirst("Content-Type");
    if (respContentType.startsWith("text/plain")) {
        String newContentType = "application/json" + respContentType.substring(10);
        resp.getHeaders().putSingle("Content-Type", newContentType);
    }
    return resp;
}