diff options
author | ByteHamster <info@bytehamster.com> | 2020-03-27 18:35:25 +0100 |
---|---|---|
committer | ByteHamster <info@bytehamster.com> | 2020-03-30 13:58:44 +0200 |
commit | 2b8c3ff04e2ee395d4b89f4aefded4e80556d9af (patch) | |
tree | ae5d5636065e7ed921fabfc27330f159a729b11c /app/src/main/java/de/danoeh | |
parent | 3c8fb2e296affc210aaf2b2316afde2738b8d150 (diff) | |
download | AntennaPod-2b8c3ff04e2ee395d4b89f4aefded4e80556d9af.zip |
Uncoupled AntennaPod from specific GpodnetSyncService
Diffstat (limited to 'app/src/main/java/de/danoeh')
16 files changed, 73 insertions, 123 deletions
diff --git a/app/src/main/java/de/danoeh/antennapod/activity/gpoddernet/GpodnetAuthenticationActivity.java b/app/src/main/java/de/danoeh/antennapod/activity/gpoddernet/GpodnetAuthenticationActivity.java index 224b8d182..ea97fc0fd 100644 --- a/app/src/main/java/de/danoeh/antennapod/activity/gpoddernet/GpodnetAuthenticationActivity.java +++ b/app/src/main/java/de/danoeh/antennapod/activity/gpoddernet/GpodnetAuthenticationActivity.java @@ -30,12 +30,13 @@ import java.util.regex.Pattern; import de.danoeh.antennapod.BuildConfig; import de.danoeh.antennapod.R; import de.danoeh.antennapod.activity.MainActivity; -import de.danoeh.antennapod.core.gpoddernet.GpodnetService; -import de.danoeh.antennapod.core.gpoddernet.GpodnetServiceException; -import de.danoeh.antennapod.core.gpoddernet.model.GpodnetDevice; import de.danoeh.antennapod.core.preferences.GpodnetPreferences; import de.danoeh.antennapod.core.preferences.UserPreferences; -import de.danoeh.antennapod.core.service.GpodnetSyncService; +import de.danoeh.antennapod.core.service.download.AntennapodHttpClient; +import de.danoeh.antennapod.core.sync.SyncService; +import de.danoeh.antennapod.core.sync.gpoddernet.GpodnetService; +import de.danoeh.antennapod.core.sync.gpoddernet.GpodnetServiceException; +import de.danoeh.antennapod.core.sync.gpoddernet.model.GpodnetDevice; /** * Guides the user through the authentication process @@ -69,7 +70,7 @@ public class GpodnetAuthenticationActivity extends AppCompatActivity { getSupportActionBar().setDisplayHomeAsUpEnabled(true); setContentView(R.layout.gpodnetauth_activity); - service = new GpodnetService(); + service = new GpodnetService(AntennapodHttpClient.getHttpClient(), GpodnetPreferences.getHostname()); viewFlipper = findViewById(R.id.viewflipper); LayoutInflater inflater = (LayoutInflater) @@ -86,14 +87,6 @@ public class GpodnetAuthenticationActivity extends AppCompatActivity { } @Override - protected void onDestroy() { - super.onDestroy(); - if (service != null) { - service.shutdown(); - } - } - - @Override public boolean onOptionsItemSelected(MenuItem item) { switch (item.getItemId()) { case android.R.id.home: @@ -221,7 +214,7 @@ public class GpodnetAuthenticationActivity extends AppCompatActivity { @Override protected List<GpodnetDevice> doInBackground(GpodnetService... params) { try { - return params[0].getDevices(username); + return params[0].getDevices(); } catch (GpodnetServiceException e) { e.printStackTrace(); return null; @@ -268,7 +261,7 @@ public class GpodnetAuthenticationActivity extends AppCompatActivity { @Override protected GpodnetDevice doInBackground(GpodnetService... params) { try { - params[0].configureDevice(username, deviceStr, captionStr, GpodnetDevice.DeviceType.MOBILE); + params[0].configureDevice(deviceStr, captionStr, GpodnetDevice.DeviceType.MOBILE); return new GpodnetDevice(deviceStr, captionStr, GpodnetDevice.DeviceType.MOBILE.toString(), 0); } catch (GpodnetServiceException e) { e.printStackTrace(); @@ -349,7 +342,7 @@ public class GpodnetAuthenticationActivity extends AppCompatActivity { final Button back = view.findViewById(R.id.butGoMainscreen); sync.setOnClickListener(v -> { - GpodnetSyncService.sendSyncIntent(GpodnetAuthenticationActivity.this); + SyncService.sync(GpodnetAuthenticationActivity.this); finish(); }); back.setOnClickListener(v -> { diff --git a/app/src/main/java/de/danoeh/antennapod/adapter/gpodnet/PodcastListAdapter.java b/app/src/main/java/de/danoeh/antennapod/adapter/gpodnet/PodcastListAdapter.java index 3edc23e37..25fc0a05c 100644 --- a/app/src/main/java/de/danoeh/antennapod/adapter/gpodnet/PodcastListAdapter.java +++ b/app/src/main/java/de/danoeh/antennapod/adapter/gpodnet/PodcastListAdapter.java @@ -13,13 +13,14 @@ import com.bumptech.glide.Glide; import com.bumptech.glide.load.resource.bitmap.FitCenter; import com.bumptech.glide.load.resource.bitmap.RoundedCorners; import com.bumptech.glide.request.RequestOptions; +import de.danoeh.antennapod.core.sync.gpoddernet.model.GpodnetPodcast; import org.apache.commons.lang3.StringUtils; -import java.util.List; import de.danoeh.antennapod.R; import de.danoeh.antennapod.core.glide.ApGlideSettings; -import de.danoeh.antennapod.core.gpoddernet.model.GpodnetPodcast; + +import java.util.List; /** * Adapter for displaying a list of GPodnetPodcast-Objects. diff --git a/app/src/main/java/de/danoeh/antennapod/adapter/gpodnet/TagListAdapter.java b/app/src/main/java/de/danoeh/antennapod/adapter/gpodnet/TagListAdapter.java index 52fca792e..698e43145 100644 --- a/app/src/main/java/de/danoeh/antennapod/adapter/gpodnet/TagListAdapter.java +++ b/app/src/main/java/de/danoeh/antennapod/adapter/gpodnet/TagListAdapter.java @@ -7,10 +7,10 @@ import android.view.ViewGroup; import android.widget.ArrayAdapter; import android.widget.TextView; -import java.util.List; - import de.danoeh.antennapod.R; -import de.danoeh.antennapod.core.gpoddernet.model.GpodnetTag; +import de.danoeh.antennapod.core.sync.gpoddernet.model.GpodnetTag; + +import java.util.List; /** * Adapter for displaying a list of GPodnetPodcast-Objects. diff --git a/app/src/main/java/de/danoeh/antennapod/config/ClientConfigurator.java b/app/src/main/java/de/danoeh/antennapod/config/ClientConfigurator.java index 3dd7c350d..6e584d34f 100644 --- a/app/src/main/java/de/danoeh/antennapod/config/ClientConfigurator.java +++ b/app/src/main/java/de/danoeh/antennapod/config/ClientConfigurator.java @@ -14,7 +14,6 @@ class ClientConfigurator { ClientConfig.USER_AGENT = "AntennaPod/" + BuildConfig.VERSION_NAME; ClientConfig.applicationCallbacks = new ApplicationCallbacksImpl(); ClientConfig.downloadServiceCallbacks = new DownloadServiceCallbacksImpl(); - ClientConfig.gpodnetCallbacks = new GpodnetCallbacksImpl(); ClientConfig.playbackServiceCallbacks = new PlaybackServiceCallbacksImpl(); ClientConfig.dbTasksCallbacks = new DBTasksCallbacksImpl(); ClientConfig.castCallbacks = new CastCallbackImpl(); diff --git a/app/src/main/java/de/danoeh/antennapod/config/GpodnetCallbacksImpl.java b/app/src/main/java/de/danoeh/antennapod/config/GpodnetCallbacksImpl.java deleted file mode 100644 index 5f8da6894..000000000 --- a/app/src/main/java/de/danoeh/antennapod/config/GpodnetCallbacksImpl.java +++ /dev/null @@ -1,22 +0,0 @@ -package de.danoeh.antennapod.config; - -import android.app.PendingIntent; -import android.content.Context; -import android.content.Intent; - -import de.danoeh.antennapod.activity.MainActivity; -import de.danoeh.antennapod.core.GpodnetCallbacks; - - -public class GpodnetCallbacksImpl implements GpodnetCallbacks { - @Override - public boolean gpodnetEnabled() { - return true; - } - - @Override - public PendingIntent getGpodnetSyncServiceErrorNotificationPendingIntent(Context context) { - return PendingIntent.getActivity(context, 0, new Intent(context, MainActivity.class), - PendingIntent.FLAG_UPDATE_CURRENT); - } -} diff --git a/app/src/main/java/de/danoeh/antennapod/dialog/GpodnetSetHostnameDialog.java b/app/src/main/java/de/danoeh/antennapod/dialog/GpodnetSetHostnameDialog.java index 17668586b..8119dffcb 100644 --- a/app/src/main/java/de/danoeh/antennapod/dialog/GpodnetSetHostnameDialog.java +++ b/app/src/main/java/de/danoeh/antennapod/dialog/GpodnetSetHostnameDialog.java @@ -10,8 +10,8 @@ import android.widget.EditText; import android.widget.LinearLayout; import de.danoeh.antennapod.R; -import de.danoeh.antennapod.core.gpoddernet.GpodnetService; import de.danoeh.antennapod.core.preferences.GpodnetPreferences; +import de.danoeh.antennapod.core.sync.gpoddernet.GpodnetService; /** * Creates a dialog that lets the user change the hostname for the gpodder.net service. diff --git a/app/src/main/java/de/danoeh/antennapod/discovery/GpodnetPodcastSearcher.java b/app/src/main/java/de/danoeh/antennapod/discovery/GpodnetPodcastSearcher.java index 6e5debb38..4fbac19ff 100644 --- a/app/src/main/java/de/danoeh/antennapod/discovery/GpodnetPodcastSearcher.java +++ b/app/src/main/java/de/danoeh/antennapod/discovery/GpodnetPodcastSearcher.java @@ -1,8 +1,10 @@ package de.danoeh.antennapod.discovery; -import de.danoeh.antennapod.core.gpoddernet.GpodnetService; -import de.danoeh.antennapod.core.gpoddernet.GpodnetServiceException; -import de.danoeh.antennapod.core.gpoddernet.model.GpodnetPodcast; +import de.danoeh.antennapod.core.preferences.GpodnetPreferences; +import de.danoeh.antennapod.core.service.download.AntennapodHttpClient; +import de.danoeh.antennapod.core.sync.gpoddernet.GpodnetService; +import de.danoeh.antennapod.core.sync.gpoddernet.GpodnetServiceException; +import de.danoeh.antennapod.core.sync.gpoddernet.model.GpodnetPodcast; import io.reactivex.Single; import io.reactivex.SingleOnSubscribe; import io.reactivex.android.schedulers.AndroidSchedulers; @@ -14,9 +16,9 @@ import java.util.List; public class GpodnetPodcastSearcher implements PodcastSearcher { public Single<List<PodcastSearchResult>> search(String query) { return Single.create((SingleOnSubscribe<List<PodcastSearchResult>>) subscriber -> { - GpodnetService service = null; try { - service = new GpodnetService(); + GpodnetService service = new GpodnetService(AntennapodHttpClient.getHttpClient(), + GpodnetPreferences.getHostname()); List<GpodnetPodcast> gpodnetPodcasts = service.searchPodcasts(query, 0); List<PodcastSearchResult> results = new ArrayList<>(); for (GpodnetPodcast podcast : gpodnetPodcasts) { @@ -26,10 +28,6 @@ public class GpodnetPodcastSearcher implements PodcastSearcher { } catch (GpodnetServiceException e) { e.printStackTrace(); subscriber.onError(e); - } finally { - if (service != null) { - service.shutdown(); - } } }) .subscribeOn(Schedulers.io()) diff --git a/app/src/main/java/de/danoeh/antennapod/discovery/PodcastSearchResult.java b/app/src/main/java/de/danoeh/antennapod/discovery/PodcastSearchResult.java index 481c232c8..0f0c864b1 100644 --- a/app/src/main/java/de/danoeh/antennapod/discovery/PodcastSearchResult.java +++ b/app/src/main/java/de/danoeh/antennapod/discovery/PodcastSearchResult.java @@ -1,7 +1,7 @@ package de.danoeh.antennapod.discovery; import androidx.annotation.Nullable; -import de.danoeh.antennapod.core.gpoddernet.model.GpodnetPodcast; +import de.danoeh.antennapod.core.sync.gpoddernet.model.GpodnetPodcast; import de.mfietz.fyydlin.SearchHit; import org.json.JSONArray; import org.json.JSONException; diff --git a/app/src/main/java/de/danoeh/antennapod/fragment/gpodnet/PodcastListFragment.java b/app/src/main/java/de/danoeh/antennapod/fragment/gpodnet/PodcastListFragment.java index 3fca43938..915abdb0d 100644 --- a/app/src/main/java/de/danoeh/antennapod/fragment/gpodnet/PodcastListFragment.java +++ b/app/src/main/java/de/danoeh/antennapod/fragment/gpodnet/PodcastListFragment.java @@ -27,10 +27,11 @@ import de.danoeh.antennapod.R; import de.danoeh.antennapod.activity.MainActivity; import de.danoeh.antennapod.activity.OnlineFeedViewActivity; import de.danoeh.antennapod.adapter.gpodnet.PodcastListAdapter; -import de.danoeh.antennapod.core.gpoddernet.GpodnetService; -import de.danoeh.antennapod.core.gpoddernet.GpodnetServiceException; -import de.danoeh.antennapod.core.gpoddernet.model.GpodnetPodcast; -import de.danoeh.antennapod.menuhandler.MenuItemUtils; +import de.danoeh.antennapod.core.preferences.GpodnetPreferences; +import de.danoeh.antennapod.core.service.download.AntennapodHttpClient; +import de.danoeh.antennapod.core.sync.gpoddernet.GpodnetService; +import de.danoeh.antennapod.core.sync.gpoddernet.GpodnetServiceException; +import de.danoeh.antennapod.core.sync.gpoddernet.model.GpodnetPodcast; /** * Displays a list of GPodnetPodcast-Objects in a GridView @@ -117,16 +118,12 @@ public abstract class PodcastListFragment extends Fragment { protected List<GpodnetPodcast> doInBackground(Void... params) { GpodnetService service = null; try { - service = new GpodnetService(); + service = new GpodnetService(AntennapodHttpClient.getHttpClient(), GpodnetPreferences.getHostname()); return loadPodcastData(service); } catch (GpodnetServiceException e) { exception = e; e.printStackTrace(); return null; - } finally { - if (service != null) { - service.shutdown(); - } } } diff --git a/app/src/main/java/de/danoeh/antennapod/fragment/gpodnet/PodcastTopListFragment.java b/app/src/main/java/de/danoeh/antennapod/fragment/gpodnet/PodcastTopListFragment.java index 4f963756c..64261493d 100644 --- a/app/src/main/java/de/danoeh/antennapod/fragment/gpodnet/PodcastTopListFragment.java +++ b/app/src/main/java/de/danoeh/antennapod/fragment/gpodnet/PodcastTopListFragment.java @@ -1,16 +1,12 @@ package de.danoeh.antennapod.fragment.gpodnet; -import java.util.List; +import de.danoeh.antennapod.core.sync.gpoddernet.GpodnetService; +import de.danoeh.antennapod.core.sync.gpoddernet.GpodnetServiceException; +import de.danoeh.antennapod.core.sync.gpoddernet.model.GpodnetPodcast; -import de.danoeh.antennapod.core.gpoddernet.GpodnetService; -import de.danoeh.antennapod.core.gpoddernet.GpodnetServiceException; -import de.danoeh.antennapod.core.gpoddernet.model.GpodnetPodcast; +import java.util.List; -/** - * - */ public class PodcastTopListFragment extends PodcastListFragment { - private static final String TAG = "PodcastTopListFragment"; private static final int PODCAST_COUNT = 50; @Override diff --git a/app/src/main/java/de/danoeh/antennapod/fragment/gpodnet/SearchListFragment.java b/app/src/main/java/de/danoeh/antennapod/fragment/gpodnet/SearchListFragment.java index ffe69aa9a..80f1a6ae0 100644 --- a/app/src/main/java/de/danoeh/antennapod/fragment/gpodnet/SearchListFragment.java +++ b/app/src/main/java/de/danoeh/antennapod/fragment/gpodnet/SearchListFragment.java @@ -7,15 +7,14 @@ import android.view.Menu; import android.view.MenuInflater; import android.view.MenuItem; +import de.danoeh.antennapod.core.sync.gpoddernet.GpodnetService; +import de.danoeh.antennapod.core.sync.gpoddernet.GpodnetServiceException; +import de.danoeh.antennapod.core.sync.gpoddernet.model.GpodnetPodcast; import org.apache.commons.lang3.Validate; -import java.util.List; - import de.danoeh.antennapod.R; -import de.danoeh.antennapod.core.gpoddernet.GpodnetService; -import de.danoeh.antennapod.core.gpoddernet.GpodnetServiceException; -import de.danoeh.antennapod.core.gpoddernet.model.GpodnetPodcast; -import de.danoeh.antennapod.menuhandler.MenuItemUtils; + +import java.util.List; /** * Performs a search on the gpodder.net directory and displays the results. diff --git a/app/src/main/java/de/danoeh/antennapod/fragment/gpodnet/SuggestionListFragment.java b/app/src/main/java/de/danoeh/antennapod/fragment/gpodnet/SuggestionListFragment.java index 1b1b61efb..41b99cdfc 100644 --- a/app/src/main/java/de/danoeh/antennapod/fragment/gpodnet/SuggestionListFragment.java +++ b/app/src/main/java/de/danoeh/antennapod/fragment/gpodnet/SuggestionListFragment.java @@ -3,10 +3,10 @@ package de.danoeh.antennapod.fragment.gpodnet; import java.util.Collections; import java.util.List; -import de.danoeh.antennapod.core.gpoddernet.GpodnetService; -import de.danoeh.antennapod.core.gpoddernet.GpodnetServiceException; -import de.danoeh.antennapod.core.gpoddernet.model.GpodnetPodcast; import de.danoeh.antennapod.core.preferences.GpodnetPreferences; +import de.danoeh.antennapod.core.sync.gpoddernet.GpodnetService; +import de.danoeh.antennapod.core.sync.gpoddernet.GpodnetServiceException; +import de.danoeh.antennapod.core.sync.gpoddernet.model.GpodnetPodcast; /** * Displays suggestions from gpodder.net diff --git a/app/src/main/java/de/danoeh/antennapod/fragment/gpodnet/TagFragment.java b/app/src/main/java/de/danoeh/antennapod/fragment/gpodnet/TagFragment.java index 92cd4ca84..0ce38656a 100644 --- a/app/src/main/java/de/danoeh/antennapod/fragment/gpodnet/TagFragment.java +++ b/app/src/main/java/de/danoeh/antennapod/fragment/gpodnet/TagFragment.java @@ -3,15 +3,15 @@ package de.danoeh.antennapod.fragment.gpodnet; import android.os.Bundle; import androidx.annotation.Nullable; +import de.danoeh.antennapod.core.sync.gpoddernet.GpodnetService; +import de.danoeh.antennapod.core.sync.gpoddernet.GpodnetServiceException; +import de.danoeh.antennapod.core.sync.gpoddernet.model.GpodnetPodcast; +import de.danoeh.antennapod.core.sync.gpoddernet.model.GpodnetTag; import org.apache.commons.lang3.Validate; -import java.util.List; - import de.danoeh.antennapod.activity.MainActivity; -import de.danoeh.antennapod.core.gpoddernet.GpodnetService; -import de.danoeh.antennapod.core.gpoddernet.GpodnetServiceException; -import de.danoeh.antennapod.core.gpoddernet.model.GpodnetPodcast; -import de.danoeh.antennapod.core.gpoddernet.model.GpodnetTag; + +import java.util.List; /** * Shows all podcasts from gpodder.net that belong to a specific tag. diff --git a/app/src/main/java/de/danoeh/antennapod/fragment/gpodnet/TagListFragment.java b/app/src/main/java/de/danoeh/antennapod/fragment/gpodnet/TagListFragment.java index a8b6c2976..613218a91 100644 --- a/app/src/main/java/de/danoeh/antennapod/fragment/gpodnet/TagListFragment.java +++ b/app/src/main/java/de/danoeh/antennapod/fragment/gpodnet/TagListFragment.java @@ -13,15 +13,16 @@ import android.view.MenuItem; import android.view.View; import android.widget.TextView; -import java.util.List; - import de.danoeh.antennapod.R; import de.danoeh.antennapod.activity.MainActivity; import de.danoeh.antennapod.adapter.gpodnet.TagListAdapter; -import de.danoeh.antennapod.core.gpoddernet.GpodnetService; -import de.danoeh.antennapod.core.gpoddernet.GpodnetServiceException; -import de.danoeh.antennapod.core.gpoddernet.model.GpodnetTag; -import de.danoeh.antennapod.menuhandler.MenuItemUtils; +import de.danoeh.antennapod.core.preferences.GpodnetPreferences; +import de.danoeh.antennapod.core.service.download.AntennapodHttpClient; +import de.danoeh.antennapod.core.sync.gpoddernet.GpodnetService; +import de.danoeh.antennapod.core.sync.gpoddernet.GpodnetServiceException; +import de.danoeh.antennapod.core.sync.gpoddernet.model.GpodnetTag; + +import java.util.List; public class TagListFragment extends ListFragment { private static final int COUNT = 50; @@ -91,15 +92,13 @@ public class TagListFragment extends ListFragment { @Override protected List<GpodnetTag> doInBackground(Void... params) { - GpodnetService service = new GpodnetService(); + GpodnetService service = new GpodnetService(AntennapodHttpClient.getHttpClient(), GpodnetPreferences.getHostname()); try { return service.getTopTags(COUNT); } catch (GpodnetServiceException e) { e.printStackTrace(); exception = e; return null; - } finally { - service.shutdown(); } } diff --git a/app/src/main/java/de/danoeh/antennapod/fragment/preferences/GpodderPreferencesFragment.java b/app/src/main/java/de/danoeh/antennapod/fragment/preferences/GpodderPreferencesFragment.java index 271b31fad..5b622b5c8 100644 --- a/app/src/main/java/de/danoeh/antennapod/fragment/preferences/GpodderPreferencesFragment.java +++ b/app/src/main/java/de/danoeh/antennapod/fragment/preferences/GpodderPreferencesFragment.java @@ -11,7 +11,7 @@ import android.widget.Toast; import de.danoeh.antennapod.R; import de.danoeh.antennapod.activity.PreferenceActivity; import de.danoeh.antennapod.core.preferences.GpodnetPreferences; -import de.danoeh.antennapod.core.service.GpodnetSyncService; +import de.danoeh.antennapod.core.sync.SyncService; import de.danoeh.antennapod.dialog.AuthenticationDialog; import de.danoeh.antennapod.dialog.GpodnetSetHostnameDialog; @@ -51,10 +51,10 @@ public class GpodderPreferencesFragment extends PreferenceFragmentCompat { private final SharedPreferences.OnSharedPreferenceChangeListener gpoddernetListener = (sharedPreferences, key) -> { - if (GpodnetPreferences.PREF_LAST_SYNC_ATTEMPT_TIMESTAMP.equals(key)) { - updateLastGpodnetSyncReport(GpodnetPreferences.getLastSyncAttemptResult(), - GpodnetPreferences.getLastSyncAttemptTimestamp()); - } + //if (GpodnetPreferences.PREF_LAST_SYNC_ATTEMPT_TIMESTAMP.equals(key)) { + // updateLastGpodnetSyncReport(GpodnetPreferences.getLastSyncAttemptResult(), + // GpodnetPreferences.getLastSyncAttemptTimestamp()); + //} }; private void setupGpodderScreen() { @@ -75,21 +75,13 @@ public class GpodderPreferencesFragment extends PreferenceFragmentCompat { return true; }); findPreference(PREF_GPODNET_SYNC).setOnPreferenceClickListener(preference -> { - GpodnetSyncService.sendSyncIntent(getActivity().getApplicationContext()); - Toast toast = Toast.makeText(getActivity(), R.string.pref_gpodnet_sync_started, - Toast.LENGTH_SHORT); - toast.show(); + SyncService.sync(getActivity().getApplicationContext()); + Toast.makeText(getActivity(), R.string.pref_gpodnet_sync_started, Toast.LENGTH_SHORT).show(); return true; }); findPreference(PREF_GPODNET_FORCE_FULL_SYNC).setOnPreferenceClickListener(preference -> { - GpodnetPreferences.setLastSubscriptionSyncTimestamp(0L); - GpodnetPreferences.setLastEpisodeActionsSyncTimestamp(0L); - GpodnetPreferences.setLastSyncAttempt(false, 0); - updateLastGpodnetSyncReport(false, 0); - GpodnetSyncService.sendSyncIntent(getActivity().getApplicationContext()); - Toast toast = Toast.makeText(getActivity(), R.string.pref_gpodnet_sync_started, - Toast.LENGTH_SHORT); - toast.show(); + SyncService.fullSync(getContext()); + Toast.makeText(getActivity(), R.string.pref_gpodnet_sync_started, Toast.LENGTH_SHORT).show(); return true; }); findPreference(PREF_GPODNET_LOGOUT).setOnPreferenceClickListener(preference -> { @@ -119,8 +111,8 @@ public class GpodderPreferencesFragment extends PreferenceFragmentCompat { String summary = String.format(format, GpodnetPreferences.getUsername(), GpodnetPreferences.getDeviceID()); findPreference(PREF_GPODNET_LOGOUT).setSummary(Html.fromHtml(summary)); - updateLastGpodnetSyncReport(GpodnetPreferences.getLastSyncAttemptResult(), - GpodnetPreferences.getLastSyncAttemptTimestamp()); + //updateLastGpodnetSyncReport(GpodnetPreferences.getLastSyncAttemptResult(), + // GpodnetPreferences.getLastSyncAttemptTimestamp()); } else { findPreference(PREF_GPODNET_LOGOUT).setSummary(null); updateLastGpodnetSyncReport(false, 0); diff --git a/app/src/main/java/de/danoeh/antennapod/menuhandler/FeedItemMenuHandler.java b/app/src/main/java/de/danoeh/antennapod/menuhandler/FeedItemMenuHandler.java index edd594385..c9c7b6190 100644 --- a/app/src/main/java/de/danoeh/antennapod/menuhandler/FeedItemMenuHandler.java +++ b/app/src/main/java/de/danoeh/antennapod/menuhandler/FeedItemMenuHandler.java @@ -12,13 +12,13 @@ import android.view.MenuItem; import de.danoeh.antennapod.R; import de.danoeh.antennapod.core.feed.FeedItem; import de.danoeh.antennapod.core.feed.FeedMedia; -import de.danoeh.antennapod.core.gpoddernet.model.GpodnetEpisodeAction; -import de.danoeh.antennapod.core.gpoddernet.model.GpodnetEpisodeAction.Action; import de.danoeh.antennapod.core.preferences.GpodnetPreferences; import de.danoeh.antennapod.core.preferences.PlaybackPreferences; import de.danoeh.antennapod.core.preferences.UserPreferences; import de.danoeh.antennapod.core.service.playback.PlaybackService; import de.danoeh.antennapod.core.storage.DBWriter; +import de.danoeh.antennapod.core.sync.SyncService; +import de.danoeh.antennapod.core.sync.model.EpisodeAction; import de.danoeh.antennapod.core.util.FeedItemUtil; import de.danoeh.antennapod.core.util.IntentUtils; import de.danoeh.antennapod.core.util.ShareUtils; @@ -191,14 +191,13 @@ public class FeedItemMenuHandler { FeedMedia media = selectedItem.getMedia(); // not all items have media, Gpodder only cares about those that do if (media != null) { - GpodnetEpisodeAction actionPlay = new GpodnetEpisodeAction.Builder(selectedItem, Action.PLAY) - .currentDeviceId() + EpisodeAction actionPlay = new EpisodeAction.Builder(selectedItem, EpisodeAction.PLAY) .currentTimestamp() .started(media.getDuration() / 1000) .position(media.getDuration() / 1000) .total(media.getDuration() / 1000) .build(); - GpodnetPreferences.enqueueEpisodeAction(actionPlay); + SyncService.enqueueEpisodeAction(context, actionPlay); } } break; @@ -206,11 +205,10 @@ public class FeedItemMenuHandler { selectedItem.setPlayed(false); DBWriter.markItemPlayed(selectedItem, FeedItem.UNPLAYED, false); if (GpodnetPreferences.loggedIn() && selectedItem.getMedia() != null) { - GpodnetEpisodeAction actionNew = new GpodnetEpisodeAction.Builder(selectedItem, Action.NEW) - .currentDeviceId() + EpisodeAction actionNew = new EpisodeAction.Builder(selectedItem, EpisodeAction.NEW) .currentTimestamp() .build(); - GpodnetPreferences.enqueueEpisodeAction(actionNew); + SyncService.enqueueEpisodeAction(context, actionNew); } break; case R.id.add_to_queue_item: |