diff options
Diffstat (limited to 'src/main/java')
| -rw-r--r-- | src/main/java/musichub/business/AudioElement.java | 68 | ||||
| -rw-r--r-- | src/main/java/musichub/business/MusicHub.java | 7 | ||||
| -rw-r--r-- | src/main/java/musichub/business/Song.java | 2 | ||||
| -rw-r--r-- | src/main/java/musichub/main/Main.java | 11 | 
4 files changed, 50 insertions, 38 deletions
diff --git a/src/main/java/musichub/business/AudioElement.java b/src/main/java/musichub/business/AudioElement.java index 0a51c16..0c1e9e4 100644 --- a/src/main/java/musichub/business/AudioElement.java +++ b/src/main/java/musichub/business/AudioElement.java @@ -3,12 +3,17 @@ package musichub.business;  import org.w3c.dom.Document;  import org.w3c.dom.Element; -import javax.sound.sampled.*;  import java.io.File;  import java.io.IOException;  import java.util.Scanner;  import java.util.UUID; +import javax.sound.sampled.AudioInputStream; +import javax.sound.sampled.AudioSystem; +import javax.sound.sampled.Clip; +import javax.sound.sampled.LineUnavailableException; +import javax.sound.sampled.UnsupportedAudioFileException; +  public abstract class AudioElement {      protected String title;      protected String artist; @@ -88,35 +93,40 @@ public abstract class AudioElement {          parentElement.appendChild(contentElement);      } - +          public void manageAudioElement() throws UnsupportedAudioFileException, IOException, LineUnavailableException { - -        Scanner scanner = new Scanner(System.in); - -        File file = new File(this.content); -        AudioInputStream audioStream = AudioSystem.getAudioInputStream(file); -        Clip clip = AudioSystem.getClip(); -        clip.open(audioStream); - -        String action = ""; - -        while (!action.equals("Q")) { -            System.out.println("P = Play \b S = Stop \b R = Reset \b Q = Quit"); -            System.out.println("Enter your choice"); -            action = scanner.next(); -            action = action.toUpperCase(); - -            switch (action) { -                case "S", "Q" -> clip.stop(); -                case "P" -> clip.start(); -                case "R" -> clip.setMicrosecondPosition(0); -                default -> System.out.println("try again"); -            } -            System.out.println("You stopped the Audio element"); -        } - -        clip.close(); - +    	 +    	Scanner scanner = new Scanner(System.in);  +    	 +    	File file = new File(this.content); +    	AudioInputStream audioStream = AudioSystem.getAudioInputStream(file); +    	Clip clip = AudioSystem.getClip(); +    	clip.open(audioStream); +    	 +    	String action = ""; +    			 +    	while(!action.equals("Q")) { +    		System.out.println("P = Play \b S = Stop \b R = Reset \b Q = Quit"); +    		System.out.println("Enter your choice"); +    		action = scanner.next(); +        	action = action.toUpperCase(); +        	 +        	switch(action) { +        		case "S" : clip.stop(); +        		break; +        		case "P" : clip.start(); +        		break; +        		case "R" : clip.setMicrosecondPosition(0); +        		break; +        		case "Q" : clip.stop(); +        		break; +        		default : System.out.println("try again"); +        	} +        	System.out.println("You stoped the Audio element"); +    	} +    	 +    	clip.close(); +          }  }
\ No newline at end of file diff --git a/src/main/java/musichub/business/MusicHub.java b/src/main/java/musichub/business/MusicHub.java index f289f1a..f7cf137 100644 --- a/src/main/java/musichub/business/MusicHub.java +++ b/src/main/java/musichub/business/MusicHub.java @@ -6,11 +6,12 @@ import org.w3c.dom.Element;  import org.w3c.dom.Node;  import org.w3c.dom.NodeList; -import javax.sound.sampled.LineUnavailableException; -import javax.sound.sampled.UnsupportedAudioFileException;  import java.io.IOException;  import java.util.*; +import javax.sound.sampled.LineUnavailableException; +import javax.sound.sampled.UnsupportedAudioFileException; +  class SortByDate implements Comparator<Album> {      public int compare(Album a1, Album a2) {          return a1.getDate().compareTo(a2.getDate()); @@ -329,7 +330,7 @@ public class MusicHub {          }          xmlHandler.createXMLFile(document, ELEMENTS_FILE_PATH);      } - +          public void getAudioElement(List<AudioElement> audios, String elementTitle) throws NoAlbumFoundException, UnsupportedAudioFileException, IOException, LineUnavailableException {          for (AudioElement el : audios) {              if (el.getTitle().equalsIgnoreCase(elementTitle)) { diff --git a/src/main/java/musichub/business/Song.java b/src/main/java/musichub/business/Song.java index 5d044a9..564b7c5 100644 --- a/src/main/java/musichub/business/Song.java +++ b/src/main/java/musichub/business/Song.java @@ -53,6 +53,6 @@ public class Song extends AudioElement {          parentElement.appendChild(song);      } - +      }
\ No newline at end of file diff --git a/src/main/java/musichub/main/Main.java b/src/main/java/musichub/main/Main.java index c820b5d..2876734 100644 --- a/src/main/java/musichub/main/Main.java +++ b/src/main/java/musichub/main/Main.java @@ -2,13 +2,14 @@ package musichub.main;  import musichub.business.*; -import javax.sound.sampled.LineUnavailableException; -import javax.sound.sampled.UnsupportedAudioFileException;  import java.io.IOException;  import java.util.Iterator;  import java.util.List;  import java.util.Scanner; +import javax.sound.sampled.LineUnavailableException; +import javax.sound.sampled.UnsupportedAudioFileException; +  public class Main {      public static void main(String[] args) throws UnsupportedAudioFileException, IOException, LineUnavailableException { @@ -45,8 +46,8 @@ public class Main {                      albumTitle = scan.nextLine();                      try { -                        List<Song> songs = theHub.getAlbumSongsSortedByGenre(albumTitle); -                        System.out.println(songs); +                    	List<Song> songs = theHub.getAlbumSongsSortedByGenre(albumTitle); +                        System.out.println(songs);;                      } catch (NoAlbumFoundException ex) {                          System.out.println("No album found with the requested title " + ex.getMessage());                      } @@ -60,7 +61,7 @@ public class Main {                      albumTitle = scan.nextLine();                      try { -                        List<AudioElement> songs = theHub.getAlbumSongs(albumTitle); +                    	List<AudioElement> songs = theHub.getAlbumSongs(albumTitle);                          System.out.println(theHub.getAlbumSongs(albumTitle));                          String song = scan.nextLine();                          theHub.getAudioElement(songs, song);  | 
