Skip to content

Instantly share code, notes, and snippets.

@danvass
Created September 2, 2015 22:13
Show Gist options
  • Save danvass/4cf3c075395b0c69b29a to your computer and use it in GitHub Desktop.
Save danvass/4cf3c075395b0c69b29a to your computer and use it in GitHub Desktop.
public class ConverterPlugin implements PlayerHaterPlugin {
private Context context;
private PlayerHater playerHater;
private MyApp myapp;
@Override
public void onPlayerHaterLoaded(Context context, PlayerHater playerHater) {
// TODO convert first three songs
this.context = context;
this.playerHater = playerHater;
myapp = (MyApp) context.getApplicationContext();
}
@Override
public void onSongChanged(Song song) {
}
@Override
public void onSongFinished(Song song, int i) {
}
@Override
public void onDurationChanged(int i) {
}
@Override
public void onAudioLoading() {
}
@Override
public void onAudioPaused() {
}
@Override
public void onAudioResumed() {
}
@Override
public void onAudioStarted() {
RedditSong songToConvert = myapp.getPlayerQueue().get(playerHater.getQueuePosition() - 1);
String url = stripUrl(songToConvert.getSourceUrl().toString());
if (url != null) {
Intent initiateConversion = new Intent(context, InitiateConversionService.class);
initiateConversion.putExtra(context.getString(R.string.conversion_url_extra), url);
initiateConversion.putExtra(context.getString(R.string.song_extra), songToConvert);
context.startService(initiateConversion);
playerHater.enqueue(songToConvert);
}
}
@Override
public void onAudioStopped() {
}
@Override
public void onTitleChanged(String s) {
}
@Override
public void onArtistChanged(String s) {
}
@Override
public void onAlbumArtChanged(Uri uri) {
}
@Override
public void onNextSongAvailable(Song song) {
}
@Override
public void onNextSongUnavailable() {
}
@Override
public void onTransportControlFlagsChanged(int i) {
}
@Override
public void onPendingIntentChanged(PendingIntent pendingIntent) {
}
@Override
public void onChangesComplete() {
}
@Override
public void onAlbumTitleChanged(String s) {
}
@Override
public void onPlayerHaterShutdown() {
}
private String stripUrl(String data) {
if (data.contains("http://")) {
return data.substring(data.indexOf("http://"));
} else if (data.contains("https://")) {
return data.substring(data.indexOf("https://"));
}
return null;
}
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment