From b8c96e872f1d024ba7734f7388ebef8fb0e4e0d9 Mon Sep 17 00:00:00 2001 From: Thomas Date: Mon, 4 Sep 2023 11:02:40 +0200 Subject: Add custom user agent --- .../java/app/fedilab/android/BaseMainActivity.java | 7 +------ .../mastodon/client/entities/nitter/Nitter.java | 8 +------- .../android/mastodon/helper/CrossActionHelper.java | 7 +------ .../app/fedilab/android/mastodon/helper/Helper.java | 19 +++++++++++++++++++ .../android/mastodon/helper/NotificationsHelper.java | 7 +------ .../android/mastodon/helper/PushNotifications.java | 7 +------ .../android/mastodon/helper/TimelineHelper.java | 7 +------ .../android/mastodon/jobs/FetchHomeWorker.java | 7 +------ .../mastodon/viewmodel/mastodon/AccountsVM.java | 8 +------- .../android/mastodon/viewmodel/mastodon/AdminVM.java | 8 +------- .../mastodon/viewmodel/mastodon/AnnouncementsVM.java | 8 +------- .../android/mastodon/viewmodel/mastodon/AppsVM.java | 8 +------- .../mastodon/viewmodel/mastodon/FiltersVM.java | 8 +------- .../mastodon/viewmodel/mastodon/InstanceSocialVM.java | 8 +------- .../mastodon/viewmodel/mastodon/InstancesVM.java | 8 +------- .../mastodon/viewmodel/mastodon/JoinInstancesVM.java | 8 +------- .../mastodon/viewmodel/mastodon/NodeInfoVM.java | 7 +------ .../mastodon/viewmodel/mastodon/NotificationsVM.java | 8 +------- .../android/mastodon/viewmodel/mastodon/OauthVM.java | 8 +------- .../android/mastodon/viewmodel/mastodon/OembedVM.java | 8 +------- .../mastodon/viewmodel/mastodon/ReorderVM.java | 8 +------- .../android/mastodon/viewmodel/mastodon/SearchVM.java | 8 +------- .../android/mastodon/viewmodel/mastodon/TagVM.java | 8 +------- .../mastodon/viewmodel/mastodon/TimelinesVM.java | 8 +------- .../android/mastodon/viewmodel/pleroma/ActionsVM.java | 8 +------- .../android/peertube/client/RetrofitPeertubeAPI.java | 13 ++----------- 26 files changed, 45 insertions(+), 172 deletions(-) diff --git a/app/src/main/java/app/fedilab/android/BaseMainActivity.java b/app/src/main/java/app/fedilab/android/BaseMainActivity.java index 0798dbd65..06f7cbe31 100644 --- a/app/src/main/java/app/fedilab/android/BaseMainActivity.java +++ b/app/src/main/java/app/fedilab/android/BaseMainActivity.java @@ -1107,12 +1107,7 @@ public abstract class BaseMainActivity extends BaseActivity implements NetworkSt } //If the attached account is null, the app will fetch remote instance to get up-to-date values if (currentAccount != null && currentAccount.mastodon_account == null) { - OkHttpClient okHttpClient = new OkHttpClient.Builder() - .readTimeout(60, TimeUnit.SECONDS) - .connectTimeout(60, TimeUnit.SECONDS) - .callTimeout(60, TimeUnit.SECONDS) - .proxy(Helper.getProxy(getApplication().getApplicationContext())) - .build(); + OkHttpClient okHttpClient = Helper.myOkHttpClient(getApplication().getApplicationContext()); Retrofit retrofit = new Retrofit.Builder() .baseUrl("https://" + (MainActivity.currentInstance != null ? IDN.toASCII(MainActivity.currentInstance, IDN.ALLOW_UNASSIGNED) : null) + "/api/v1/") .addConverterFactory(GsonConverterFactory.create(Helper.getDateBuilder())) diff --git a/app/src/main/java/app/fedilab/android/mastodon/client/entities/nitter/Nitter.java b/app/src/main/java/app/fedilab/android/mastodon/client/entities/nitter/Nitter.java index a3465ef11..015e0c7f2 100644 --- a/app/src/main/java/app/fedilab/android/mastodon/client/entities/nitter/Nitter.java +++ b/app/src/main/java/app/fedilab/android/mastodon/client/entities/nitter/Nitter.java @@ -29,7 +29,6 @@ import java.net.IDN; import java.util.ArrayList; import java.util.HashMap; import java.util.List; -import java.util.concurrent.TimeUnit; import java.util.regex.Matcher; import java.util.regex.Pattern; @@ -62,12 +61,7 @@ public class Nitter implements Serializable { public static MastodonTimelinesService initInstanceXMLOnly(Context context, String instance) { - OkHttpClient okHttpClient = new OkHttpClient.Builder() - .readTimeout(60, TimeUnit.SECONDS) - .connectTimeout(60, TimeUnit.SECONDS) - .callTimeout(60, TimeUnit.SECONDS) - .proxy(Helper.getProxy(context)) - .build(); + OkHttpClient okHttpClient = Helper.myOkHttpClient(context); Retrofit retrofit = new Retrofit.Builder() .baseUrl("https://" + (instance != null ? IDN.toASCII(instance, IDN.ALLOW_UNASSIGNED) : null)) .addConverterFactory(SimpleXmlConverterFactory.create()) diff --git a/app/src/main/java/app/fedilab/android/mastodon/helper/CrossActionHelper.java b/app/src/main/java/app/fedilab/android/mastodon/helper/CrossActionHelper.java index 8196b1973..49b525c4c 100644 --- a/app/src/main/java/app/fedilab/android/mastodon/helper/CrossActionHelper.java +++ b/app/src/main/java/app/fedilab/android/mastodon/helper/CrossActionHelper.java @@ -34,7 +34,6 @@ import java.io.IOException; import java.net.IDN; import java.util.ArrayList; import java.util.List; -import java.util.concurrent.TimeUnit; import app.fedilab.android.BaseMainActivity; import app.fedilab.android.R; @@ -260,11 +259,7 @@ public class CrossActionHelper { private static MastodonSearchService init(Context context, String instance) { - final OkHttpClient okHttpClient = new OkHttpClient.Builder() - .readTimeout(60, TimeUnit.SECONDS) - .connectTimeout(60, TimeUnit.SECONDS) - .proxy(Helper.getProxy(context)) - .build(); + final OkHttpClient okHttpClient = Helper.myOkHttpClient(context); Retrofit retrofit = new Retrofit.Builder() .baseUrl("https://" + (instance != null ? IDN.toASCII(instance, IDN.ALLOW_UNASSIGNED) : null) + "/api/v2/") .addConverterFactory(GsonConverterFactory.create(Helper.getDateBuilder())) diff --git a/app/src/main/java/app/fedilab/android/mastodon/helper/Helper.java b/app/src/main/java/app/fedilab/android/mastodon/helper/Helper.java index e754f0336..04a07d1eb 100644 --- a/app/src/main/java/app/fedilab/android/mastodon/helper/Helper.java +++ b/app/src/main/java/app/fedilab/android/mastodon/helper/Helper.java @@ -140,6 +140,7 @@ import java.util.Random; import java.util.Set; import java.util.TimeZone; import java.util.UUID; +import java.util.concurrent.TimeUnit; import java.util.regex.Matcher; import java.util.regex.Pattern; @@ -168,6 +169,8 @@ import app.fedilab.android.mastodon.watermark.androidwm.bean.WatermarkText; import es.dmoral.toasty.Toasty; import okhttp3.MediaType; import okhttp3.MultipartBody; +import okhttp3.OkHttpClient; +import okhttp3.Request; import okhttp3.RequestBody; public class Helper { @@ -2080,4 +2083,20 @@ public class Helper { return false; } } + + public static OkHttpClient myOkHttpClient(Context context) { + return new OkHttpClient.Builder() + .addInterceptor(chain -> { + Request originalRequest = chain.request(); + Request requestWithUserAgent = originalRequest.newBuilder() + .header("User-Agent", context.getString(R.string.app_name) + "/" + BuildConfig.VERSION_NAME + "/" + BuildConfig.VERSION_CODE) + .build(); + return chain.proceed(requestWithUserAgent); + }) + .readTimeout(60, TimeUnit.SECONDS) + .connectTimeout(60, TimeUnit.SECONDS) + .callTimeout(60, TimeUnit.SECONDS) + .proxy(Helper.getProxy(context)) + .build(); + } } diff --git a/app/src/main/java/app/fedilab/android/mastodon/helper/NotificationsHelper.java b/app/src/main/java/app/fedilab/android/mastodon/helper/NotificationsHelper.java index 7147758f4..bfa431db9 100644 --- a/app/src/main/java/app/fedilab/android/mastodon/helper/NotificationsHelper.java +++ b/app/src/main/java/app/fedilab/android/mastodon/helper/NotificationsHelper.java @@ -41,7 +41,6 @@ import java.net.IDN; import java.util.ArrayList; import java.util.HashMap; import java.util.List; -import java.util.concurrent.TimeUnit; import app.fedilab.android.BaseMainActivity; import app.fedilab.android.R; @@ -137,11 +136,7 @@ public class NotificationsHelper { private static MastodonNotificationsService init(Context context, String instance) { - final OkHttpClient okHttpClient = new OkHttpClient.Builder() - .readTimeout(60, TimeUnit.SECONDS) - .connectTimeout(60, TimeUnit.SECONDS) - .proxy(Helper.getProxy(context)) - .build(); + final OkHttpClient okHttpClient = Helper.myOkHttpClient(context); Retrofit retrofit = new Retrofit.Builder() .baseUrl("https://" + (instance != null ? IDN.toASCII(instance, IDN.ALLOW_UNASSIGNED) : null) + "/api/v1/") .addConverterFactory(GsonConverterFactory.create(Helper.getDateBuilder())) diff --git a/app/src/main/java/app/fedilab/android/mastodon/helper/PushNotifications.java b/app/src/main/java/app/fedilab/android/mastodon/helper/PushNotifications.java index 1f997a40d..564b0e4d0 100644 --- a/app/src/main/java/app/fedilab/android/mastodon/helper/PushNotifications.java +++ b/app/src/main/java/app/fedilab/android/mastodon/helper/PushNotifications.java @@ -24,7 +24,6 @@ import androidx.annotation.NonNull; import androidx.preference.PreferenceManager; import java.net.IDN; -import java.util.concurrent.TimeUnit; import app.fedilab.android.R; import app.fedilab.android.mastodon.client.endpoints.MastodonNotificationsService; @@ -132,11 +131,7 @@ public class PushNotifications { } private static MastodonNotificationsService init(@NonNull Context context, String instance) { - final OkHttpClient okHttpClient = new OkHttpClient.Builder() - .readTimeout(60, TimeUnit.SECONDS) - .connectTimeout(60, TimeUnit.SECONDS) - .proxy(Helper.getProxy(context.getApplicationContext())) - .build(); + final OkHttpClient okHttpClient = Helper.myOkHttpClient(context); Retrofit retrofit = new Retrofit.Builder() .baseUrl("https://" + (instance != null ? IDN.toASCII(instance, IDN.ALLOW_UNASSIGNED) : null) + "/api/v1/") .addConverterFactory(GsonConverterFactory.create(Helper.getDateBuilder())) diff --git a/app/src/main/java/app/fedilab/android/mastodon/helper/TimelineHelper.java b/app/src/main/java/app/fedilab/android/mastodon/helper/TimelineHelper.java index 8f110772b..53d99f18b 100644 --- a/app/src/main/java/app/fedilab/android/mastodon/helper/TimelineHelper.java +++ b/app/src/main/java/app/fedilab/android/mastodon/helper/TimelineHelper.java @@ -33,7 +33,6 @@ import java.net.IDN; import java.util.ArrayList; import java.util.Date; import java.util.List; -import java.util.concurrent.TimeUnit; import java.util.regex.Matcher; import java.util.regex.Pattern; @@ -56,11 +55,7 @@ import retrofit2.converter.gson.GsonConverterFactory; public class TimelineHelper { private static MastodonFiltersService initv2(Context context) { - OkHttpClient okHttpClient = new OkHttpClient.Builder() - .readTimeout(60, TimeUnit.SECONDS) - .connectTimeout(60, TimeUnit.SECONDS) - .proxy(Helper.getProxy(context)) - .build(); + OkHttpClient okHttpClient = Helper.myOkHttpClient(context); Retrofit retrofit = new Retrofit.Builder() .baseUrl("https://" + (MainActivity.currentInstance != null ? IDN.toASCII(MainActivity.currentInstance, IDN.ALLOW_UNASSIGNED) : null) + "/api/v2/") .addConverterFactory(GsonConverterFactory.create()) diff --git a/app/src/main/java/app/fedilab/android/mastodon/jobs/FetchHomeWorker.java b/app/src/main/java/app/fedilab/android/mastodon/jobs/FetchHomeWorker.java index dae01c5b0..2848421b7 100644 --- a/app/src/main/java/app/fedilab/android/mastodon/jobs/FetchHomeWorker.java +++ b/app/src/main/java/app/fedilab/android/mastodon/jobs/FetchHomeWorker.java @@ -64,12 +64,7 @@ public class FetchHomeWorker extends Worker { private static final int FETCH_HOME_CHANNEL_ID = 5; private static final String CHANNEL_ID = "fedilab_home"; - final OkHttpClient okHttpClient = new OkHttpClient.Builder() - .readTimeout(60, TimeUnit.SECONDS) - .connectTimeout(60, TimeUnit.SECONDS) - .callTimeout(60, TimeUnit.SECONDS) - .proxy(Helper.getProxy(getApplicationContext().getApplicationContext())) - .build(); + final OkHttpClient okHttpClient = Helper.myOkHttpClient(getApplicationContext()); private final NotificationManager notificationManager; diff --git a/app/src/main/java/app/fedilab/android/mastodon/viewmodel/mastodon/AccountsVM.java b/app/src/main/java/app/fedilab/android/mastodon/viewmodel/mastodon/AccountsVM.java index 7deb0e739..91a1856fc 100644 --- a/app/src/main/java/app/fedilab/android/mastodon/viewmodel/mastodon/AccountsVM.java +++ b/app/src/main/java/app/fedilab/android/mastodon/viewmodel/mastodon/AccountsVM.java @@ -27,7 +27,6 @@ import androidx.lifecycle.MutableLiveData; import java.net.IDN; import java.util.LinkedHashMap; import java.util.List; -import java.util.concurrent.TimeUnit; import app.fedilab.android.R; import app.fedilab.android.activities.MainActivity; @@ -69,12 +68,7 @@ import retrofit2.converter.gson.GsonConverterFactory; public class AccountsVM extends AndroidViewModel { - final OkHttpClient okHttpClient = new OkHttpClient.Builder() - .readTimeout(60, TimeUnit.SECONDS) - .connectTimeout(60, TimeUnit.SECONDS) - .callTimeout(60, TimeUnit.SECONDS) - .proxy(Helper.getProxy(getApplication().getApplicationContext())) - .build(); + final OkHttpClient okHttpClient = Helper.myOkHttpClient(getApplication().getApplicationContext()); private MutableLiveData accountMutableLiveData; diff --git a/app/src/main/java/app/fedilab/android/mastodon/viewmodel/mastodon/AdminVM.java b/app/src/main/java/app/fedilab/android/mastodon/viewmodel/mastodon/AdminVM.java index c3a08155c..514a43abf 100644 --- a/app/src/main/java/app/fedilab/android/mastodon/viewmodel/mastodon/AdminVM.java +++ b/app/src/main/java/app/fedilab/android/mastodon/viewmodel/mastodon/AdminVM.java @@ -25,7 +25,6 @@ import androidx.lifecycle.MutableLiveData; import java.net.IDN; import java.util.List; -import java.util.concurrent.TimeUnit; import app.fedilab.android.mastodon.client.endpoints.MastodonAdminService; import app.fedilab.android.mastodon.client.entities.api.admin.AdminAccount; @@ -44,12 +43,7 @@ import retrofit2.converter.gson.GsonConverterFactory; public class AdminVM extends AndroidViewModel { - final OkHttpClient okHttpClient = new OkHttpClient.Builder() - .readTimeout(60, TimeUnit.SECONDS) - .connectTimeout(60, TimeUnit.SECONDS) - .callTimeout(60, TimeUnit.SECONDS) - .proxy(Helper.getProxy(getApplication().getApplicationContext())) - .build(); + final OkHttpClient okHttpClient = Helper.myOkHttpClient(getApplication().getApplicationContext()); private MutableLiveData adminAccountMutableLiveData; private MutableLiveData adminAccountsListMutableLiveData; private MutableLiveData adminReportMutableLiveData; diff --git a/app/src/main/java/app/fedilab/android/mastodon/viewmodel/mastodon/AnnouncementsVM.java b/app/src/main/java/app/fedilab/android/mastodon/viewmodel/mastodon/AnnouncementsVM.java index 235e44e6a..b168c0bb0 100644 --- a/app/src/main/java/app/fedilab/android/mastodon/viewmodel/mastodon/AnnouncementsVM.java +++ b/app/src/main/java/app/fedilab/android/mastodon/viewmodel/mastodon/AnnouncementsVM.java @@ -25,7 +25,6 @@ import androidx.lifecycle.MutableLiveData; import java.net.IDN; import java.util.List; -import java.util.concurrent.TimeUnit; import app.fedilab.android.mastodon.client.endpoints.MastodonAnnouncementsService; import app.fedilab.android.mastodon.client.entities.api.Announcement; @@ -38,12 +37,7 @@ import retrofit2.converter.gson.GsonConverterFactory; public class AnnouncementsVM extends AndroidViewModel { - final OkHttpClient okHttpClient = new OkHttpClient.Builder() - .readTimeout(60, TimeUnit.SECONDS) - .connectTimeout(60, TimeUnit.SECONDS) - .callTimeout(60, TimeUnit.SECONDS) - .proxy(Helper.getProxy(getApplication().getApplicationContext())) - .build(); + final OkHttpClient okHttpClient = Helper.myOkHttpClient(getApplication().getApplicationContext()); private MutableLiveData announcementMutableLiveData; private MutableLiveData> announcementListMutableLiveData; diff --git a/app/src/main/java/app/fedilab/android/mastodon/viewmodel/mastodon/AppsVM.java b/app/src/main/java/app/fedilab/android/mastodon/viewmodel/mastodon/AppsVM.java index 3e472e7e7..7535058a1 100644 --- a/app/src/main/java/app/fedilab/android/mastodon/viewmodel/mastodon/AppsVM.java +++ b/app/src/main/java/app/fedilab/android/mastodon/viewmodel/mastodon/AppsVM.java @@ -27,7 +27,6 @@ import com.google.gson.Gson; import com.google.gson.GsonBuilder; import java.net.IDN; -import java.util.concurrent.TimeUnit; import app.fedilab.android.mastodon.client.endpoints.MastodonAppsService; import app.fedilab.android.mastodon.client.entities.api.App; @@ -40,12 +39,7 @@ import retrofit2.converter.gson.GsonConverterFactory; public class AppsVM extends AndroidViewModel { - final OkHttpClient okHttpClient = new OkHttpClient.Builder() - .readTimeout(60, TimeUnit.SECONDS) - .connectTimeout(60, TimeUnit.SECONDS) - .callTimeout(60, TimeUnit.SECONDS) - .proxy(Helper.getProxy(getApplication().getApplicationContext())) - .build(); + final OkHttpClient okHttpClient = Helper.myOkHttpClient(getApplication().getApplicationContext()); private MutableLiveData appMutableLiveData; diff --git a/app/src/main/java/app/fedilab/android/mastodon/viewmodel/mastodon/FiltersVM.java b/app/src/main/java/app/fedilab/android/mastodon/viewmodel/mastodon/FiltersVM.java index a063616f8..76a9fc076 100644 --- a/app/src/main/java/app/fedilab/android/mastodon/viewmodel/mastodon/FiltersVM.java +++ b/app/src/main/java/app/fedilab/android/mastodon/viewmodel/mastodon/FiltersVM.java @@ -26,7 +26,6 @@ import androidx.lifecycle.MutableLiveData; import java.net.IDN; import java.util.List; -import java.util.concurrent.TimeUnit; import app.fedilab.android.BaseMainActivity; import app.fedilab.android.mastodon.client.endpoints.MastodonFiltersService; @@ -41,12 +40,7 @@ import retrofit2.converter.gson.GsonConverterFactory; public class FiltersVM extends AndroidViewModel { - final OkHttpClient okHttpClient = new OkHttpClient.Builder() - .readTimeout(60, TimeUnit.SECONDS) - .connectTimeout(60, TimeUnit.SECONDS) - .callTimeout(60, TimeUnit.SECONDS) - .proxy(Helper.getProxy(getApplication().getApplicationContext())) - .build(); + final OkHttpClient okHttpClient = Helper.myOkHttpClient(getApplication().getApplicationContext()); private MutableLiveData filterMutableLiveData; diff --git a/app/src/main/java/app/fedilab/android/mastodon/viewmodel/mastodon/InstanceSocialVM.java b/app/src/main/java/app/fedilab/android/mastodon/viewmodel/mastodon/InstanceSocialVM.java index b4b5f9e07..c8ea85408 100644 --- a/app/src/main/java/app/fedilab/android/mastodon/viewmodel/mastodon/InstanceSocialVM.java +++ b/app/src/main/java/app/fedilab/android/mastodon/viewmodel/mastodon/InstanceSocialVM.java @@ -23,7 +23,6 @@ import androidx.lifecycle.AndroidViewModel; import androidx.lifecycle.MutableLiveData; import java.util.ArrayList; -import java.util.concurrent.TimeUnit; import app.fedilab.android.mastodon.client.entities.app.InstanceSocial; import app.fedilab.android.mastodon.helper.Helper; @@ -36,12 +35,7 @@ import retrofit2.converter.gson.GsonConverterFactory; public class InstanceSocialVM extends AndroidViewModel { - final OkHttpClient okHttpClient = new OkHttpClient.Builder() - .readTimeout(60, TimeUnit.SECONDS) - .connectTimeout(60, TimeUnit.SECONDS) - .callTimeout(60, TimeUnit.SECONDS) - .proxy(Helper.getProxy(getApplication().getApplicationContext())) - .build(); + final OkHttpClient okHttpClient = Helper.myOkHttpClient(getApplication().getApplicationContext()); private final InstancesSocialService instancesSocialService; private MutableLiveData instanceSocialMutableLiveData; diff --git a/app/src/main/java/app/fedilab/android/mastodon/viewmodel/mastodon/InstancesVM.java b/app/src/main/java/app/fedilab/android/mastodon/viewmodel/mastodon/InstancesVM.java index 643c0b807..55942875a 100644 --- a/app/src/main/java/app/fedilab/android/mastodon/viewmodel/mastodon/InstancesVM.java +++ b/app/src/main/java/app/fedilab/android/mastodon/viewmodel/mastodon/InstancesVM.java @@ -29,7 +29,6 @@ import com.google.gson.GsonBuilder; import java.net.IDN; import java.util.ArrayList; import java.util.List; -import java.util.concurrent.TimeUnit; import app.fedilab.android.BaseMainActivity; import app.fedilab.android.mastodon.client.endpoints.MastodonInstanceService; @@ -48,12 +47,7 @@ import retrofit2.converter.gson.GsonConverterFactory; public class InstancesVM extends AndroidViewModel { - final OkHttpClient okHttpClient = new OkHttpClient.Builder() - .readTimeout(60, TimeUnit.SECONDS) - .connectTimeout(60, TimeUnit.SECONDS) - .callTimeout(60, TimeUnit.SECONDS) - .proxy(Helper.getProxy(getApplication().getApplicationContext())) - .build(); + final OkHttpClient okHttpClient = Helper.myOkHttpClient(getApplication().getApplicationContext()); private MutableLiveData emojiInstanceMutableLiveData; private MutableLiveData instanceInfoMutableLiveData; diff --git a/app/src/main/java/app/fedilab/android/mastodon/viewmodel/mastodon/JoinInstancesVM.java b/app/src/main/java/app/fedilab/android/mastodon/viewmodel/mastodon/JoinInstancesVM.java index 2fd5c0ac1..0b261b33b 100644 --- a/app/src/main/java/app/fedilab/android/mastodon/viewmodel/mastodon/JoinInstancesVM.java +++ b/app/src/main/java/app/fedilab/android/mastodon/viewmodel/mastodon/JoinInstancesVM.java @@ -24,7 +24,6 @@ import androidx.lifecycle.LiveData; import androidx.lifecycle.MutableLiveData; import java.util.List; -import java.util.concurrent.TimeUnit; import app.fedilab.android.mastodon.client.endpoints.JoinMastodonService; import app.fedilab.android.mastodon.client.entities.api.JoinMastodonInstance; @@ -37,12 +36,7 @@ import retrofit2.converter.gson.GsonConverterFactory; public class JoinInstancesVM extends AndroidViewModel { - final OkHttpClient okHttpClient = new OkHttpClient.Builder() - .readTimeout(60, TimeUnit.SECONDS) - .connectTimeout(60, TimeUnit.SECONDS) - .callTimeout(60, TimeUnit.SECONDS) - .proxy(Helper.getProxy(getApplication().getApplicationContext())) - .build(); + final OkHttpClient okHttpClient = Helper.myOkHttpClient(getApplication().getApplicationContext()); private final String base_url; private final JoinMastodonService joinMastodonService; private MutableLiveData> joiListMutableLiveData; diff --git a/app/src/main/java/app/fedilab/android/mastodon/viewmodel/mastodon/NodeInfoVM.java b/app/src/main/java/app/fedilab/android/mastodon/viewmodel/mastodon/NodeInfoVM.java index f62811b3d..04b1dd566 100644 --- a/app/src/main/java/app/fedilab/android/mastodon/viewmodel/mastodon/NodeInfoVM.java +++ b/app/src/main/java/app/fedilab/android/mastodon/viewmodel/mastodon/NodeInfoVM.java @@ -25,7 +25,6 @@ import androidx.lifecycle.LiveData; import androidx.lifecycle.MutableLiveData; import java.net.IDN; -import java.util.concurrent.TimeUnit; import app.fedilab.android.mastodon.client.NodeInfoService; import app.fedilab.android.mastodon.client.entities.app.WellKnownNodeinfo; @@ -38,11 +37,7 @@ import retrofit2.converter.gson.GsonConverterFactory; public class NodeInfoVM extends AndroidViewModel { - final OkHttpClient okHttpClient = new OkHttpClient.Builder() - .readTimeout(5, TimeUnit.SECONDS) - .connectTimeout(5, TimeUnit.SECONDS) - .proxy(Helper.getProxy(getApplication().getApplicationContext())) - .build(); + final OkHttpClient okHttpClient = Helper.myOkHttpClient(getApplication().getApplicationContext()); private MutableLiveData nodeInfoMutableLiveData; diff --git a/app/src/main/java/app/fedilab/android/mastodon/viewmodel/mastodon/NotificationsVM.java b/app/src/main/java/app/fedilab/android/mastodon/viewmodel/mastodon/NotificationsVM.java index 765d9493c..bfd4bbc71 100644 --- a/app/src/main/java/app/fedilab/android/mastodon/viewmodel/mastodon/NotificationsVM.java +++ b/app/src/main/java/app/fedilab/android/mastodon/viewmodel/mastodon/NotificationsVM.java @@ -27,7 +27,6 @@ import java.net.IDN; import java.util.ArrayList; import java.util.Collections; import java.util.List; -import java.util.concurrent.TimeUnit; import app.fedilab.android.mastodon.client.endpoints.MastodonNotificationsService; import app.fedilab.android.mastodon.client.entities.api.Notification; @@ -49,12 +48,7 @@ import retrofit2.converter.gson.GsonConverterFactory; public class NotificationsVM extends AndroidViewModel { - final OkHttpClient okHttpClient = new OkHttpClient.Builder() - .readTimeout(60, TimeUnit.SECONDS) - .connectTimeout(60, TimeUnit.SECONDS) - .callTimeout(60, TimeUnit.SECONDS) - .proxy(Helper.getProxy(getApplication().getApplicationContext())) - .build(); + final OkHttpClient okHttpClient = Helper.myOkHttpClient(getApplication().getApplicationContext()); private MutableLiveData notificationsMutableLiveData; diff --git a/app/src/main/java/app/fedilab/android/mastodon/viewmodel/mastodon/OauthVM.java b/app/src/main/java/app/fedilab/android/mastodon/viewmodel/mastodon/OauthVM.java index e976e991a..8a780c5f9 100644 --- a/app/src/main/java/app/fedilab/android/mastodon/viewmodel/mastodon/OauthVM.java +++ b/app/src/main/java/app/fedilab/android/mastodon/viewmodel/mastodon/OauthVM.java @@ -27,7 +27,6 @@ import com.google.gson.Gson; import com.google.gson.GsonBuilder; import java.net.IDN; -import java.util.concurrent.TimeUnit; import app.fedilab.android.mastodon.client.endpoints.MastodonAppsService; import app.fedilab.android.mastodon.client.entities.api.Token; @@ -40,12 +39,7 @@ import retrofit2.converter.gson.GsonConverterFactory; public class OauthVM extends AndroidViewModel { - final OkHttpClient okHttpClient = new OkHttpClient.Builder() - .readTimeout(60, TimeUnit.SECONDS) - .connectTimeout(60, TimeUnit.SECONDS) - .callTimeout(60, TimeUnit.SECONDS) - .proxy(Helper.getProxy(getApplication().getApplicationContext())) - .build(); + final OkHttpClient okHttpClient = Helper.myOkHttpClient(getApplication().getApplicationContext()); private MutableLiveData tokenMutableLiveData; private MutableLiveData voidMutableLiveData; diff --git a/app/src/main/java/app/fedilab/android/mastodon/viewmodel/mastodon/OembedVM.java b/app/src/main/java/app/fedilab/android/mastodon/viewmodel/mastodon/OembedVM.java index c9c41720b..885d1fac2 100644 --- a/app/src/main/java/app/fedilab/android/mastodon/viewmodel/mastodon/OembedVM.java +++ b/app/src/main/java/app/fedilab/android/mastodon/viewmodel/mastodon/OembedVM.java @@ -20,7 +20,6 @@ import androidx.annotation.NonNull; import androidx.lifecycle.AndroidViewModel; import java.net.IDN; -import java.util.concurrent.TimeUnit; import app.fedilab.android.mastodon.client.endpoints.MastodonOembedService; import app.fedilab.android.mastodon.helper.Helper; @@ -30,12 +29,7 @@ import retrofit2.converter.gson.GsonConverterFactory; public class OembedVM extends AndroidViewModel { - final OkHttpClient okHttpClient = new OkHttpClient.Builder() - .readTimeout(60, TimeUnit.SECONDS) - .connectTimeout(60, TimeUnit.SECONDS) - .callTimeout(60, TimeUnit.SECONDS) - .proxy(Helper.getProxy(getApplication().getApplicationContext())) - .build(); + final OkHttpClient okHttpClient = Helper.myOkHttpClient(getApplication().getApplicationContext()); public OembedVM(@NonNull Application application) { super(application); diff --git a/app/src/main/java/app/fedilab/android/mastodon/viewmodel/mastodon/ReorderVM.java b/app/src/main/java/app/fedilab/android/mastodon/viewmodel/mastodon/ReorderVM.java index 242fbcd5f..930449530 100644 --- a/app/src/main/java/app/fedilab/android/mastodon/viewmodel/mastodon/ReorderVM.java +++ b/app/src/main/java/app/fedilab/android/mastodon/viewmodel/mastodon/ReorderVM.java @@ -29,7 +29,6 @@ import androidx.preference.PreferenceManager; import java.util.ArrayList; import java.util.List; -import java.util.concurrent.TimeUnit; import app.fedilab.android.R; import app.fedilab.android.mastodon.client.endpoints.MastodonSearchService; @@ -48,12 +47,7 @@ import retrofit2.converter.gson.GsonConverterFactory; public class ReorderVM extends AndroidViewModel { - final OkHttpClient okHttpClient = new OkHttpClient.Builder() - .readTimeout(60, TimeUnit.SECONDS) - .connectTimeout(60, TimeUnit.SECONDS) - .callTimeout(60, TimeUnit.SECONDS) - .proxy(Helper.getProxy(getApplication().getApplicationContext())) - .build(); + final OkHttpClient okHttpClient = Helper.myOkHttpClient(getApplication().getApplicationContext()); private MutableLiveData resultsMutableLiveData; private MutableLiveData pinnedMutableLiveData; private MutableLiveData bottomMenuMutableLiveData; diff --git a/app/src/main/java/app/fedilab/android/mastodon/viewmodel/mastodon/SearchVM.java b/app/src/main/java/app/fedilab/android/mastodon/viewmodel/mastodon/SearchVM.java index b5f92bb1c..f538d2032 100644 --- a/app/src/main/java/app/fedilab/android/mastodon/viewmodel/mastodon/SearchVM.java +++ b/app/src/main/java/app/fedilab/android/mastodon/viewmodel/mastodon/SearchVM.java @@ -29,7 +29,6 @@ import com.google.gson.GsonBuilder; import java.net.IDN; import java.util.ArrayList; import java.util.List; -import java.util.concurrent.TimeUnit; import app.fedilab.android.mastodon.client.endpoints.MastodonSearchService; import app.fedilab.android.mastodon.client.entities.api.Results; @@ -45,12 +44,7 @@ import retrofit2.converter.gson.GsonConverterFactory; public class SearchVM extends AndroidViewModel { - final OkHttpClient okHttpClient = new OkHttpClient.Builder() - .readTimeout(60, TimeUnit.SECONDS) - .connectTimeout(60, TimeUnit.SECONDS) - .callTimeout(60, TimeUnit.SECONDS) - .proxy(Helper.getProxy(getApplication().getApplicationContext())) - .build(); + final OkHttpClient okHttpClient = Helper.myOkHttpClient(getApplication().getApplicationContext()); private MutableLiveData resultsMutableLiveData; public SearchVM(@NonNull Application application) { diff --git a/app/src/main/java/app/fedilab/android/mastodon/viewmodel/mastodon/TagVM.java b/app/src/main/java/app/fedilab/android/mastodon/viewmodel/mastodon/TagVM.java index faa71e2df..9172e8ea8 100644 --- a/app/src/main/java/app/fedilab/android/mastodon/viewmodel/mastodon/TagVM.java +++ b/app/src/main/java/app/fedilab/android/mastodon/viewmodel/mastodon/TagVM.java @@ -25,7 +25,6 @@ import androidx.lifecycle.MutableLiveData; import java.net.IDN; import java.util.List; -import java.util.concurrent.TimeUnit; import app.fedilab.android.mastodon.client.endpoints.MastodonTagService; import app.fedilab.android.mastodon.client.entities.api.Pagination; @@ -42,12 +41,7 @@ import retrofit2.converter.gson.GsonConverterFactory; public class TagVM extends AndroidViewModel { - final OkHttpClient okHttpClient = new OkHttpClient.Builder() - .readTimeout(60, TimeUnit.SECONDS) - .connectTimeout(60, TimeUnit.SECONDS) - .callTimeout(60, TimeUnit.SECONDS) - .proxy(Helper.getProxy(getApplication().getApplicationContext())) - .build(); + final OkHttpClient okHttpClient = Helper.myOkHttpClient(getApplication().getApplicationContext()); private MutableLiveData tagsMutableLiveData; private MutableLiveData tagMutableLiveData; diff --git a/app/src/main/java/app/fedilab/android/mastodon/viewmodel/mastodon/TimelinesVM.java b/app/src/main/java/app/fedilab/android/mastodon/viewmodel/mastodon/TimelinesVM.java index ea6071680..d330852aa 100644 --- a/app/src/main/java/app/fedilab/android/mastodon/viewmodel/mastodon/TimelinesVM.java +++ b/app/src/main/java/app/fedilab/android/mastodon/viewmodel/mastodon/TimelinesVM.java @@ -35,7 +35,6 @@ import java.net.IDN; import java.util.ArrayList; import java.util.Collections; import java.util.List; -import java.util.concurrent.TimeUnit; import app.fedilab.android.R; import app.fedilab.android.activities.MainActivity; @@ -71,12 +70,7 @@ import retrofit2.converter.simplexml.SimpleXmlConverterFactory; public class TimelinesVM extends AndroidViewModel { - final OkHttpClient okHttpClient = new OkHttpClient.Builder() - .readTimeout(60, TimeUnit.SECONDS) - .connectTimeout(60, TimeUnit.SECONDS) - .callTimeout(60, TimeUnit.SECONDS) - .proxy(Helper.getProxy(getApplication().getApplicationContext())) - .build(); + final OkHttpClient okHttpClient = Helper.myOkHttpClient(getApplication().getApplicationContext()); private MutableLiveData> accountListMutableLiveData; diff --git a/app/src/main/java/app/fedilab/android/mastodon/viewmodel/pleroma/ActionsVM.java b/app/src/main/java/app/fedilab/android/mastodon/viewmodel/pleroma/ActionsVM.java index 564cd79d7..cbb232c9f 100644 --- a/app/src/main/java/app/fedilab/android/mastodon/viewmodel/pleroma/ActionsVM.java +++ b/app/src/main/java/app/fedilab/android/mastodon/viewmodel/pleroma/ActionsVM.java @@ -22,7 +22,6 @@ import androidx.lifecycle.MutableLiveData; import java.net.IDN; import java.util.List; -import java.util.concurrent.TimeUnit; import app.fedilab.android.mastodon.client.endpoints.PleromaAPI; import app.fedilab.android.mastodon.client.entities.api.Announcement; @@ -34,12 +33,7 @@ import retrofit2.converter.gson.GsonConverterFactory; public class ActionsVM extends AndroidViewModel { - final OkHttpClient okHttpClient = new OkHttpClient.Builder() - .readTimeout(60, TimeUnit.SECONDS) - .connectTimeout(60, TimeUnit.SECONDS) - .callTimeout(60, TimeUnit.SECONDS) - .proxy(Helper.getProxy(getApplication().getApplicationContext())) - .build(); + final OkHttpClient okHttpClient = Helper.myOkHttpClient(getApplication().getApplicationContext()); private MutableLiveData announcementMutableLiveData; private MutableLiveData> announcementListMutableLiveData; diff --git a/app/src/main/java/app/fedilab/android/peertube/client/RetrofitPeertubeAPI.java b/app/src/main/java/app/fedilab/android/peertube/client/RetrofitPeertubeAPI.java index 6e1934ec3..2de3aaeea 100644 --- a/app/src/main/java/app/fedilab/android/peertube/client/RetrofitPeertubeAPI.java +++ b/app/src/main/java/app/fedilab/android/peertube/client/RetrofitPeertubeAPI.java @@ -54,7 +54,6 @@ import java.util.List; import java.util.Locale; import java.util.Map; import java.util.Set; -import java.util.concurrent.TimeUnit; import app.fedilab.android.BaseMainActivity; import app.fedilab.android.R; @@ -226,11 +225,7 @@ public class RetrofitPeertubeAPI { } private PeertubeService init() { - final OkHttpClient okHttpClient = new OkHttpClient.Builder() - .readTimeout(60, TimeUnit.SECONDS) - .connectTimeout(60, TimeUnit.SECONDS) - .proxy(app.fedilab.android.mastodon.helper.Helper.getProxy(_context.getApplicationContext())) - .build(); + final OkHttpClient okHttpClient = app.fedilab.android.mastodon.helper.Helper.myOkHttpClient(_context); Retrofit retrofit = new Retrofit.Builder() .baseUrl(finalUrl) .addConverterFactory(GsonConverterFactory.create()) @@ -248,11 +243,7 @@ public class RetrofitPeertubeAPI { if (!URLUtil.isValidUrl("https://" + instance)) { return null; } - final OkHttpClient okHttpClient = new OkHttpClient.Builder() - .readTimeout(60, TimeUnit.SECONDS) - .connectTimeout(60, TimeUnit.SECONDS) - .proxy(app.fedilab.android.mastodon.helper.Helper.getProxy(_context.getApplicationContext())) - .build(); + final OkHttpClient okHttpClient = app.fedilab.android.mastodon.helper.Helper.myOkHttpClient(_context); Retrofit retrofit = new Retrofit.Builder() .baseUrl("https://" + (instance != null ? IDN.toASCII(instance, IDN.ALLOW_UNASSIGNED) : null)) .addConverterFactory(GsonConverterFactory.create()) -- cgit v1.2.3