View Javadoc

1   package org.rpi.mpdplayer;
2   /**
3    * Used to abstract the differences between the different playes
4    * with MPD we keep the same instance all the time
5    */
6   
7   import java.util.Observable;
8   import java.util.Observer;
9   
10  import org.apache.log4j.Logger;
11  import org.rpi.player.IPlayerController;
12  import org.rpi.player.events.EventBase;
13  import org.rpi.playlist.CustomTrack;
14  
15  
16  public class MPDPlayerController extends Observable implements IPlayerController, Observer {
17  
18  	private static Logger log = Logger.getLogger(MPDPlayerController.class);
19  	private MPDPlayer mpdPlayer = null;
20  
21  	public MPDPlayerController() {
22  		mpdPlayer = new MPDPlayer();
23  		mpdPlayer.addObserver(this);
24  	}
25  
26  	@Override
27  	public void preLoadTrack(CustomTrack track) {
28  		mpdPlayer.preLoadTrack(track);
29  	}
30  
31  	@Override
32  	public void loaded() {
33  		// TODO Auto-generated method stub
34  	}
35  
36  	@Override
37  	public void openFile(CustomTrack track) {
38  		// TODO Auto-generated method stub
39  	}
40  
41  	@Override
42  	public void playThis(CustomTrack t, long v, boolean bMute) {
43  		mpdPlayer.playTrack(t, v, bMute);
44  	}
45  
46  	@Override
47  	public void pause(boolean bPause) {
48  		mpdPlayer.pause(bPause);
49  	}
50  
51  	@Override
52  	public void resume() {
53  		mpdPlayer.resume();
54  	}
55  
56  	@Override
57  	public void stop() {
58  		mpdPlayer.stop();
59  	}
60  
61  	@Override
62  	public void destroy() {
63  		mpdPlayer.destroy();
64  	}
65  
66  	@Override
67  	public void setMute(boolean mute) {
68  		mpdPlayer.setMute(mute);
69  	}
70  
71  	@Override
72  	public void setVolume(long volume) {
73  		mpdPlayer.setVolume(volume);
74  	}
75  
76  	@Override
77  	public void seekAbsolute(long seconds) {
78  		mpdPlayer.seekAbsolute(seconds);
79  	}
80  
81  	@Override
82  	public boolean isPlaying() {
83  		return mpdPlayer.isPlaying();
84  	}
85  
86  	@Override
87  	public boolean isActive() {
88  		return true;
89  	}
90  
91  	@Override
92  	public String getUniqueId() {
93  		return mpdPlayer.getUniqueId();
94  	}
95  
96  	@Override
97  	public void update(Observable arg0, Object obj) {
98  		EventBase e = (EventBase)obj;
99  		setChanged();
100 		notifyObservers(obj);
101 	}
102 }