1 //Create a class for music player
3 import Timer.SimulatedTimer
6 public class MusicPlayer {
9 private String displayName
13 private int trackNumber
14 private List trackData
16 MusicPlayer(String id, String label, String displayName, int level, String mute, String status, int trackNumber, List trackData) {
19 this.displayName = displayName
23 this.trackNumber = trackNumber
24 this.trackData = trackData
29 println("the music player with id:$id is muted!")
33 if (trackNumber != trackData.size()-1)
34 trackNumber = trackNumber+1
37 def trackPlaying = trackData[trackNumber]
38 println("the $trackPlaying is selected!")
39 this.status = "playing"
42 println("the music player with id:$id is paused!")
43 this.status = "paused"
46 println("the music player with id:$id is starting to play!")
47 this.status = "playing"
49 def playTrack(String trackToPlay) {
50 trackNumber = list.indexOf(trackToPlay)
51 def trackPlaying = trackData[trackNumber]
52 println("the $trackPlaying is selected to play!")
53 this.status = "playing"
57 trackNumber = trackNumber-1
59 trackNumber = trackData.size()-1
60 def trackPlaying = trackData[trackNumber]
61 println("the $trackPlaying is selected!")
62 this.status = "playing"
64 /*def restoreTrack(String trackToRestore) {
65 musicPlayers*.restoreTrack(trackToRestore)
67 def resumeTrack(String trackToResume) {
68 trackNumber = list.indexOf(trackToResume)
69 def trackPlaying = trackData[trackNumber]
70 println("the $trackPlaying is resumed!")
71 this.status = "playing"
73 def setLevel(int level) {
75 println("the level of sound is changed to $level!")
77 def setTrack(String trackToSet) {
78 trackNumber = list.indexOf(trackToSet)
79 def trackPlaying = trackData[trackNumber]
80 println("the $trackPlaying is set!")
81 this.status = "playing"
84 println("the music player with id:$id is stopped!")
85 this.status = "stopped"
88 def currentValue(String deviceFeature) {
89 if (deviceFeature == "musicPlayer") {