summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorByteHamster <ByteHamster@users.noreply.github.com>2024-03-31 09:15:53 +0200
committerGitHub <noreply@github.com>2024-03-31 09:15:53 +0200
commit4e47691e70e85736c7eeb30ce02c73176e565a86 (patch)
tree5e419cbcbd7095057fb07d34d753b27502901140
parent86ff7f540b7a3b2168d5aa85027865c6d7af450f (diff)
downloadAntennaPod-4e47691e70e85736c7eeb30ce02c73176e565a86.zip
Remove gpodder search (#7047)
The search results are usually broken anyway or the server just returns an error 500
-rw-r--r--app/src/main/java/de/danoeh/antennapod/fragment/AddFeedFragment.java3
-rw-r--r--app/src/main/res/layout/addfeed.xml9
-rw-r--r--net/discovery/build.gradle2
-rw-r--r--net/discovery/src/main/java/de/danoeh/antennapod/net/discovery/GpodnetPodcastSearcher.java52
-rw-r--r--net/discovery/src/main/java/de/danoeh/antennapod/net/discovery/PodcastSearchResult.java8
-rw-r--r--net/discovery/src/main/java/de/danoeh/antennapod/net/discovery/PodcastSearcherRegistry.java1
-rw-r--r--net/sync/gpoddernet/src/main/java/de/danoeh/antennapod/net/sync/gpoddernet/GpodnetService.java30
-rw-r--r--ui/i18n/src/main/res/values/strings.xml1
8 files changed, 0 insertions, 106 deletions
diff --git a/app/src/main/java/de/danoeh/antennapod/fragment/AddFeedFragment.java b/app/src/main/java/de/danoeh/antennapod/fragment/AddFeedFragment.java
index 4d1848296..8fe5e1c18 100644
--- a/app/src/main/java/de/danoeh/antennapod/fragment/AddFeedFragment.java
+++ b/app/src/main/java/de/danoeh/antennapod/fragment/AddFeedFragment.java
@@ -34,7 +34,6 @@ import de.danoeh.antennapod.databinding.AddfeedBinding;
import de.danoeh.antennapod.databinding.EditTextDialogBinding;
import de.danoeh.antennapod.net.discovery.CombinedSearcher;
import de.danoeh.antennapod.net.discovery.FyydPodcastSearcher;
-import de.danoeh.antennapod.net.discovery.GpodnetPodcastSearcher;
import de.danoeh.antennapod.net.discovery.ItunesPodcastSearcher;
import de.danoeh.antennapod.net.discovery.PodcastIndexPodcastSearcher;
import de.danoeh.antennapod.ui.appstartintent.OnlineFeedviewActivityStarter;
@@ -81,8 +80,6 @@ public class AddFeedFragment extends Fragment {
-> activity.loadChildFragment(OnlineSearchFragment.newInstance(ItunesPodcastSearcher.class)));
viewBinding.searchFyydButton.setOnClickListener(v
-> activity.loadChildFragment(OnlineSearchFragment.newInstance(FyydPodcastSearcher.class)));
- viewBinding.searchGPodderButton.setOnClickListener(v
- -> activity.loadChildFragment(OnlineSearchFragment.newInstance(GpodnetPodcastSearcher.class)));
viewBinding.searchPodcastIndexButton.setOnClickListener(v
-> activity.loadChildFragment(OnlineSearchFragment.newInstance(PodcastIndexPodcastSearcher.class)));
diff --git a/app/src/main/res/layout/addfeed.xml b/app/src/main/res/layout/addfeed.xml
index d3e3c3c1d..f4455afd2 100644
--- a/app/src/main/res/layout/addfeed.xml
+++ b/app/src/main/res/layout/addfeed.xml
@@ -134,15 +134,6 @@
style="@style/AddPodcastTextView" />
<TextView
- android:id="@+id/searchGPodderButton"
- android:layout_width="match_parent"
- android:layout_height="wrap_content"
- android:text="@string/gpodnet_search_hint"
- app:drawableStartCompat="@drawable/ic_search"
- app:drawableLeftCompat="@drawable/ic_search"
- style="@style/AddPodcastTextView" />
-
- <TextView
android:id="@+id/searchPodcastIndexButton"
android:layout_width="match_parent"
android:layout_height="wrap_content"
diff --git a/net/discovery/build.gradle b/net/discovery/build.gradle
index a20ddeb43..33c386c20 100644
--- a/net/discovery/build.gradle
+++ b/net/discovery/build.gradle
@@ -21,8 +21,6 @@ android {
dependencies {
implementation project(':model')
implementation project(':net:common')
- implementation project(':net:sync:gpoddernet')
- implementation project(':net:sync:model')
implementation project(':storage:preferences')
implementation project(':ui:i18n')
diff --git a/net/discovery/src/main/java/de/danoeh/antennapod/net/discovery/GpodnetPodcastSearcher.java b/net/discovery/src/main/java/de/danoeh/antennapod/net/discovery/GpodnetPodcastSearcher.java
deleted file mode 100644
index 270aa7a0e..000000000
--- a/net/discovery/src/main/java/de/danoeh/antennapod/net/discovery/GpodnetPodcastSearcher.java
+++ /dev/null
@@ -1,52 +0,0 @@
-package de.danoeh.antennapod.net.discovery;
-
-import de.danoeh.antennapod.net.common.AntennapodHttpClient;
-import de.danoeh.antennapod.net.sync.gpoddernet.GpodnetService;
-import de.danoeh.antennapod.net.sync.gpoddernet.GpodnetServiceException;
-import de.danoeh.antennapod.net.sync.gpoddernet.model.GpodnetPodcast;
-import de.danoeh.antennapod.storage.preferences.SynchronizationCredentials;
-import io.reactivex.Single;
-import io.reactivex.SingleOnSubscribe;
-import io.reactivex.android.schedulers.AndroidSchedulers;
-import io.reactivex.schedulers.Schedulers;
-
-import java.util.ArrayList;
-import java.util.List;
-
-public class GpodnetPodcastSearcher implements PodcastSearcher {
- public Single<List<PodcastSearchResult>> search(String query) {
- return Single.create((SingleOnSubscribe<List<PodcastSearchResult>>) subscriber -> {
- try {
- GpodnetService service = new GpodnetService(AntennapodHttpClient.getHttpClient(),
- SynchronizationCredentials.getHosturl(), SynchronizationCredentials.getDeviceId(),
- SynchronizationCredentials.getUsername(), SynchronizationCredentials.getPassword());
- List<GpodnetPodcast> gpodnetPodcasts = service.searchPodcasts(query, 0);
- List<PodcastSearchResult> results = new ArrayList<>();
- for (GpodnetPodcast podcast : gpodnetPodcasts) {
- results.add(PodcastSearchResult.fromGpodder(podcast));
- }
- subscriber.onSuccess(results);
- } catch (GpodnetServiceException e) {
- e.printStackTrace();
- subscriber.onError(e);
- }
- })
- .subscribeOn(Schedulers.io())
- .observeOn(AndroidSchedulers.mainThread());
- }
-
- @Override
- public Single<String> lookupUrl(String url) {
- return Single.just(url);
- }
-
- @Override
- public boolean urlNeedsLookup(String url) {
- return false;
- }
-
- @Override
- public String getName() {
- return "Gpodder.net";
- }
-}
diff --git a/net/discovery/src/main/java/de/danoeh/antennapod/net/discovery/PodcastSearchResult.java b/net/discovery/src/main/java/de/danoeh/antennapod/net/discovery/PodcastSearchResult.java
index b3f352334..db33d2ce7 100644
--- a/net/discovery/src/main/java/de/danoeh/antennapod/net/discovery/PodcastSearchResult.java
+++ b/net/discovery/src/main/java/de/danoeh/antennapod/net/discovery/PodcastSearchResult.java
@@ -1,7 +1,6 @@
package de.danoeh.antennapod.net.discovery;
import androidx.annotation.Nullable;
-import de.danoeh.antennapod.net.sync.gpoddernet.model.GpodnetPodcast;
import de.mfietz.fyydlin.SearchHit;
import org.json.JSONArray;
import org.json.JSONException;
@@ -93,13 +92,6 @@ public class PodcastSearchResult {
searchHit.getAuthor());
}
- public static PodcastSearchResult fromGpodder(GpodnetPodcast searchHit) {
- return new PodcastSearchResult(searchHit.getTitle(),
- searchHit.getLogoUrl(),
- searchHit.getUrl(),
- searchHit.getAuthor());
- }
-
public static PodcastSearchResult fromPodcastIndex(JSONObject json) {
String title = json.optString("title", "");
String imageUrl = json.optString("image", null);
diff --git a/net/discovery/src/main/java/de/danoeh/antennapod/net/discovery/PodcastSearcherRegistry.java b/net/discovery/src/main/java/de/danoeh/antennapod/net/discovery/PodcastSearcherRegistry.java
index c7892bd09..2d8c2ae38 100644
--- a/net/discovery/src/main/java/de/danoeh/antennapod/net/discovery/PodcastSearcherRegistry.java
+++ b/net/discovery/src/main/java/de/danoeh/antennapod/net/discovery/PodcastSearcherRegistry.java
@@ -15,7 +15,6 @@ public class PodcastSearcherRegistry {
if (searchProviders == null) {
searchProviders = new ArrayList<>();
searchProviders.add(new SearcherInfo(new CombinedSearcher(), 1.0f));
- searchProviders.add(new SearcherInfo(new GpodnetPodcastSearcher(), 0.0f));
searchProviders.add(new SearcherInfo(new FyydPodcastSearcher(), 1.0f));
searchProviders.add(new SearcherInfo(new ItunesPodcastSearcher(), 1.0f));
searchProviders.add(new SearcherInfo(new PodcastIndexPodcastSearcher(), 1.0f));
diff --git a/net/sync/gpoddernet/src/main/java/de/danoeh/antennapod/net/sync/gpoddernet/GpodnetService.java b/net/sync/gpoddernet/src/main/java/de/danoeh/antennapod/net/sync/gpoddernet/GpodnetService.java
index cfa915ffa..c65e654aa 100644
--- a/net/sync/gpoddernet/src/main/java/de/danoeh/antennapod/net/sync/gpoddernet/GpodnetService.java
+++ b/net/sync/gpoddernet/src/main/java/de/danoeh/antennapod/net/sync/gpoddernet/GpodnetService.java
@@ -79,36 +79,6 @@ public class GpodnetService implements ISyncService {
}
/**
- * Searches the podcast directory for a given string.
- *
- * @param query The search query
- * @param scaledLogoSize The size of the logos that are returned by the search query.
- * Must be in range 1..256. If the value is out of range, the
- * default value defined by the gpodder.net API will be used.
- */
- public List<GpodnetPodcast> searchPodcasts(String query, int scaledLogoSize) throws GpodnetServiceException {
- String parameters = (scaledLogoSize > 0 && scaledLogoSize <= 256) ? String
- .format(Locale.US, "q=%s&scale_logo=%d", query, scaledLogoSize) : String
- .format("q=%s", query);
- try {
- URL url = new URI(baseScheme, null, baseHost, basePort, "/search.json",
- parameters, null).toURL();
- Request.Builder request = new Request.Builder().url(url);
- String response = executeRequest(request);
-
- JSONArray jsonArray = new JSONArray(response);
- return readPodcastListFromJsonArray(jsonArray);
-
- } catch (JSONException | MalformedURLException e) {
- e.printStackTrace();
- throw new GpodnetServiceException(e);
- } catch (URISyntaxException e) {
- e.printStackTrace();
- throw new IllegalStateException(e);
- }
- }
-
- /**
* Returns all devices of a given user.
* <p/>
* This method requires authentication.
diff --git a/ui/i18n/src/main/res/values/strings.xml b/ui/i18n/src/main/res/values/strings.xml
index 0740b2734..8b7f8b9ea 100644
--- a/ui/i18n/src/main/res/values/strings.xml
+++ b/ui/i18n/src/main/res/values/strings.xml
@@ -761,7 +761,6 @@
<string name="search_itunes_label">Search Apple Podcasts</string>
<string name="search_podcastindex_label">Search Podcast Index</string>
<string name="search_fyyd_label">Search fyyd</string>
- <string name="gpodnet_search_hint">Search gpodder.net</string>
<string name="advanced">Advanced</string>
<string name="add_podcast_by_url">Add podcast by RSS address</string>
<string name="add_podcast_by_url_hint" translatable="false">www.example.com/feed</string>