package threadHandles;
import java.io.IOException;
import java.io.InputStream;
import java.io.InputStreamReader;
import java.net.HttpURLConnection;
import java.net.URL;
import com.google.gson.JsonElement;
import com.google.gson.JsonObject;
import com.google.gson.JsonParser;
import com.google.gson.JsonPrimitive;
import jaco.mp3.player.MP3Player;
import javazoom.jl.decoder.JavaLayerException;
public class SongControl extends Thread {
static MP3Player mp3player;
String song;
public SongControl(MP3Player mp3player, String song) {
SongControl.mp3player = mp3player;
this.song = song;
}
@Override
public void run() {
try {
final URL DOWNLOAD_URL = new URL("http://pleer.com/site_api/files/get_url?action=download&id=" + song);
HttpURLConnection request = (HttpURLConnection) DOWNLOAD_URL.openConnection();
request.setRequestProperty("User-Agent", "Mozilla/5.0 (Windows; U; Windows NT 6.1; en-GB; rv:1.9.2.13) Gecko/20101203 Firefox/3.6.13 (.NET CLR 3.5.30729)");
request.connect();
JsonParser jp = new JsonParser();
JsonElement root = jp.parse(new InputStreamReader((InputStream) request.getContent()));
JsonObject rootobj = root.getAsJsonObject();
JsonPrimitive songLink = rootobj.getAsJsonPrimitive("track_link");
mp3player = new MP3Player(new URL(songLink.getAsString()));
mp3player.play();
} catch (IOException e) {
e.printStackTrace();
}
}
public static void pauseSong() {
mp3player.pause();
}
public static void resumeSong() throws JavaLayerException {
mp3player.play();
}
public static void stopSong() {
mp3player.stop();
}
}