From 9b7c6b28f84a14c44a8d5e7e947e6c7461735f2f Mon Sep 17 00:00:00 2001 From: Alix von Schirp Date: Wed, 18 Jan 2023 02:26:48 +0100 Subject: [PATCH] Implemented logging Also fixed a minor issue where the configuration HashMap was not initialized and threw a NullPointerException. --- .gitignore | 3 ++- .../tools/lastfmtospotifyplaylist/LastFMToSpotify.java | 8 ++++++++ .../arguments/ArgumentHandler.java | 10 ++++++++-- .../tools/lastfmtospotifyplaylist/util/Logger.java | 4 +++- 4 files changed, 21 insertions(+), 4 deletions(-) diff --git a/.gitignore b/.gitignore index 4cc072f..045e6d5 100644 --- a/.gitignore +++ b/.gitignore @@ -1,3 +1,4 @@ # Project exclude paths /target/ -/compile.bat \ No newline at end of file +/compile.bat +.idea/ diff --git a/src/main/java/de/b00tload/tools/lastfmtospotifyplaylist/LastFMToSpotify.java b/src/main/java/de/b00tload/tools/lastfmtospotifyplaylist/LastFMToSpotify.java index 113c598..5b0e3ae 100644 --- a/src/main/java/de/b00tload/tools/lastfmtospotifyplaylist/LastFMToSpotify.java +++ b/src/main/java/de/b00tload/tools/lastfmtospotifyplaylist/LastFMToSpotify.java @@ -15,12 +15,15 @@ import java.io.IOException; import java.net.URI; import java.util.HashMap; +import static de.b00tload.tools.lastfmtospotifyplaylist.util.Logger.logLn; + public class LastFMToSpotify { public static final String LINE_SEPERATOR = System.getProperty("line.separator"); public static HashMap configuration; public static void main(String[] args) { + configuration = new HashMap<>(); configuration.put("requests.useragent", "LastFMToSpotify/1.0-Snapshot (" + System.getProperty("os.name") + "; " + System.getProperty("os.arch") + ") Java/"+System.getProperty("java.version")); for(int a = 0; a Spotify Playlist", 4)) { for (int progress = 1; progress<=5; progress++) { diff --git a/src/main/java/de/b00tload/tools/lastfmtospotifyplaylist/arguments/ArgumentHandler.java b/src/main/java/de/b00tload/tools/lastfmtospotifyplaylist/arguments/ArgumentHandler.java index 21cc314..e2b572d 100644 --- a/src/main/java/de/b00tload/tools/lastfmtospotifyplaylist/arguments/ArgumentHandler.java +++ b/src/main/java/de/b00tload/tools/lastfmtospotifyplaylist/arguments/ArgumentHandler.java @@ -53,7 +53,13 @@ public class ArgumentHandler { } private static void verbose(String value){ - //wenn value != int - System.out.println("LogLevel must be a numeric value."); + try { + int loglevel = Integer.parseInt(value); + configuration.put("logging.level", String.valueOf(loglevel)); + } catch (NumberFormatException e) { + System.out.println("LogLevel must be a numeric value."); + System.exit(500); + } + } } diff --git a/src/main/java/de/b00tload/tools/lastfmtospotifyplaylist/util/Logger.java b/src/main/java/de/b00tload/tools/lastfmtospotifyplaylist/util/Logger.java index eb38e8d..cad03cc 100644 --- a/src/main/java/de/b00tload/tools/lastfmtospotifyplaylist/util/Logger.java +++ b/src/main/java/de/b00tload/tools/lastfmtospotifyplaylist/util/Logger.java @@ -5,7 +5,9 @@ import static de.b00tload.tools.lastfmtospotifyplaylist.LastFMToSpotify.configur public class Logger { public static void logLn(String string, int priority){ - if(Integer.parseInt(configuration.get("verbose.level"))) + if(Integer.parseInt(configuration.get("logging.level"))>=priority){ + System.out.println(string); + } } }