aboutsummaryrefslogtreecommitdiff
path: root/jMusicHub.java
diff options
context:
space:
mode:
Diffstat (limited to 'jMusicHub.java')
-rw-r--r--jMusicHub.java88
1 files changed, 82 insertions, 6 deletions
diff --git a/jMusicHub.java b/jMusicHub.java
index c95e1e6..0cb43b5 100644
--- a/jMusicHub.java
+++ b/jMusicHub.java
@@ -1,5 +1,4 @@
-import java.util.Scanner;
-
+import java.util.*;
/** <h1>jMusicHub</h1>
*
@@ -13,16 +12,71 @@ import java.util.Scanner;
public class jMusicHub {
- public static void main(String[] args) {
+ /** <h2>addSong</h2>
+ * add Song is used to add songs thanks to the "c" option
+ * @param scan Scanner Object
+ */
+ public static Song addSong(Scanner scan){
+ System.out.println("Adding a song...");
+ System.out.printf("Title : ");
+ String title = scan.nextLine();
+ System.out.printf("Duration (in seconds) : ");
+ int duration = scan.nextInt();
+ System.out.printf("Content path : ");
+ String trash = scan.nextLine(); //Using this because the content scan is skippe after a nexInt
+ String content = scan.nextLine();
+ System.out.printf("Artist : ");
+ String artist = scan.nextLine();
+ System.out.printf("Genre (JAZZ, CLASSICAL, HIPHOP, ROCK, POP, RAP) : ");
+ String choosedGenre = scan.nextLine();
+ choosedGenre = choosedGenre.toUpperCase();
+ Genre genre = Genre.valueOf(choosedGenre);
+ System.out.println("");
- System.out.println("Welcome to the jMusicHub !");
+ System.out.println("Do you confirm the addition of the following song ?");
+ System.out.println("Title : " + title);
+ System.out.println("Duration : " + duration);
+ System.out.println("Content path : " + content);
+ System.out.println("Artist : " + artist);
+ System.out.println("Genre : " + genre);
+ System.out.println("[Y/n]");
+ String confirm = scan.nextLine();
+
+ if (confirm.equalsIgnoreCase("Y")){ //if the user is ok with what he typed, create a song obj
+ Song newSong = new Song(title, duration, content, artist,genre);
+ return newSong;
+// songs.add(newSong);
+ } else {
+ System.out.println("Aborting...");
+ System.out.println("");
+ return null;
+ }
+ }
+
+ public jMusicHub() {
+
+ System.out.println("Welcome to the jMusicHub !\n");
Scanner scan = new Scanner(System.in);
String userInput; //Used to get the user's inputs.
+ ArrayList<Song> songs = new ArrayList<Song>();
+ //used to temporarly save the songs before any "s" command
+
System.out.println("Starting extraction");
- //Here will be the process to extract the CSV files
- System.out.println("Extraction done");
+ //Here will be the process to extract the files
+/* try {
+ FileOutputStream fos = new FileOutputStream(file);
+ ObjectOutputStream oos = new ObjectOutputStream(fos);
+ oos.writeObject(albums);
+ oos.close();
+ fos.close();
+ }
+ catch (IOException ioe) {
+ ioe.printStackTrace();
+ return;
+ }*/
+ System.out.println("Extraction done\n");
//Here will be the number of playlist, albums, songs and auidobook extracted
do {
@@ -35,8 +89,25 @@ public class jMusicHub {
case "q" :
System.out.println("Goodbye !");
break;
+
case "c":
+ try { //If something goes wrong, abort
+ Song newSong=addSong(scan);
+ if (newSong != null){
+ songs.add(newSong);
+ System.out.println("Actual content of your songs list (you must save it (s) to do anything else with your songs) :");
+ for (Song iSong : songs){
+ System.out.println(iSong);
+ }
+ System.out.println("");
+
+ }
+ } catch (InputMismatchException | IllegalArgumentException e) {
+ System.out.println("You typed something wrong... I'm aborting..");
+ System.out.println("");
+ }
break;
+
case "a":
break;
case "+":
@@ -52,5 +123,10 @@ public class jMusicHub {
}
} while(!userInput.equals("q"));
+
+ }
+
+ public static void main(String[] args) {
+ new jMusicHub();
}
}