2019-06-23 09:57:29 +02:00
|
|
|
package net.accelf.yuito;
|
|
|
|
|
|
|
|
import android.content.Context;
|
|
|
|
import android.os.Handler;
|
|
|
|
import android.os.Looper;
|
|
|
|
import android.widget.Toast;
|
|
|
|
|
|
|
|
import androidx.annotation.NonNull;
|
|
|
|
|
|
|
|
import java.io.IOException;
|
|
|
|
|
|
|
|
import okhttp3.Interceptor;
|
|
|
|
import okhttp3.Request;
|
|
|
|
import okhttp3.Response;
|
|
|
|
|
|
|
|
public final class HttpToastInterceptor implements Interceptor {
|
|
|
|
|
|
|
|
private Context context;
|
|
|
|
|
|
|
|
public HttpToastInterceptor(Context context) {
|
|
|
|
this.context = context;
|
|
|
|
}
|
|
|
|
|
|
|
|
@Override
|
|
|
|
@NonNull
|
|
|
|
public Response intercept(@NonNull Chain chain) throws IOException {
|
|
|
|
Request request = chain.request();
|
|
|
|
Response response;
|
|
|
|
try {
|
|
|
|
response = chain.proceed(request);
|
|
|
|
} catch (Exception e) {
|
|
|
|
toast(request.method() + " " + request.url() + "\n" + e);
|
|
|
|
throw e;
|
|
|
|
}
|
|
|
|
|
|
|
|
int code = response.code();
|
2021-07-03 16:59:57 +02:00
|
|
|
if (code == 101 || code == 200) {
|
2019-06-23 09:57:29 +02:00
|
|
|
return response;
|
|
|
|
}
|
|
|
|
|
|
|
|
toast(request.method() + " " + request.url() + "\n" + code + " " + response.message());
|
|
|
|
|
|
|
|
return response;
|
|
|
|
}
|
|
|
|
|
|
|
|
private void toast(String text) {
|
|
|
|
Handler handler = new Handler(Looper.getMainLooper());
|
|
|
|
handler.post(() -> Toast.makeText(context, text, Toast.LENGTH_SHORT).show());
|
|
|
|
|
|
|
|
}
|
|
|
|
}
|