Skip to content

Commit 4be063d

Browse files
BorewitBorewit
Borewit
authored andcommitted
Update log4j
Logs to `%USERPROFILE%\.listDir()\logs`
1 parent c6380fe commit 4be063d

38 files changed

+425
-923
lines changed

build.gradle

Lines changed: 15 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -112,8 +112,19 @@ dependencies {
112112
// https://mvnrepository.com/artifact/javax.xml.bind/jaxb-api
113113
implementation 'javax.xml.bind:jaxb-api:2.3.1'
114114

115-
// https://mvnrepository.com/artifact/log4j/log4j
116-
implementation 'log4j:log4j:1.2.6'
115+
// https://mvnrepository.com/artifact/org.apache.logging.log4j/log4j-core
116+
implementation 'org.apache.logging.log4j:log4j-core:2.19.0'
117+
118+
// Apache SLF4J to Log4j2 Adapter (bridge)
119+
// https://mvnrepository.com/artifact/org.apache.logging.log4j/log4j-slf4j-impl
120+
runtimeOnly 'org.apache.logging.log4j:log4j-slf4j-impl:2.19.0'
121+
122+
// Required for log4j yaml configuration files
123+
// https://mvnrepository.com/artifact/com.fasterxml.jackson.dataformat/jackson-dataformat-yaml
124+
implementation 'com.fasterxml.jackson.dataformat:jackson-dataformat-yaml:2.14.2'
125+
126+
// https://mvnrepository.com/artifact/com.fasterxml.jackson.core/jackson-databind
127+
implementation 'com.fasterxml.jackson.core:jackson-databind:2.14.2'
117128

118129
// https://mvnrepository.com/artifact/commons-io/commons-io
119130
implementation 'commons-io:commons-io:2.11.0'
@@ -122,9 +133,6 @@ dependencies {
122133
// https://mvnrepository.com/artifact/com.jcabi/jcabi-manifests/1.2.1
123134
implementation 'com.jcabi:jcabi-manifests:1.2.1'
124135

125-
// https://mvnrepository.com/artifact/com.fasterxml.jackson.core/jackson-core
126-
implementation 'com.fasterxml.jackson.core:jackson-databind:2.14.1'
127-
128136
// Required by "src/jar/lizzy.jar"
129137
// https://mvnrepository.com/artifact/commons-logging/commons-logging
130138
runtimeOnly 'commons-logging:commons-logging:1.2'
@@ -185,7 +193,7 @@ task makePngIcon(type: Svg2PngTask) {
185193
destination = new File("$generatedImages/icon.png")
186194
}
187195

188-
processResources.dependsOn makePngIcon
196+
tasks.processResources.dependsOn makePngIcon
189197

190198
task generateSplashScreenWithVersion(type: Copy) {
191199
group = 'graphics'
@@ -202,7 +210,7 @@ task makeSplashScreen(type: Svg2PngTask, dependsOn: generateSplashScreenWithVers
202210
destination = new File("$generatedImages/listfixSplashScreen.png")
203211
}
204212

205-
processResources.dependsOn makeSplashScreen
213+
tasks.processResources.dependsOn makeSplashScreen
206214

207215
task makeIcon (type: Svg2IcoTask) {
208216
group = 'graphics'
File renamed without changes.
File renamed without changes.

src/log4j.properties

Lines changed: 0 additions & 27 deletions
This file was deleted.

src/log4j_dev.properties

Lines changed: 0 additions & 33 deletions
This file was deleted.

src/main/java/listfix/config/JsonConfigFile.java

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,8 @@
33
import com.fasterxml.jackson.databind.DeserializationFeature;
44
import com.fasterxml.jackson.databind.ObjectMapper;
55
import com.fasterxml.jackson.databind.SerializationFeature;
6-
import org.apache.log4j.Logger;
6+
import org.apache.logging.log4j.LogManager;
7+
import org.apache.logging.log4j.Logger;
78

89
import java.io.File;
910
import java.io.IOException;
@@ -12,7 +13,7 @@
1213

1314
public abstract class JsonConfigFile<T>
1415
{
15-
public static final Logger _logger = Logger.getLogger(JsonConfigFile.class);
16+
public static final Logger _logger = LogManager.getLogger(JsonConfigFile.class);
1617

1718
protected final File jsonFile;
1819
protected T jsonPojo = null;

src/main/java/listfix/controller/GUIDriver.java

Lines changed: 6 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -20,19 +20,17 @@
2020

2121
package listfix.controller;
2222

23-
import java.io.File;
24-
import java.io.IOException;
25-
2623
import listfix.config.ApplicationOptionsConfiguration;
2724
import listfix.config.IAppOptions;
2825
import listfix.config.IMediaLibrary;
2926
import listfix.config.MediaLibraryConfiguration;
3027
import listfix.json.JsonAppOptions;
3128
import listfix.model.PlaylistHistory;
29+
import org.apache.logging.log4j.LogManager;
30+
import org.apache.logging.log4j.Logger;
3231

33-
import listfix.util.ExStack;
34-
35-
import org.apache.log4j.Logger;
32+
import java.io.File;
33+
import java.io.IOException;
3634

3735
/**
3836
* @author jcaron
@@ -49,7 +47,7 @@ public final class GUIDriver
4947
*/
5048
public static final boolean FILE_SYSTEM_IS_CASE_SENSITIVE = File.separatorChar == '/';
5149

52-
private static final Logger _logger = Logger.getLogger(GUIDriver.class);
50+
private static final Logger _logger = LogManager.getLogger(GUIDriver.class);
5351
private static GUIDriver _instance;
5452

5553
/**
@@ -80,7 +78,7 @@ private GUIDriver()
8078
showMediaDirWindow = true;
8179

8280
// This happens by design the first time the app is executed, so to minimize confusion, we disable console logging when we distribute listFix()
83-
_logger.error(ExStack.toString(e));
81+
_logger.error("Error initializing", e);
8482
}
8583
}
8684

src/main/java/listfix/controller/MediaLibraryOperator.java

Lines changed: 6 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -21,10 +21,10 @@
2121
package listfix.controller;
2222

2323
import listfix.config.MediaLibraryConfiguration;
24-
import listfix.io.*;
25-
import listfix.util.*;
24+
import listfix.io.DirectoryScanner;
2625
import listfix.view.support.ProgressWorker;
27-
import org.apache.log4j.Logger;
26+
import org.apache.logging.log4j.LogManager;
27+
import org.apache.logging.log4j.Logger;
2828

2929
import java.io.IOException;
3030
import java.util.Collection;
@@ -35,7 +35,7 @@
3535
*/
3636
public class MediaLibraryOperator
3737
{
38-
private static final Logger _logger = Logger.getLogger(MediaLibraryOperator.class);
38+
private static final Logger _logger = LogManager.getLogger(MediaLibraryOperator.class);
3939
private MediaLibraryConfiguration mediaLibraryConfiguration;
4040
private ProgressWorker _observer;
4141

@@ -69,7 +69,7 @@ public void addDirectory(String dir)
6969
}
7070
catch (IOException e)
7171
{
72-
_logger.error(ExStack.toString(e));
72+
_logger.error("Error", e);
7373
}
7474
}
7575
}
@@ -96,7 +96,7 @@ public void refresh()
9696
}
9797
catch (IOException e)
9898
{
99-
_logger.error(ExStack.toString(e));
99+
_logger.error("Error", e);
100100
}
101101
}
102102
}

src/main/java/listfix/controller/tasks/WriteMediaLibraryIniTask.java

Lines changed: 4 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -24,14 +24,15 @@
2424

2525
import listfix.config.MediaLibraryConfiguration;
2626

27-
import org.apache.log4j.Logger;
27+
import org.apache.logging.log4j.LogManager;
28+
import org.apache.logging.log4j.Logger;
2829

2930
/**
3031
* @author jcaron
3132
*/
3233
public class WriteMediaLibraryIniTask extends listfix.controller.Task
3334
{
34-
private static final Logger _logger = Logger.getLogger(WriteMediaLibraryIniTask.class);
35+
private static final Logger _logger = LogManager.getLogger(WriteMediaLibraryIniTask.class);
3536

3637
private final MediaLibraryConfiguration mediaLibraryConfiguration;
3738

@@ -52,7 +53,7 @@ public void run()
5253
}
5354
catch (IOException e)
5455
{
55-
_logger.error(e);
56+
_logger.error("Error writing configuration to " + this.mediaLibraryConfiguration.getFile().getName(), e);
5657
}
5758
}
5859
}

src/main/java/listfix/io/BrowserLauncher.java

Lines changed: 6 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -20,14 +20,13 @@
2020

2121
package listfix.io;
2222

23-
import java.lang.reflect.Method;
24-
import javax.swing.JOptionPane;
25-
26-
import listfix.util.ExStack;
2723
import listfix.util.OperatingSystem;
2824
import listfix.view.controls.JTransparentTextArea;
25+
import org.apache.logging.log4j.LogManager;
26+
import org.apache.logging.log4j.Logger;
2927

30-
import org.apache.log4j.Logger;
28+
import javax.swing.*;
29+
import java.lang.reflect.Method;
3130

3231
/**
3332
* A class who's sole responsibility is to launch the default web browser on various OSes.
@@ -36,7 +35,7 @@
3635
public class BrowserLauncher
3736
{
3837
private static final String _errMsg = "Error attempting to launch default web browser";
39-
private static final Logger _logger = Logger.getLogger(BrowserLauncher.class);
38+
private static final Logger _logger = LogManager.getLogger(BrowserLauncher.class);
4039

4140
/**
4241
* Attempts to open the given url in the system's default web browser.
@@ -85,7 +84,7 @@ else if (OperatingSystem.isWindows())
8584
catch (Exception e)
8685
{
8786
JOptionPane.showMessageDialog(null, new JTransparentTextArea(_errMsg + ": " + e.getLocalizedMessage()));
88-
_logger.info(ExStack.toString(e));
87+
_logger.warn(e);
8988
}
9089
}
9190
}

src/main/java/listfix/io/WinampHelper.java

Lines changed: 18 additions & 23 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,4 @@
1-
2-
/**
1+
/*
32
* listFix() - Fix Broken Playlists!
43
* <p>
54
* This file is part of listFix().
@@ -19,26 +18,26 @@
1918
*/
2019
package listfix.io;
2120

22-
import java.io.File;
23-
import java.io.IOException;
24-
import java.util.List;
25-
26-
import javax.xml.bind.JAXBContext;
27-
import javax.xml.bind.JAXBException;
28-
import javax.xml.bind.Unmarshaller;
29-
3021
import listfix.config.IMediaLibrary;
31-
import listfix.io.writers.FileCopier;
3222
import listfix.model.BatchRepair;
3323
import listfix.model.BatchRepairItem;
3424
import listfix.model.playlists.winamp.generated.Playlist;
3525
import listfix.model.playlists.winamp.generated.Playlists;
36-
import listfix.util.ExStack;
3726
import listfix.util.OperatingSystem;
3827
import listfix.view.support.IProgressObserver;
3928
import listfix.view.support.ProgressAdapter;
29+
import org.apache.logging.log4j.LogManager;
30+
import org.apache.logging.log4j.Logger;
4031

41-
import org.apache.log4j.Logger;
32+
import javax.xml.bind.JAXBContext;
33+
import javax.xml.bind.JAXBException;
34+
import javax.xml.bind.Unmarshaller;
35+
import java.io.File;
36+
import java.io.IOException;
37+
import java.nio.file.Files;
38+
import java.nio.file.Path;
39+
import java.nio.file.StandardCopyOption;
40+
import java.util.List;
4241

4342
/**
4443
* Provides convenience methods for interacting w/ the Winamp Media Library and determining if Winamp is installed.
@@ -50,7 +49,7 @@ public class WinampHelper
5049
private static final String HOME_PATH = System.getenv("APPDATA");
5150
private static final String WINAMP_PATH1 = HOME_PATH + "\\Winamp\\Plugins\\ml\\playlists\\";
5251
private static final String WINAMP_PATH2 = HOME_PATH + "\\Winamp\\Plugins\\ml\\";
53-
private static final Logger _logger = Logger.getLogger(WinampHelper.class);
52+
private static final Logger _logger = LogManager.getLogger(WinampHelper.class);
5453

5554
private static String WINAMP_PATH = "";
5655

@@ -93,17 +92,11 @@ public static BatchRepair getWinampBatchRepair(IMediaLibrary mediaFiles, IPlayLi
9392
}
9493
catch (JAXBException ex)
9594
{
96-
_logger.error(ExStack.toString(ex));
95+
_logger.error("Error while repairing Winamp playlist", ex);
9796
return null;
9897
}
9998
}
10099

101-
/**
102-
* @param destDir
103-
* @param observer
104-
* @throws JAXBException
105-
* @throws IOException
106-
*/
107100
public static void extractPlaylists(File destDir, IProgressObserver observer) throws JAXBException, IOException
108101
{
109102
// avoid resetting total if part of batch operation
@@ -122,8 +115,10 @@ public static void extractPlaylists(File destDir, IProgressObserver observer) th
122115
}
123116
for (Playlist list : winLists)
124117
{
125-
FileCopier.copy(new File(WINAMP_PATH + list.getFilename()),
126-
new File(destDir.getPath() + System.getProperty("file.separator") + FileUtils.replaceInvalidWindowsFileSystemCharsWithChar(list.getTitle(), '_') + ".m3u8"));
118+
Path sourceFile = Path.of(WINAMP_PATH, list.getFilename());
119+
Path targetPath = Path.of(destDir.getPath(), FileUtils.replaceInvalidWindowsFileSystemCharsWithChar(list.getTitle(), '_') + ".m3u8");
120+
Files.copy(sourceFile, targetPath, StandardCopyOption.REPLACE_EXISTING);
121+
127122
progress.stepCompleted();
128123
}
129124
}

src/main/java/listfix/io/readers/playlists/ITunesXMLReader.java

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -40,7 +40,8 @@
4040
import listfix.util.UnicodeUtils;
4141
import listfix.view.support.IProgressObserver;
4242

43-
import org.apache.log4j.Logger;
43+
import org.apache.logging.log4j.LogManager;
44+
import org.apache.logging.log4j.Logger;
4445

4546
/**
4647
*
@@ -49,7 +50,7 @@
4950
public class ITunesXMLReader extends PlaylistReader
5051
{
5152
private String _encoding;
52-
private static final Logger _logger = Logger.getLogger(ITunesXMLReader.class);
53+
private static final Logger _logger = LogManager.getLogger(ITunesXMLReader.class);
5354

5455
private ITunesMediaLibrary _library;
5556

0 commit comments

Comments
 (0)