Project for Continous Integration
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

237 lines
5.4 KiB

  1. package device.usbPlayer;
  2. import device.Device;
  3. import java.util.ArrayList;
  4. public class UsbPlayer implements Device {
  5. private ArrayList<String> Playlist = new ArrayList<String>();
  6. private String playTrack = "";
  7. private Boolean isConnected;
  8. private Boolean isDefect;
  9. int Lautstaerke = 0;
  10. //*********setters und getters********
  11. public ArrayList<String> getPlaylist() {
  12. return Playlist;
  13. }
  14. public void setPlaylist(ArrayList<String> playlist) {
  15. Playlist = playlist;
  16. }
  17. public Boolean getDefect() {
  18. return isDefect;
  19. }
  20. public void setDefect(Boolean defect) {
  21. isDefect = defect;
  22. }
  23. public Boolean getConnected() {
  24. return isConnected;
  25. }
  26. public void setConnected(Boolean connected) {
  27. isConnected = connected;
  28. }
  29. public String getPlayTrack() {
  30. return playTrack;
  31. }
  32. public void setPlayTrack(String playTrack) {
  33. this.playTrack = playTrack;
  34. }
  35. public void setLautstaerke(int ls) {
  36. if (ls <= 100) {
  37. Lautstaerke = ls;
  38. }
  39. }
  40. public int getLautstaerke() {
  41. return Lautstaerke;
  42. }
  43. //*********constructure********
  44. public UsbPlayer() {
  45. super();
  46. isDefect = false;
  47. isConnected = true;
  48. Playlist.add("Musik 01.mp3");
  49. Playlist.add("Musik 02.mp3");
  50. Playlist.add("Musik 03.mp3");
  51. playTrack = Playlist.get(0);
  52. }
  53. //**********search method*************
  54. public boolean isAllAudio() {
  55. String song = "";
  56. boolean flag = true;
  57. for (int i = 0; i < Playlist.size(); i++) {
  58. song = Playlist.get(i).substring(Playlist.get(i).length() - 4);
  59. if (song.equals(".mp3") | song.equals(".mp4")| song.equals(".m4a")| song.equals(".wav")| song.equals(".wma")| song.equals(".aac") ) {
  60. flag = true;
  61. } else {
  62. flag = false;
  63. break;
  64. }
  65. }
  66. return flag;
  67. }
  68. //**********search method*************
  69. @Override
  70. public void quieter() {
  71. if(Lautstaerke > 0) {
  72. Lautstaerke -= 1;
  73. } else {
  74. Lautstaerke = 0;
  75. }
  76. }
  77. @Override
  78. public void louder() {
  79. if(Lautstaerke < 100) {
  80. Lautstaerke += 1;
  81. } else {
  82. Lautstaerke = 100;
  83. }
  84. }
  85. public void Louder_10(){
  86. Lautstaerke += 10;
  87. if (Lautstaerke > 100) {
  88. Lautstaerke = 100;
  89. }
  90. }
  91. public void quieter_10(){
  92. Lautstaerke -= 10;
  93. if (Lautstaerke < 0) {
  94. Lautstaerke = 0;
  95. }
  96. }
  97. @Override
  98. public int getVolume() {
  99. return 0;
  100. }
  101. @Override
  102. public void next() {
  103. int currentIdex = Playlist.indexOf(playTrack);
  104. int nextIndex = (currentIdex + 1) % Playlist.size();
  105. playTrack = Playlist.get(nextIndex);
  106. }
  107. @Override
  108. public void prev() {
  109. int currentIdex = Playlist.indexOf(playTrack);
  110. int nextIndex = Playlist.size() - 1;
  111. if (currentIdex != 0) {
  112. nextIndex = (currentIdex - 1);
  113. }
  114. playTrack = Playlist.get(nextIndex);
  115. }
  116. @Override
  117. public String getInfoText() {
  118. return null;
  119. }
  120. @Override
  121. public String[] getOptions() {
  122. return new String[0];
  123. }
  124. @Override
  125. public String chooseItem(int itemNr) {
  126. return null;
  127. }
  128. @Override
  129. public String[] getItemList() {
  130. return null;
  131. }
  132. @Override
  133. public String mute() {
  134. return null;
  135. }
  136. @Override
  137. public String unmute() {
  138. return null;
  139. }
  140. @Override
  141. public String play() {
  142. String result = "USB : ";
  143. if (isConnected == true) {
  144. result += "connected,";
  145. if (isDefect == false) {
  146. result += "working";
  147. if (this.Playlist.size() != 0) {
  148. result += ",have a list";
  149. if (this.isAllAudio()) {
  150. result += ",Audio";
  151. if (!playTrack.equals(""))
  152. result += ",point to a track.";
  153. else
  154. result += ",doesn't point to a track.";
  155. } else {
  156. result += ",not Audio.";
  157. }
  158. } else result += ",have no list.";
  159. } else {
  160. result += "not working.";
  161. }
  162. } else result = "not connected.";
  163. return result;
  164. }
  165. public int findSong(String songName){
  166. int songIndex =-1, index=-1;
  167. String song;
  168. for (int j = 0; j < getPlaylist().size(); j++) {
  169. song = getPlaylist().get(j);
  170. songIndex=song.toLowerCase().indexOf(songName.toLowerCase());
  171. if (songIndex != -1) {
  172. index = j;
  173. break;
  174. }
  175. }
  176. return index;
  177. }
  178. public boolean GoTo(String songName){
  179. if(findSong(songName) != -1){
  180. playTrack = getPlaylist().get(findSong(songName));//songName;
  181. return true;
  182. }
  183. else
  184. //playTrack = songName;
  185. return false;
  186. }
  187. public void GoToFirst() {
  188. //go to the first song in the list
  189. setPlayTrack(getPlaylist().get(0));
  190. }
  191. public void GoToLast() {
  192. setPlayTrack("Musik 03.mp3");
  193. }
  194. }