package com.koushikdutta.async.http; import android.os.Bundle; import com.koushikdutta.async.AsyncSocket; import com.koushikdutta.async.DataEmitter; import com.koushikdutta.async.callback.ConnectCallback; import com.koushikdutta.async.future.Cancellable; import com.koushikdutta.async.http.libcore.ResponseHeaders; public interface AsyncHttpClientMiddleware { public static class GetSocketData { public Bundle state = new Bundle(); public AsyncHttpRequest request; public ConnectCallback connectCallback; public Cancellable socketCancellable; } public static class OnSocketData extends GetSocketData { public AsyncSocket socket; } public static class OnHeadersReceivedData extends OnSocketData { public ResponseHeaders headers; } public static class OnBodyData extends OnHeadersReceivedData { public DataEmitter bodyEmitter; } public static class OnRequestCompleteData extends OnBodyData { public Exception exception; } public Cancellable getSocket(GetSocketData data); public void onSocket(OnSocketData data); public void onHeadersReceived(OnHeadersReceivedData data); public void onBodyDecoder(OnBodyData data); public void onRequestComplete(OnRequestCompleteData data); }