Skip to content

Commit da74289

Browse files
committed
refactroing logger sl4j module
1 parent e0e9952 commit da74289

File tree

7 files changed

+35
-161
lines changed

7 files changed

+35
-161
lines changed

rlib-logger-api/src/main/java/javasabr/rlib/logger/api/LoggerFactory.java

Lines changed: 2 additions & 39 deletions
Original file line numberDiff line numberDiff line change
@@ -4,54 +4,17 @@
44

55
public interface LoggerFactory {
66

7-
/**
8-
* Make a new logger with the name.
9-
*
10-
* @param name the logger's name.
11-
* @return the new logger.
12-
*/
137
Logger make(String name);
148

15-
/**
16-
* Make a new logger for the type.
17-
*
18-
* @param type the logger's type.
19-
* @return the new logger.
20-
*/
219
Logger make(Class<?> type);
2210

23-
/**
24-
* Get a default logger.
25-
*
26-
* @return he default logger.
27-
*/
2811
Logger getDefault();
2912

30-
/**
31-
* Add the new listener.
32-
*
33-
* @param listener the new listener.
34-
*/
3513
void addListener(LoggerListener listener);
3614

37-
/**
38-
* Add the new writer.
39-
*
40-
* @param writer the new writer.
41-
*/
42-
void addWriter(Writer writer);
43-
44-
/**
45-
* Remove the listener.
46-
*
47-
* @param listener the listener.
48-
*/
4915
void removeListener(LoggerListener listener);
5016

51-
/**
52-
* Remove the writer.
53-
*
54-
* @param writer the writer.
55-
*/
17+
void addWriter(Writer writer);
18+
5619
void removeWriter(Writer writer);
5720
}
Lines changed: 1 addition & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -1,22 +1,11 @@
11
package javasabr.rlib.logger.api;
22

33
/**
4-
* The interface to implement a listener of logger events.
5-
*
64
* @author JavaSaBr
75
*/
86
public interface LoggerListener {
97

10-
/**
11-
* Print the result logger message.
12-
*
13-
* @param text the text.
14-
*/
158
void println(String text);
169

17-
/**
18-
* Flush last data.
19-
*/
20-
default void flush() {
21-
}
10+
default void flush() {}
2211
}

rlib-logger-api/src/main/java/javasabr/rlib/logger/api/LoggerManager.java

Lines changed: 14 additions & 69 deletions
Original file line numberDiff line numberDiff line change
@@ -2,12 +2,11 @@
22

33
import java.io.Writer;
44
import java.lang.reflect.InvocationTargetException;
5+
import java.util.Iterator;
56
import java.util.ServiceLoader;
67
import javasabr.rlib.logger.api.impl.NullLoggerFactory;
78

89
/**
9-
* The class to manage loggers.
10-
*
1110
* @author JavaSaBr
1211
*/
1312
public class LoggerManager {
@@ -17,32 +16,27 @@ public class LoggerManager {
1716
static {
1817

1918
String className = System.getProperty("com.ss.rlib.logger.factory", "");
20-
2119
Class<? extends LoggerFactory> implementation = null;
2220

2321
if (!className.isEmpty()) {
2422
try {
2523
implementation = (Class<? extends LoggerFactory>) Class.forName(className);
26-
} catch (ClassNotFoundException e) {
27-
e.printStackTrace();
24+
} catch (ClassNotFoundException exception) {
25+
exception.printStackTrace();
2826
}
2927
}
3028

3129
if (implementation == null) {
32-
33-
var impls = ServiceLoader
30+
Iterator<LoggerFactory> impls = ServiceLoader
3431
.load(LoggerFactory.class)
3532
.iterator();
36-
3733
if (impls.hasNext()) {
38-
implementation = impls
39-
.next()
40-
.getClass();
34+
implementation = impls.next().getClass();
4135
}
4236
}
4337

4438
if (implementation == null) {
45-
System.err.println("ERROR: No any exist implementation of Rlib Logger Factory, will use null logger");
39+
System.err.printf("ERROR: No any exist implementation of [%s], will be used null logger%n", LoggerFactory.class);
4640
LOGGER_FACTORY = new NullLoggerFactory();
4741
} else {
4842
try {
@@ -55,87 +49,38 @@ public class LoggerManager {
5549
}
5650
}
5751

58-
/**
59-
* Add the new listener.
60-
*
61-
* @param listener the new listener.
62-
*/
63-
public static void addListener(LoggerListener listener) {
64-
LOGGER_FACTORY.addListener(listener);
65-
}
66-
67-
/**
68-
* Add the new writer.
69-
*
70-
* @param writer the new writer.
71-
*/
72-
public static void addWriter(Writer writer) {
73-
LOGGER_FACTORY.addWriter(writer);
74-
}
75-
76-
/**
77-
* Get the main logger.
78-
*
79-
* @return the main logger.
80-
*/
8152
public static Logger getDefaultLogger() {
8253
return LOGGER_FACTORY.getDefault();
8354
}
8455

85-
/**
86-
* Get or create a logger for the class.
87-
*
88-
* @param cs the class.
89-
* @return the logger for the class.
90-
*/
9156
public static Logger getLogger(Class<?> cs) {
9257
return LOGGER_FACTORY.make(cs);
9358
}
9459

95-
/**
96-
* Get or create a logger for the id.
97-
*
98-
* @param id the id.
99-
* @return the logger for the class.
100-
*/
10160
public static Logger getLogger(String id) {
10261
return LOGGER_FACTORY.make(id);
10362
}
10463

105-
/**
106-
* Remove the listener.
107-
*
108-
* @param listener the listener.
109-
*/
64+
public static void addListener(LoggerListener listener) {
65+
LOGGER_FACTORY.addListener(listener);
66+
}
67+
11068
public static void removeListener(LoggerListener listener) {
11169
LOGGER_FACTORY.removeListener(listener);
11270
}
11371

114-
/**
115-
* Remove the writer.
116-
*
117-
* @param writer the writer.
118-
*/
72+
public static void addWriter(Writer writer) {
73+
LOGGER_FACTORY.addWriter(writer);
74+
}
75+
11976
public static void removeWriter(Writer writer) {
12077
LOGGER_FACTORY.removeWriter(writer);
12178
}
12279

123-
/**
124-
* Enable passed logger level for some logger.
125-
*
126-
* @param cs the class which use its own logger.
127-
* @param level the logger level to enable.
128-
*/
12980
public static void enable(Class<?> cs, LoggerLevel level) {
13081
getLogger(cs).overrideEnabled(level, true);
13182
}
13283

133-
/**
134-
* Disable passed logger level for some logger.
135-
*
136-
* @param cs the class which use its own logger.
137-
* @param level the logger level to disable.
138-
*/
13984
public static void disable(Class<?> cs, LoggerLevel level) {
14085
getLogger(cs).overrideEnabled(level, false);
14186
}

rlib-logger-api/src/main/java/javasabr/rlib/logger/api/impl/NullLogger.java

Lines changed: 0 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -2,9 +2,7 @@
22

33
import javasabr.rlib.logger.api.Logger;
44
import javasabr.rlib.logger.api.LoggerLevel;
5-
import org.jspecify.annotations.NullMarked;
65

7-
@NullMarked
86
public final class NullLogger implements Logger {
97

108
@Override

rlib-logger-api/src/main/java/javasabr/rlib/logger/api/impl/NullLoggerFactory.java

Lines changed: 0 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -4,9 +4,7 @@
44
import javasabr.rlib.logger.api.Logger;
55
import javasabr.rlib.logger.api.LoggerFactory;
66
import javasabr.rlib.logger.api.LoggerListener;
7-
import org.jspecify.annotations.NullMarked;
87

9-
@NullMarked
108
public class NullLoggerFactory implements LoggerFactory {
119

1210
private static final NullLogger NULL_LOGGER = new NullLogger();
Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,4 @@
1+
@NullMarked
2+
package javasabr.rlib.logger.api.impl;
3+
4+
import org.jspecify.annotations.NullMarked;

rlib-logger-slf4j/src/main/java/javasabr/rlib/logger/slf4j/Slf4jLogger.java

Lines changed: 14 additions & 37 deletions
Original file line numberDiff line numberDiff line change
@@ -11,54 +11,31 @@ public class Slf4jLogger implements Logger {
1111

1212
@Override
1313
public boolean enabled(LoggerLevel level) {
14-
15-
switch (level) {
16-
case INFO:
17-
return logger.isInfoEnabled();
18-
case DEBUG:
19-
return logger.isDebugEnabled();
20-
case ERROR:
21-
return logger.isErrorEnabled();
22-
case WARNING:
23-
return logger.isWarnEnabled();
24-
}
25-
26-
return false;
14+
return switch (level) {
15+
case INFO -> logger.isInfoEnabled();
16+
case DEBUG -> logger.isDebugEnabled();
17+
case ERROR -> logger.isErrorEnabled();
18+
case WARNING -> logger.isWarnEnabled();
19+
};
2720
}
2821

2922
@Override
3023
public void print(LoggerLevel level, String message) {
31-
3224
switch (level) {
33-
case INFO:
34-
logger.info(message);
35-
return;
36-
case DEBUG:
37-
logger.debug(message);
38-
return;
39-
case ERROR:
40-
logger.error(message);
41-
return;
42-
case WARNING:
43-
logger.warn(message);
25+
case INFO -> logger.info(message);
26+
case DEBUG -> logger.debug(message);
27+
case ERROR -> logger.error(message);
28+
case WARNING -> logger.warn(message);
4429
}
4530
}
4631

4732
@Override
4833
public void print(LoggerLevel level, Throwable exception) {
49-
5034
switch (level) {
51-
case INFO:
52-
logger.info(exception.getMessage(), exception);
53-
return;
54-
case DEBUG:
55-
logger.debug(exception.getMessage(), exception);
56-
return;
57-
case ERROR:
58-
logger.error(exception.getMessage(), exception);
59-
return;
60-
case WARNING:
61-
logger.warn(exception.getMessage(), exception);
35+
case INFO -> logger.info(exception.getMessage(), exception);
36+
case DEBUG -> logger.debug(exception.getMessage(), exception);
37+
case ERROR -> logger.error(exception.getMessage(), exception);
38+
case WARNING -> logger.warn(exception.getMessage(), exception);
6239
}
6340
}
6441
}

0 commit comments

Comments
 (0)