package itunes.client.swing; import java.io.FileInputStream; import java.io.InputStream; import javax.swing.JOptionPane; import itunes.client.swing.ZPlayer; public class Player extends Thread { private javazoom.jl.player.Player p; private ZPlayer prog; public Player(ZPlayer prog, String fileName) { this.prog = prog; FileInputStream f=null; try { f = new FileInputStream(fileName); } catch (Exception e) { e.printStackTrace(); } newPlayer(f); } private void newPlayer(InputStream f) { if (p != null) this.stopMusic(); try{ p = new javazoom.jl.player.Player(f); } catch (Exception e) { e.printStackTrace(); } } public Player(ZPlayer prog, InputStream f) { this.prog = prog; newPlayer(f); } public void run() { try { p.play(); } catch (javazoom.jl.decoder.BitstreamException be) { JOptionPane.showMessageDialog(prog.frame,"Unsupported file format!\n"+be.getLocalizedMessage()); prog.stopPlaying(); }catch (Exception e) { e.printStackTrace(); prog.stopPlaying(); } if (p.isComplete()) { prog.playNext(1); } } public int getPosition() { return p.getPosition(); } public void stopMusic() { p.close(); } }