Example usage for com.google.common.io CharSource openStream

List of usage examples for com.google.common.io CharSource openStream

Introduction

In this page you can find the example usage for com.google.common.io CharSource openStream.

Prototype

public abstract Reader openStream() throws IOException;

Source Link

Document

Opens a new Reader for reading from this source.

Usage

From source file:org.glowroot.local.ui.TraceDetailHttpService.java

@Override
public @Nullable FullHttpResponse handleRequest(ChannelHandlerContext ctx, HttpRequest request)
        throws Exception {
    QueryStringDecoder decoder = new QueryStringDecoder(request.getUri());
    String path = decoder.path();
    String traceComponent = path.substring(path.lastIndexOf('/') + 1);
    List<String> traceIds = decoder.parameters().get("trace-id");
    checkNotNull(traceIds, "Missing trace id in query string: %s", request.getUri());
    String traceId = traceIds.get(0);
    logger.debug("handleRequest(): traceComponent={}, traceId={}", traceComponent, traceId);

    CharSource charSource = getDetailCharSource(traceComponent, traceId);
    if (charSource == null) {
        return new DefaultFullHttpResponse(HTTP_1_1, NOT_FOUND);
    }//  ww w  .  j  av  a  2s .c  om
    HttpResponse response = new DefaultHttpResponse(HTTP_1_1, OK);
    response.headers().set(Names.TRANSFER_ENCODING, Values.CHUNKED);
    response.headers().set(Names.CONTENT_TYPE, "application/json; charset=UTF-8");
    boolean keepAlive = HttpHeaders.isKeepAlive(request);
    if (keepAlive && !request.getProtocolVersion().isKeepAliveDefault()) {
        response.headers().set(Names.CONNECTION, Values.KEEP_ALIVE);
    }
    HttpServices.preventCaching(response);
    ctx.write(response);
    ChannelFuture future = ctx.write(ChunkedInputs.fromReader(charSource.openStream()));
    HttpServices.addErrorListener(future);
    if (!keepAlive) {
        HttpServices.addCloseListener(future);
    }
    // return null to indicate streaming
    return null;
}

From source file:org.renjin.parser.RParser.java

public static ExpressionVector parseSource(CharSource source) throws IOException {
    Reader reader = source.openStream();
    try {//from ww w  .jav  a  2  s  . c  o  m
        return parseAllSource(reader);
    } finally {
        Closeables.closeQuietly(reader);
    }
}

From source file:com.ning.billing.recurly.RecurlyClient.java

private String buildUserAgent() {
    final String defaultVersion = "0.0.0";
    final String defaultJavaVersion = "0.0.0";

    try {/*from  ww  w .  j  a va 2s  .c om*/
        final Properties gitRepositoryState = new Properties();
        final URL resourceURL = Resources.getResource(GIT_PROPERTIES_FILE);
        final CharSource charSource = Resources.asCharSource(resourceURL, Charset.forName("UTF-8"));

        Reader reader = null;
        try {
            reader = charSource.openStream();
            gitRepositoryState.load(reader);
        } finally {
            if (reader != null) {
                reader.close();
            }
        }

        final String version = MoreObjects.firstNonNull(getVersionFromGitRepositoryState(gitRepositoryState),
                defaultVersion);
        final String javaVersion = MoreObjects.firstNonNull(StandardSystemProperty.JAVA_VERSION.value(),
                defaultJavaVersion);
        return String.format("KillBill/%s; %s", version, javaVersion);
    } catch (final Exception e) {
        return String.format("KillBill/%s; %s", defaultVersion, defaultJavaVersion);
    }
}