All Downloads are FREE. Search and download functionalities are using the official Maven repository.

com.undefinedlabs.scope.deps.okhttp3.internal.http.HttpCodec Maven / Gradle / Ivy

Go to download

Scope is a APM for tests to give engineering teams unprecedented visibility into their CI process to quickly identify, troubleshoot and fix failed builds. This artifact contains dependencies for Scope.

There is a newer version: 0.14.0-beta.2
Show newest version
package com.undefinedlabs.scope.deps.okhttp3.internal.http;

import com.undefinedlabs.scope.deps.okhttp3.Request;
import com.undefinedlabs.scope.deps.okhttp3.Response;
import com.undefinedlabs.scope.deps.okhttp3.ResponseBody;
import com.undefinedlabs.scope.deps.okio.Sink;

import java.io.IOException;

public interface HttpCodec {
    /**
     * The timeout to use while discarding a stream of input data. Since this is used for connection
     * reuse, this timeout should be significantly less than the time it takes to establish a new
     * connection.
     */
    int DISCARD_STREAM_TIMEOUT_MILLIS = 100;

    /** Returns an output stream where the request body can be streamed. */
    Sink createRequestBody(Request request, long contentLength);

    /** This should update the HTTP engine's sentRequestMillis field. */
    void writeRequestHeaders(Request request) throws IOException;

    /** Flush the request to the underlying socket. */
    void flushRequest() throws IOException;

    /** Flush the request to the underlying socket and signal no more bytes will be transmitted. */
    void finishRequest() throws IOException;

    /**
     * Parses bytes of a response header from an HTTP transport.
     *
     * @param expectContinue true to return null if this is an intermediate response with a "100"
     *     response code. Otherwise this method never returns null.
     */
    Response.Builder readResponseHeaders(boolean expectContinue) throws IOException;

    /** Returns a stream that reads the response body. */
    ResponseBody openResponseBody(Response response) throws IOException;

    /**
     * Cancel this stream. Resources held by this stream will be cleaned up, though not synchronously.
     * That may happen later by the connection pool thread.
     */
    void cancel();
}




© 2015 - 2024 Weber Informatics LLC | Privacy Policy