use of com.naman14.timber.models.Album in project Timber by naman14.
the class ArtistSongLoader method getSongsForArtist.
public static ArrayList<Song> getSongsForArtist(Context context, long artistID) {
Cursor cursor = makeArtistSongCursor(context, artistID);
ArrayList songsList = new ArrayList();
if ((cursor != null) && (cursor.moveToFirst()))
do {
long id = cursor.getLong(0);
String title = cursor.getString(1);
String artist = cursor.getString(2);
String album = cursor.getString(3);
int duration = cursor.getInt(4);
int trackNumber = cursor.getInt(5);
long albumId = cursor.getInt(6);
long artistId = artistID;
songsList.add(new Song(id, albumId, artistID, title, artist, album, duration, trackNumber));
} while (cursor.moveToNext());
if (cursor != null)
cursor.close();
return songsList;
}
use of com.naman14.timber.models.Album in project Timber by naman14.
the class PlaylistSongLoader method getSongsInPlaylist.
public static List<Song> getSongsInPlaylist(Context mContext, long playlistID) {
ArrayList<Song> mSongList = new ArrayList<>();
context = mContext;
mPlaylistID = playlistID;
final int playlistCount = countPlaylist(context, mPlaylistID);
mCursor = makePlaylistSongCursor(context, mPlaylistID);
if (mCursor != null) {
boolean runCleanup = false;
if (mCursor.getCount() != playlistCount) {
runCleanup = true;
}
if (!runCleanup && mCursor.moveToFirst()) {
final int playOrderCol = mCursor.getColumnIndexOrThrow(Playlists.Members.PLAY_ORDER);
int lastPlayOrder = -1;
do {
int playOrder = mCursor.getInt(playOrderCol);
if (playOrder == lastPlayOrder) {
runCleanup = true;
break;
}
lastPlayOrder = playOrder;
} while (mCursor.moveToNext());
}
if (runCleanup) {
cleanupPlaylist(context, mPlaylistID, mCursor);
mCursor.close();
mCursor = makePlaylistSongCursor(context, mPlaylistID);
if (mCursor != null) {
}
}
}
if (mCursor != null && mCursor.moveToFirst()) {
do {
final long id = mCursor.getLong(mCursor.getColumnIndexOrThrow(MediaStore.Audio.Playlists.Members.AUDIO_ID));
final String songName = mCursor.getString(mCursor.getColumnIndexOrThrow(AudioColumns.TITLE));
final String artist = mCursor.getString(mCursor.getColumnIndexOrThrow(AudioColumns.ARTIST));
final long albumId = mCursor.getLong(mCursor.getColumnIndexOrThrow(AudioColumns.ALBUM_ID));
final long artistId = mCursor.getLong(mCursor.getColumnIndexOrThrow(AudioColumns.ARTIST_ID));
final String album = mCursor.getString(mCursor.getColumnIndexOrThrow(AudioColumns.ALBUM));
final long duration = mCursor.getLong(mCursor.getColumnIndexOrThrow(AudioColumns.DURATION));
final int durationInSecs = (int) duration / 1000;
final int tracknumber = mCursor.getInt(mCursor.getColumnIndexOrThrow(AudioColumns.TRACK));
final Song song = new Song(id, albumId, artistId, songName, artist, album, durationInSecs, tracknumber);
mSongList.add(song);
} while (mCursor.moveToNext());
}
// Close the cursor
if (mCursor != null) {
mCursor.close();
mCursor = null;
}
return mSongList;
}
Aggregations