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.

172 lines
4.0 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. private 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(".wav")) {
  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. @Override
  86. public int getVolume() {
  87. return 0;
  88. }
  89. @Override
  90. public void next() {
  91. int currentIdex = Playlist.indexOf(playTrack);
  92. int nextIndex = (currentIdex + 1) % Playlist.size();
  93. playTrack = Playlist.get(nextIndex);
  94. }
  95. @Override
  96. public void prev() {
  97. int currentIdex = Playlist.indexOf(playTrack);
  98. int nextIndex = Playlist.size() - 1;
  99. if (currentIdex != 0) {
  100. nextIndex = (currentIdex - 1);
  101. }
  102. playTrack = Playlist.get(nextIndex);
  103. }
  104. @Override
  105. public String getInfoText() {
  106. return null;
  107. }
  108. @Override
  109. public String[] getOptions() {
  110. return new String[0];
  111. }
  112. @Override
  113. public String[] getItemList() {
  114. return new String[0];
  115. }
  116. @Override
  117. public String play() {
  118. String result = "USB : ";
  119. if (isConnected == true) {
  120. result += "connected,";
  121. if (isDefect == false) {
  122. result += "working";
  123. if (this.Playlist.size() != 0) {
  124. result += ",have a list";
  125. if (this.isAllAudio()) {
  126. result += ",Audio";
  127. if (!playTrack.equals(""))
  128. result += ",point to a track.";
  129. else
  130. result += ",doesn't point to a track.";
  131. } else {
  132. result += ",not Audio.";
  133. }
  134. } else result += ",have no list.";
  135. } else {
  136. result += "not working.";
  137. }
  138. } else result = "not connected.";
  139. return result;
  140. }
  141. }