From 2a4ae3e26bdf7b16bc16bef4211e230a64522b11 Mon Sep 17 00:00:00 2001 From: Clyhtsuriva Date: Mon, 28 Jun 2021 18:10:41 +0200 Subject: Changed the type of switch used in AudioElement.java --- src/main/java/musichub/business/AudioElement.java | 38 +++++++++-------------- 1 file changed, 14 insertions(+), 24 deletions(-) (limited to 'src') diff --git a/src/main/java/musichub/business/AudioElement.java b/src/main/java/musichub/business/AudioElement.java index 0c1e9e4..fa410d8 100644 --- a/src/main/java/musichub/business/AudioElement.java +++ b/src/main/java/musichub/business/AudioElement.java @@ -3,17 +3,12 @@ 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; @@ -106,24 +101,19 @@ public abstract class AudioElement { 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"); - } + 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 stoped the Audio element"); + } clip.close(); -- cgit v1.2.3 From 16ee1dd1a69edc9b69a96cc706ac1823873de38f Mon Sep 17 00:00:00 2001 From: Clyhtsuriva Date: Mon, 28 Jun 2021 18:35:33 +0200 Subject: Handling wrong input for songs' length at creation (command c) --- log/spoteezer.log | 6 ++---- src/main/java/musichub/main/Main.java | 17 ++++++++++++++--- 2 files changed, 16 insertions(+), 7 deletions(-) (limited to 'src') diff --git a/log/spoteezer.log b/log/spoteezer.log index 5251bff..e672f6d 100644 --- a/log/spoteezer.log +++ b/log/spoteezer.log @@ -1,6 +1,4 @@ [yyyy-MM-dd HH:mm:ss.SSS] TYPE: Message -[2021-06-27 13:23:02.181] WARNING: The music file was not found with the path you've provided or the extension is not .wav [2021-06-27 13:23:40.286] TEST: JUnit test -[2021-06-27 17:01:30.263] WARNING: The music file was not found with the path you've provided or the extension is not .wav -[2021-06-27 18:57:02.639] TEST: JUnit test -[2021-06-27 22:23:27.617] TEST: JUnit test \ No newline at end of file +[2021-06-28 18:33:51.708] ERROR: You've not provided a number for the length. +[2021-06-28 18:34:14.06] ERROR: The music file was not found with the path you've provided or the extension is not .wav \ 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 674cc7b..4248aa9 100644 --- a/src/main/java/musichub/main/Main.java +++ b/src/main/java/musichub/main/Main.java @@ -91,14 +91,25 @@ public class Main { String genre = scan.nextLine(); System.out.println("Song artist: "); String artist = scan.nextLine(); - System.out.println("Song length in seconds: "); - int length = Integer.parseInt(scan.nextLine()); + + int length; + try { + System.out.println("Song length in seconds: "); + length = Integer.parseInt(scan.nextLine()); + } catch (NumberFormatException ex) { + String logMsg = "You've not provided a number for the length."; + LogHandler.write(logMsg, "ERROR"); //write a line in the log file + System.err.println(logMsg); + System.out.println("Type h for available commands"); + choice = scan.nextLine(); + break; + } System.out.println("Song content: "); String content = scan.nextLine(); if (!isPathValid(content)) { String logMsg = "The music file was not found with the path you've provided or the extension is not .wav"; - LogHandler.write(logMsg, "WARNING"); //write a line in the log file + LogHandler.write(logMsg, "ERROR"); //write a line in the log file System.err.println(logMsg); System.out.println("Type h for available commands"); choice = scan.nextLine(); -- cgit v1.2.3 From 7511c64635465e4f8764f5b831eb154f07eec364 Mon Sep 17 00:00:00 2001 From: Clyhtsuriva Date: Mon, 28 Jun 2021 18:38:31 +0200 Subject: Changed the the phrasing for wrong path. --- log/spoteezer.log | 2 +- src/main/java/musichub/main/Main.java | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) (limited to 'src') diff --git a/log/spoteezer.log b/log/spoteezer.log index e672f6d..fc6ea56 100644 --- a/log/spoteezer.log +++ b/log/spoteezer.log @@ -1,4 +1,4 @@ [yyyy-MM-dd HH:mm:ss.SSS] TYPE: Message [2021-06-27 13:23:40.286] TEST: JUnit test [2021-06-28 18:33:51.708] ERROR: You've not provided a number for the length. -[2021-06-28 18:34:14.06] ERROR: The music file was not found with the path you've provided or the extension is not .wav \ No newline at end of file +[2021-06-28 18:37:56.051] ERROR: The music file cannot be found with the path you've provided or the extension is not .wav \ 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 4248aa9..a8d2128 100644 --- a/src/main/java/musichub/main/Main.java +++ b/src/main/java/musichub/main/Main.java @@ -108,7 +108,7 @@ public class Main { System.out.println("Song content: "); String content = scan.nextLine(); if (!isPathValid(content)) { - String logMsg = "The music file was not found with the path you've provided or the extension is not .wav"; + String logMsg = "The music file cannot be found with the path you've provided or the extension is not .wav"; LogHandler.write(logMsg, "ERROR"); //write a line in the log file System.err.println(logMsg); System.out.println("Type h for available commands"); -- cgit v1.2.3