Skip to content

Commit 9ecef6f

Browse files
committed
Add abstract methods in PlaylistLocalItem & rename setIsModified
1 parent ba394a7 commit 9ecef6f

9 files changed

Lines changed: 38 additions & 23 deletions

File tree

app/src/main/java/org/schabi/newpipe/database/playlist/PlaylistLocalItem.java

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -13,6 +13,10 @@ public interface PlaylistLocalItem extends LocalItem {
1313

1414
long getDisplayIndex();
1515

16+
long getUid();
17+
18+
void setDisplayIndex(long displayIndex);
19+
1620
/**
1721
* Merge localPlaylists and remotePlaylists by the display index.
1822
* If two items have the same display index, sort them in {@code CASE_INSENSITIVE_ORDER}.

app/src/main/java/org/schabi/newpipe/database/playlist/PlaylistMetadataEntry.java

Lines changed: 12 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -11,13 +11,13 @@ public class PlaylistMetadataEntry implements PlaylistLocalItem {
1111
public static final String PLAYLIST_STREAM_COUNT = "streamCount";
1212

1313
@ColumnInfo(name = PLAYLIST_ID)
14-
public final long uid;
14+
private final long uid;
1515
@ColumnInfo(name = PLAYLIST_NAME)
1616
public final String name;
1717
@ColumnInfo(name = PLAYLIST_THUMBNAIL_URL)
1818
public final String thumbnailUrl;
1919
@ColumnInfo(name = PLAYLIST_DISPLAY_INDEX)
20-
public long displayIndex;
20+
private long displayIndex;
2121
@ColumnInfo(name = PLAYLIST_STREAM_COUNT)
2222
public final long streamCount;
2323

@@ -44,4 +44,14 @@ public String getOrderingName() {
4444
public long getDisplayIndex() {
4545
return displayIndex;
4646
}
47+
48+
@Override
49+
public long getUid() {
50+
return uid;
51+
}
52+
53+
@Override
54+
public void setDisplayIndex(final long displayIndex) {
55+
this.displayIndex = displayIndex;
56+
}
4757
}

app/src/main/java/org/schabi/newpipe/database/playlist/model/PlaylistEntity.java

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -41,10 +41,10 @@ public PlaylistEntity(final String name, final String thumbnailUrl, final long d
4141

4242
@Ignore
4343
public PlaylistEntity(final PlaylistMetadataEntry item) {
44-
this.uid = item.uid;
44+
this.uid = item.getUid();
4545
this.name = item.name;
4646
this.thumbnailUrl = item.thumbnailUrl;
47-
this.displayIndex = item.displayIndex;
47+
this.displayIndex = item.getDisplayIndex();
4848
}
4949

5050
public long getUid() {

app/src/main/java/org/schabi/newpipe/database/playlist/model/PlaylistRemoteEntity.java

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -105,6 +105,7 @@ && getStreamCount() == info.getStreamCount()
105105
&& TextUtils.equals(getUploader(), info.getUploaderName());
106106
}
107107

108+
@Override
108109
public long getUid() {
109110
return uid;
110111
}
@@ -158,6 +159,7 @@ public long getDisplayIndex() {
158159
return displayIndex;
159160
}
160161

162+
@Override
161163
public void setDisplayIndex(final long displayIndex) {
162164
this.displayIndex = displayIndex;
163165
}

app/src/main/java/org/schabi/newpipe/local/bookmark/BookmarkFragment.java

Lines changed: 11 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -139,7 +139,7 @@ public void selected(final LocalItem selectedItem) {
139139

140140
if (selectedItem instanceof PlaylistMetadataEntry) {
141141
final PlaylistMetadataEntry entry = ((PlaylistMetadataEntry) selectedItem);
142-
NavigationHelper.openLocalPlaylistFragment(fragmentManager, entry.uid,
142+
NavigationHelper.openLocalPlaylistFragment(fragmentManager, entry.getUid(),
143143
entry.name);
144144

145145
} else if (selectedItem instanceof PlaylistRemoteEntity) {
@@ -181,7 +181,7 @@ public void startLoading(final boolean forceLoad) {
181181

182182
if (debounceSaver != null) {
183183
disposables.add(debounceSaver.getDebouncedSaver());
184-
debounceSaver.setIsModified(false);
184+
debounceSaver.setNoChangesToSave();
185185
}
186186
isLoadingComplete.set(false);
187187

@@ -371,16 +371,15 @@ private void checkDisplayIndexModified(@NonNull final List<PlaylistLocalItem> re
371371
// Save the index read from the database.
372372
if (item instanceof PlaylistMetadataEntry) {
373373

374-
displayIndexInDatabase.put(new Pair<>(((PlaylistMetadataEntry) item).uid,
374+
displayIndexInDatabase.put(new Pair<>(item.getUid(),
375375
LocalItem.LocalItemType.PLAYLIST_LOCAL_ITEM), item.getDisplayIndex());
376-
((PlaylistMetadataEntry) item).displayIndex = i;
376+
item.setDisplayIndex(i);
377377

378378
} else if (item instanceof PlaylistRemoteEntity) {
379379

380-
displayIndexInDatabase.put(new Pair<>(((PlaylistRemoteEntity) item).getUid(),
381-
LocalItem.LocalItemType.PLAYLIST_REMOTE_ITEM),
382-
item.getDisplayIndex());
383-
((PlaylistRemoteEntity) item).setDisplayIndex(i);
380+
displayIndexInDatabase.put(new Pair<>(item.getUid(),
381+
LocalItem.LocalItemType.PLAYLIST_REMOTE_ITEM), item.getDisplayIndex());
382+
item.setDisplayIndex(i);
384383

385384
}
386385
}
@@ -415,9 +414,9 @@ public void saveImmediate() {
415414
final LocalItem item = items.get(i);
416415

417416
if (item instanceof PlaylistMetadataEntry) {
418-
((PlaylistMetadataEntry) item).displayIndex = i;
417+
((PlaylistMetadataEntry) item).setDisplayIndex(i);
419418

420-
final Long uid = ((PlaylistMetadataEntry) item).uid;
419+
final Long uid = ((PlaylistMetadataEntry) item).getUid();
421420
final Pair<Long, LocalItem.LocalItemType> key = new Pair<>(uid,
422421
LocalItem.LocalItemType.PLAYLIST_LOCAL_ITEM);
423422
final Long databaseIndex = displayIndexInDatabase.remove(key);
@@ -463,7 +462,7 @@ public void saveImmediate() {
463462
.observeOn(AndroidSchedulers.mainThread())
464463
.subscribe(() -> {
465464
if (debounceSaver != null) {
466-
debounceSaver.setIsModified(false);
465+
debounceSaver.setNoChangesToSave();
467466
}
468467
},
469468
throwable -> showError(new ErrorInfo(throwable,
@@ -563,7 +562,7 @@ private void showLocalDialog(final PlaylistMetadataEntry selectedItem) {
563562
builder.setView(dialogBinding.getRoot())
564563
.setPositiveButton(R.string.rename_playlist, (dialog, which) ->
565564
changeLocalPlaylistName(
566-
selectedItem.uid,
565+
selectedItem.getUid(),
567566
dialogBinding.dialogEditText.getText().toString()))
568567
.setNegativeButton(R.string.cancel, null)
569568
.setNeutralButton(R.string.delete, (dialog, which) -> {

app/src/main/java/org/schabi/newpipe/local/dialog/PlaylistAppendDialog.java

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -147,12 +147,12 @@ private void onPlaylistSelected(@NonNull final LocalPlaylistManager manager,
147147

148148
if (playlist.thumbnailUrl.equals("drawable://" + R.drawable.dummy_thumbnail_playlist)) {
149149
playlistDisposables.add(manager
150-
.changePlaylistThumbnail(playlist.uid, streams.get(0).getThumbnailUrl())
150+
.changePlaylistThumbnail(playlist.getUid(), streams.get(0).getThumbnailUrl())
151151
.observeOn(AndroidSchedulers.mainThread())
152152
.subscribe(ignored -> successToast.show()));
153153
}
154154

155-
playlistDisposables.add(manager.appendToPlaylist(playlist.uid, streams)
155+
playlistDisposables.add(manager.appendToPlaylist(playlist.getUid(), streams)
156156
.observeOn(AndroidSchedulers.mainThread())
157157
.subscribe(ignored -> successToast.show()));
158158

app/src/main/java/org/schabi/newpipe/local/playlist/LocalPlaylistFragment.java

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -221,7 +221,7 @@ public void startLoading(final boolean forceLoad) {
221221

222222
if (debounceSaver != null) {
223223
disposables.add(debounceSaver.getDebouncedSaver());
224-
debounceSaver.setIsModified(false);
224+
debounceSaver.setNoChangesToSave();
225225
}
226226

227227
isLoadingComplete.set(false);
@@ -644,7 +644,7 @@ public void saveImmediate() {
644644
.subscribe(
645645
() -> {
646646
if (debounceSaver != null) {
647-
debounceSaver.setIsModified(false);
647+
debounceSaver.setNoChangesToSave();
648648
}
649649
},
650650
throwable -> showError(new ErrorInfo(throwable,

app/src/main/java/org/schabi/newpipe/settings/SelectPlaylistFragment.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -118,7 +118,7 @@ private void clickedItem(final int position) {
118118

119119
if (selectedItem instanceof PlaylistMetadataEntry) {
120120
final PlaylistMetadataEntry entry = ((PlaylistMetadataEntry) selectedItem);
121-
onSelectedListener.onLocalPlaylistSelected(entry.uid, entry.name);
121+
onSelectedListener.onLocalPlaylistSelected(entry.getUid(), entry.name);
122122

123123
} else if (selectedItem instanceof PlaylistRemoteEntity) {
124124
final PlaylistRemoteEntity entry = ((PlaylistRemoteEntity) selectedItem);

app/src/main/java/org/schabi/newpipe/util/debounce/DebounceSaver.java

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -53,8 +53,8 @@ public boolean getIsModified() {
5353
return isModified.get();
5454
}
5555

56-
public void setIsModified(final boolean isModified) {
57-
this.isModified.set(isModified);
56+
public void setNoChangesToSave() {
57+
isModified.set(false);
5858
}
5959

6060
public PublishSubject<Long> getDebouncedSaveSignal() {

0 commit comments

Comments
 (0)