io.airlift.http.client.Response.getInputStream()方法的使用及代码示例

x33g5p2x  于2022-01-29 转载在 其他  
字(8.4k)|赞(0)|评价(0)|浏览(71)

本文整理了Java中io.airlift.http.client.Response.getInputStream方法的一些代码示例,展示了Response.getInputStream的具体用法。这些代码示例主要来源于Github/Stackoverflow/Maven等平台,是从一些精选项目中提取出来的代码,具有较强的参考意义,能在一定程度帮忙到你。Response.getInputStream方法的具体详情如下:
包路径:io.airlift.http.client.Response
类名称:Response
方法名:getInputStream

Response.getInputStream介绍

暂无

代码示例

代码示例来源:origin: prestodb/presto

private static String readBody(Response response)
{
  try {
    return new String(toByteArray(response.getInputStream()), US_ASCII);
  }
  catch (IOException e) {
    return "";
  }
}

代码示例来源:origin: prestodb/presto

@Override
  public InputStream handle(Request request, io.airlift.http.client.Response response)
  {
    try {
      if (APPLICATION_JSON.equals(response.getHeader(CONTENT_TYPE))) {
        return response.getInputStream();
      }
      throw new RuntimeException("Response received was not of type " + APPLICATION_JSON);
    }
    catch (IOException e) {
      throw new RuntimeException("Unable to read response from worker", e);
    }
  }
}

代码示例来源:origin: prestodb/presto

@Override
  public Optional<QueryStats> handle(Request request, Response response)
  {
    if (response.getStatusCode() == HttpStatus.GONE.code()) {
      return Optional.empty();
    }
    else if (response.getStatusCode() != HttpStatus.OK.code()) {
      throw new RuntimeException("unexpected error code " + response.getStatusCode() + "; reason=" + response.getStatusMessage());
    }
    try {
      JsonNode rootNode = objectMapper.readTree(response.getInputStream());
      JsonNode queryStatsNode = rootNode.get("queryStats");
      if (queryStatsNode == null) {
        return Optional.empty();
      }
      QueryStats queryStats = objectMapper.treeToValue(queryStatsNode, QueryStats.class);
      return Optional.of(queryStats);
    }
    catch (IOException e) {
      throw new UncheckedIOException(e);
    }
  }
}

代码示例来源:origin: prestodb/presto

try (BufferedReader reader = new BufferedReader(new InputStreamReader(response.getInputStream(), UTF_8))) {
boolean complete = getComplete(response);
try (SliceInput input = new InputStreamSliceInput(response.getInputStream())) {
  List<SerializedPage> pages = ImmutableList.copyOf(readSerializedPages(input));
  return createPagesResponse(taskInstanceId, token, nextToken, pages, complete);

代码示例来源:origin: prestodb/presto

@Override
public ProxyResponse handle(Request request, Response response)
{
  if (response.getStatusCode() == NO_CONTENT.code()) {
    return new ProxyResponse(response.getHeaders(), new byte[0]);
  }
  if (response.getStatusCode() != OK.code()) {
    throw new ProxyException(format("Bad status code from remote Presto server: %s: %s", response.getStatusCode(), readBody(response)));
  }
  String contentType = response.getHeader(CONTENT_TYPE);
  if (contentType == null) {
    throw new ProxyException("No Content-Type set in response from remote Presto server");
  }
  if (!MediaType.parse(contentType).is(MEDIA_TYPE_JSON)) {
    throw new ProxyException("Bad Content-Type from remote Presto server:" + contentType);
  }
  try {
    return new ProxyResponse(response.getHeaders(), toByteArray(response.getInputStream()));
  }
  catch (IOException e) {
    throw new ProxyException("Failed reading response from remote Presto server", e);
  }
}

代码示例来源:origin: airlift/airlift

private static String getBodyForError(Response response)
{
  try {
    return CharStreams.toString(new InputStreamReader(response.getInputStream(), UTF_8));
  }
  catch (IOException e) {
    return "(error getting body)";
  }
}

代码示例来源:origin: io.airlift/discovery-experimental

private static String getBodyForError(Response response)
{
  try {
    return CharStreams.toString(new InputStreamReader(response.getInputStream(), Charsets.UTF_8));
  }
  catch (IOException e) {
    return "(error getting body)";
  }
}

代码示例来源:origin: prestosql/presto

private static String readBody(Response response)
{
  try {
    return new String(toByteArray(response.getInputStream()), US_ASCII);
  }
  catch (IOException e) {
    return "";
  }
}

代码示例来源:origin: airlift/airlift

private static byte[] readResponseBytes(Response response)
{
  try {
    return ByteStreams.toByteArray(response.getInputStream());
  }
  catch (IOException e) {
    throw new RuntimeException("Error reading response from server", e);
  }
}

代码示例来源:origin: com.teradata.airlift/discovery

private static String getBodyForError(Response response)
{
  try {
    return CharStreams.toString(new InputStreamReader(response.getInputStream(), Charsets.UTF_8));
  }
  catch (IOException e) {
    return "(error getting body)";
  }
}

代码示例来源:origin: io.prestosql/presto-main

@Override
  public InputStream handle(Request request, io.airlift.http.client.Response response)
  {
    try {
      if (APPLICATION_JSON.equals(response.getHeader(CONTENT_TYPE))) {
        return response.getInputStream();
      }
      throw new RuntimeException("Response received was not of type " + APPLICATION_JSON);
    }
    catch (IOException e) {
      throw new RuntimeException("Unable to read response from worker", e);
    }
  }
}

代码示例来源:origin: prestosql/presto

@Override
  public InputStream handle(Request request, io.airlift.http.client.Response response)
  {
    try {
      if (APPLICATION_JSON.equals(response.getHeader(CONTENT_TYPE))) {
        return response.getInputStream();
      }
      throw new RuntimeException("Response received was not of type " + APPLICATION_JSON);
    }
    catch (IOException e) {
      throw new RuntimeException("Unable to read response from worker", e);
    }
  }
}

代码示例来源:origin: io.airlift/http-client-experimental

@Override
  public String handle(Request request, Response response)
      throws Exception
  {
    return new String(ByteStreams.toByteArray(response.getInputStream()), Charsets.UTF_8);
  }
}

代码示例来源:origin: com.facebook.presto/presto-raptor

@Override
public StatusResponse handle(Request request, Response response)
    throws IOException
{
  StatusResponse status = createStatusResponse(response);
  if (isOk(status)) {
    writeFile(response.getInputStream());
  }
  return status;
}

代码示例来源:origin: prestosql/presto

@Override
public StatusResponse handle(Request request, Response response)
    throws IOException
{
  StatusResponse status = createStatusResponse(response);
  if (isOk(status)) {
    writeFile(response.getInputStream());
  }
  return status;
}

代码示例来源:origin: io.airlift.discovery/discovery-server

@Override
  public Void handle(Request request, Response response)
      throws Exception
  {
    // TODO: read server date (to use to calibrate entry dates)
    if (response.getStatusCode() == 200) {
      try {
        List<Entry> entries = mapper.readValue(response.getInputStream(), new TypeReference<List<Entry>>() {});
        for (Entry entry : entries) {
          localStore.put(entry);
        }
      }
      catch (EOFException e) {
        // ignore
      }
    }
    return null;
  }
});

代码示例来源:origin: airlift/airlift

@Override
public StringResponse handle(Request request, Response response)
{
  try {
    String contentType = response.getHeader(CONTENT_TYPE);
    if (contentType != null) {
      MediaType mediaType = MediaType.parse(contentType);
      return new StringResponse(
          response.getStatusCode(),
          response.getStatusMessage(),
          response.getHeaders(),
          new String(ByteStreams.toByteArray(response.getInputStream()), mediaType.charset().or(UTF_8)));
    }
    return new StringResponse(
        response.getStatusCode(),
        response.getStatusMessage(),
        response.getHeaders(),
        new String(ByteStreams.toByteArray(response.getInputStream()), UTF_8));
  }
  catch (IOException e) {
    throw new UncheckedIOException(e);
  }
}

代码示例来源:origin: airlift/airlift

@Override
  public T handle(Request request, Response response)
  {
    if (!successfulResponseCodes.contains(response.getStatusCode())) {
      return defaultValue;
    }
    String contentType = response.getHeader(CONTENT_TYPE);
    if (contentType != null && !MediaType.parse(contentType).is(MEDIA_TYPE_JSON)) {
      return defaultValue;
    }
    try {
      return jsonCodec.fromJson(ByteStreams.toByteArray(response.getInputStream()));
    }
    catch (Exception e) {
      return defaultValue;
    }
  }
}

代码示例来源:origin: airlift/airlift

@Override
  public Void handle(Request request, Response response)
  {
    int statusCode = response.getStatusCode();
    if (statusCode >= 200 && statusCode <= 299) {
      return null;
    }
    try {
      InputStream inputStream = response.getInputStream();
      String responseBody = CharStreams.toString(new InputStreamReader(inputStream));
      log.debug("Posting event to %s failed: status_code=%d status_line=%s body=%s", request.getUri(), statusCode, response.getStatusMessage(), responseBody);
    }
    catch (IOException bodyError) {
      log.debug("Posting event to %s failed: status_code=%d status_line=%s error=%s",
          request.getUri(),
          statusCode,
          response.getStatusMessage(),
          bodyError.getMessage());
    }
    return null;
  }
}

代码示例来源:origin: com.teradata.airlift/event

@Override
  public Void handle(Request request, Response response)
  {
    int statusCode = response.getStatusCode();
    if (statusCode >= 200 && statusCode <= 299) {
      return null;
    }
    try {
      InputStream inputStream = response.getInputStream();
      String responseBody = CharStreams.toString(new InputStreamReader(inputStream));
      log.debug("Posting event to %s failed: status_code=%d status_line=%s body=%s", request.getUri(), statusCode, response.getStatusMessage(), responseBody);
    }
    catch (IOException bodyError) {
      log.debug("Posting event to %s failed: status_code=%d status_line=%s error=%s",
          request.getUri(),
          statusCode,
          response.getStatusMessage(),
          bodyError.getMessage());
    }
    return null;
  }
}

相关文章