aboutsummaryrefslogtreecommitdiff
path: root/app/src/main/java
diff options
context:
space:
mode:
Diffstat (limited to 'app/src/main/java')
-rw-r--r--app/src/main/java/ml/docilealligator/infinityforreddit/AppModule.java1
-rw-r--r--app/src/main/java/ml/docilealligator/infinityforreddit/Okhttp3DebugInterceptor.java40
2 files changed, 41 insertions, 0 deletions
diff --git a/app/src/main/java/ml/docilealligator/infinityforreddit/AppModule.java b/app/src/main/java/ml/docilealligator/infinityforreddit/AppModule.java
index a3792492..8bdf0d5d 100644
--- a/app/src/main/java/ml/docilealligator/infinityforreddit/AppModule.java
+++ b/app/src/main/java/ml/docilealligator/infinityforreddit/AppModule.java
@@ -79,6 +79,7 @@ class AppModule {
OkHttpClient provideOkHttpClient(@Named("no_oauth") Retrofit retrofit, RedditDataRoomDatabase accountRoomDatabase) {
OkHttpClient.Builder okHttpClientBuilder = new OkHttpClient.Builder();
okHttpClientBuilder.authenticator(new AccessTokenAuthenticator(retrofit, accountRoomDatabase));
+ //.addInterceptor(new Okhttp3DebugInterceptor(mApplication));
return okHttpClientBuilder.build();
}
diff --git a/app/src/main/java/ml/docilealligator/infinityforreddit/Okhttp3DebugInterceptor.java b/app/src/main/java/ml/docilealligator/infinityforreddit/Okhttp3DebugInterceptor.java
new file mode 100644
index 00000000..3443fdc6
--- /dev/null
+++ b/app/src/main/java/ml/docilealligator/infinityforreddit/Okhttp3DebugInterceptor.java
@@ -0,0 +1,40 @@
+package ml.docilealligator.infinityforreddit;
+
+import android.app.Application;
+
+import androidx.annotation.NonNull;
+import androidx.core.app.NotificationCompat;
+import androidx.core.app.NotificationManagerCompat;
+
+import java.io.IOException;
+
+import okhttp3.Interceptor;
+import okhttp3.Response;
+
+public class Okhttp3DebugInterceptor implements Interceptor {
+ private Application context;
+
+ public Okhttp3DebugInterceptor(Application context) {
+ this.context = context;
+ }
+
+ @NonNull
+ @Override
+ public Response intercept(Chain chain) throws IOException {
+ Response response = chain.proceed(chain.request());
+ if (!response.isSuccessful()) {
+ String message = "No body";
+ if (response.body() != null) {
+ message = response.body().string();
+ }
+ NotificationManagerCompat notificationManager = NotificationUtils.getNotificationManager(context);
+ NotificationCompat.Builder builder = NotificationUtils.buildNotification(notificationManager,
+ context, "debug", message, Integer.toString(response.code()),
+ NotificationUtils.CHANNEL_ID_NEW_MESSAGES,
+ NotificationUtils.CHANNEL_NEW_MESSAGES,
+ NotificationUtils.getAccountGroupName("Debug"));
+ notificationManager.notify(9765, builder.build());
+ }
+ return response;
+ }
+}