use of de.danoeh.antennapod.model.feed.Feed in project AntennaPod by AntennaPod.
the class RemoteMedia method equals.
@Override
public boolean equals(Object other) {
if (other instanceof RemoteMedia) {
RemoteMedia rm = (RemoteMedia) other;
return TextUtils.equals(downloadUrl, rm.downloadUrl) && TextUtils.equals(feedUrl, rm.feedUrl) && TextUtils.equals(itemIdentifier, rm.itemIdentifier);
}
if (other instanceof FeedMedia) {
FeedMedia fm = (FeedMedia) other;
if (!TextUtils.equals(downloadUrl, fm.getStreamUrl())) {
return false;
}
FeedItem fi = fm.getItem();
if (fi == null || !TextUtils.equals(itemIdentifier, fi.getItemIdentifier())) {
return false;
}
Feed feed = fi.getFeed();
return feed != null && TextUtils.equals(feedUrl, feed.getDownload_url());
}
return false;
}
use of de.danoeh.antennapod.model.feed.Feed in project AntennaPod by AntennaPod.
the class FeedItemUtilTest method createFeedItem.
private static FeedItem createFeedItem(String feedLink, String itemLink) {
Feed feed = new Feed();
feed.setLink(feedLink);
FeedItem feedItem = new FeedItem();
feedItem.setLink(itemLink);
feedItem.setFeed(feed);
feed.setItems(Collections.singletonList(feedItem));
return feedItem;
}
use of de.danoeh.antennapod.model.feed.Feed in project AntennaPod by AntennaPod.
the class FeedItemPermutorsTest method getTestList.
/**
* Generates a list with test data.
*/
private List<FeedItem> getTestList() {
List<FeedItem> itemList = new ArrayList<>();
Calendar calendar = Calendar.getInstance();
// January 1st
calendar.set(2019, 0, 1);
Feed feed1 = new Feed(null, null, "Feed title 1");
FeedItem feedItem1 = new FeedItem(1, "Title 1", null, null, calendar.getTime(), 0, feed1);
FeedMedia feedMedia1 = new FeedMedia(0, feedItem1, 1000, 0, 0, null, null, null, true, null, 0, 0);
feedItem1.setMedia(feedMedia1);
itemList.add(feedItem1);
// March 1st
calendar.set(2019, 2, 1);
Feed feed2 = new Feed(null, null, "Feed title 3");
FeedItem feedItem2 = new FeedItem(3, "Title 3", null, null, calendar.getTime(), 0, feed2);
FeedMedia feedMedia2 = new FeedMedia(0, feedItem2, 3000, 0, 0, null, null, null, true, null, 0, 0);
feedItem2.setMedia(feedMedia2);
itemList.add(feedItem2);
// February 1st
calendar.set(2019, 1, 1);
Feed feed3 = new Feed(null, null, "Feed title 2");
FeedItem feedItem3 = new FeedItem(2, "Title 2", null, null, calendar.getTime(), 0, feed3);
FeedMedia feedMedia3 = new FeedMedia(0, feedItem3, 2000, 0, 0, null, null, null, true, null, 0, 0);
feedItem3.setMedia(feedMedia3);
itemList.add(feedItem3);
return itemList;
}
use of de.danoeh.antennapod.model.feed.Feed in project AntennaPod by AntennaPod.
the class RemoveFeedDialog method showDialog.
private static void showDialog(Context context, List<Feed> feeds, String message) {
ConfirmationDialog dialog = new ConfirmationDialog(context, R.string.remove_feed_label, message) {
@Override
public void onConfirmButtonPressed(DialogInterface clickedDialog) {
clickedDialog.dismiss();
ProgressDialog progressDialog = new ProgressDialog(context);
progressDialog.setMessage(context.getString(R.string.feed_remover_msg));
progressDialog.setIndeterminate(true);
progressDialog.setCancelable(false);
progressDialog.show();
Completable.fromAction(() -> {
for (Feed feed : feeds) {
DBWriter.deleteFeed(context, feed.getId()).get();
}
}).subscribeOn(Schedulers.io()).observeOn(AndroidSchedulers.mainThread()).subscribe(() -> {
Log.d(TAG, "Feed(s) deleted");
progressDialog.dismiss();
}, error -> {
Log.e(TAG, Log.getStackTraceString(error));
progressDialog.dismiss();
});
}
};
dialog.createNewDialog().show();
}
use of de.danoeh.antennapod.model.feed.Feed in project AntennaPod by AntennaPod.
the class RenameItemDialog method show.
public void show() {
Activity activity = activityRef.get();
if (activity == null) {
return;
}
View content = View.inflate(activity, R.layout.edit_text_dialog, null);
EditTextDialogBinding alertViewBinding = EditTextDialogBinding.bind(content);
String title = feed != null ? feed.getTitle() : drawerItem.getTitle();
alertViewBinding.urlEditText.setText(title);
AlertDialog dialog = new AlertDialog.Builder(activity).setView(content).setTitle(feed != null ? R.string.rename_feed_label : R.string.rename_tag_label).setPositiveButton(android.R.string.ok, (d, input) -> {
String newTitle = alertViewBinding.urlEditText.getText().toString();
if (feed != null) {
feed.setCustomTitle(newTitle);
DBWriter.setFeedCustomTitle(feed);
} else {
renameTag(newTitle);
}
}).setNeutralButton(de.danoeh.antennapod.core.R.string.reset, null).setNegativeButton(de.danoeh.antennapod.core.R.string.cancel_label, null).show();
// To prevent cancelling the dialog on button click
dialog.getButton(AlertDialog.BUTTON_NEUTRAL).setOnClickListener((view) -> alertViewBinding.urlEditText.setText(title));
}
Aggregations