Skip to content

Commit 053dfc9

Browse files
committed
Refactoring according to Pazus suggestions
1 parent 00c712a commit 053dfc9

File tree

6 files changed

+48
-28
lines changed

6 files changed

+48
-28
lines changed

src/main/java/org/utplsql/cli/Cli.java

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -18,6 +18,8 @@ public static void main(String[] args) {
1818
}
1919

2020
static int runWithExitCode( String[] args ) {
21+
22+
LoggerConfiguration.configure(LoggerConfiguration.ConfigLevel.NONE);
2123
LocaleInitializer.initLocale();
2224

2325
JCommander jc = new JCommander();

src/main/java/org/utplsql/cli/LoggerConfiguration.java

Lines changed: 34 additions & 21 deletions
Original file line numberDiff line numberDiff line change
@@ -8,44 +8,57 @@
88
import ch.qos.logback.core.ConsoleAppender;
99
import com.zaxxer.hikari.HikariDataSource;
1010
import org.slf4j.LoggerFactory;
11-
import org.utplsql.api.TestRunner;
1211

1312
class LoggerConfiguration {
13+
14+
public enum ConfigLevel {
15+
BASIC, NONE, DEBUG
16+
}
17+
1418
private LoggerConfiguration() {
1519
throw new UnsupportedOperationException();
1620
}
17-
static void configure(boolean silent, boolean debug) {
18-
if ( silent )
19-
configureSilent();
20-
else if ( debug )
21-
configureDebug();
22-
else
23-
configureDefault();
21+
22+
static void configure(ConfigLevel level) {
23+
switch ( level ) {
24+
case BASIC:
25+
configureInfo();
26+
break;
27+
case NONE:
28+
configureSilent();
29+
break;
30+
case DEBUG:
31+
configureDebug();
32+
break;
33+
}
2434
}
2535

2636
private static void configureSilent() {
27-
Logger root = (Logger)LoggerFactory.getLogger(Logger.ROOT_LOGGER_NAME);
28-
root.setLevel(Level.OFF);
37+
setRootLoggerLevel(Level.OFF);
2938
}
3039

31-
private static void configureDefault() {
32-
Logger root = (Logger)LoggerFactory.getLogger(Logger.ROOT_LOGGER_NAME);
33-
root.setLevel(Level.INFO);
34-
35-
((Logger) LoggerFactory.getLogger(HikariDataSource.class)).setLevel(Level.OFF);
36-
((Logger) LoggerFactory.getLogger(TestRunner.class)).setLevel(Level.ERROR);
37-
38-
setSingleConsoleAppenderWithLayout(root, "%msg%n");
40+
private static void configureInfo() {
41+
setRootLoggerLevel(Level.INFO);
42+
muteHikariLogger();
43+
setSingleConsoleAppenderWithLayout("%msg%n");
3944
}
4045

4146
private static void configureDebug() {
47+
setRootLoggerLevel(Level.DEBUG);
48+
setSingleConsoleAppenderWithLayout("%d{yyyy-MM-dd HH:mm:ss} [%thread] %-5level %logger{36} - %msg%n");
49+
}
50+
51+
private static void setRootLoggerLevel( Level level ) {
4252
Logger root = (Logger)LoggerFactory.getLogger(Logger.ROOT_LOGGER_NAME);
43-
root.setLevel(Level.DEBUG);
53+
root.setLevel(level);
54+
}
4455

45-
setSingleConsoleAppenderWithLayout(root, "%d{yyyy-MM-dd HH:mm:ss} [%thread] %-5level %logger{36} - %msg%n");
56+
private static void muteHikariLogger() {
57+
((Logger) LoggerFactory.getLogger(HikariDataSource.class)).setLevel(Level.OFF);
4658
}
4759

48-
private static void setSingleConsoleAppenderWithLayout( Logger logger, String patternLayout ) {
60+
private static void setSingleConsoleAppenderWithLayout( String patternLayout ) {
61+
Logger logger = (Logger)LoggerFactory.getLogger(Logger.ROOT_LOGGER_NAME);
4962
LoggerContext lc = (LoggerContext) LoggerFactory.getILoggerFactory();
5063

5164
PatternLayoutEncoder ple = new PatternLayoutEncoder();

src/main/java/org/utplsql/cli/ReportersCommand.java

Lines changed: 0 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -36,8 +36,6 @@ private ConnectionInfo getConnectionInfo() {
3636
@Override
3737
public int run() {
3838

39-
LoggerConfiguration.configure(true, false );
40-
4139
try {
4240
DataSource ds = DataSourceProvider.getDataSource(getConnectionInfo(), 1);
4341
try (Connection con = ds.getConnection()) {

src/main/java/org/utplsql/cli/RunCommand.java

Lines changed: 11 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -125,7 +125,16 @@ public List<String> getTestPaths() {
125125
}
126126

127127
void init() {
128-
LoggerConfiguration.configure(logSilent, logDebug);
128+
129+
LoggerConfiguration.ConfigLevel level = LoggerConfiguration.ConfigLevel.BASIC;
130+
if ( logSilent ) {
131+
level = LoggerConfiguration.ConfigLevel.NONE;
132+
}
133+
else if ( logDebug ) {
134+
level = LoggerConfiguration.ConfigLevel.DEBUG;
135+
}
136+
137+
LoggerConfiguration.configure(level);
129138
}
130139

131140
public int run() {
@@ -251,7 +260,7 @@ private void initDatabase(DataSource dataSource) throws SQLException {
251260
// First of all do a compatibility check and fail-fast
252261
compatibilityProxy = checkFrameworkCompatibility(conn);
253262

254-
logger.info("Successfully connected to database. UtPLSQL core: " + compatibilityProxy.getDatabaseVersion());
263+
logger.info("Successfully connected to database. UtPLSQL core: {}", compatibilityProxy.getDatabaseVersion());
255264
logger.info("Oracle-Version: {}", new DefaultDatabaseInformation().getOracleVersion(conn));
256265
}
257266
catch (SQLException e) {

src/main/java/org/utplsql/cli/VersionInfoCommand.java

Lines changed: 0 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -34,8 +34,6 @@ public ConnectionInfo getConnectionInfo() {
3434

3535
public int run() {
3636

37-
LoggerConfiguration.configure(true, false );
38-
3937
System.out.println(CliVersionInfo.getInfo());
4038
System.out.println(JavaApiVersionInfo.getInfo());
4139

src/test/java/org/utplsql/cli/RunCommandLogLevelTest.java renamed to src/test/java/org/utplsql/cli/RunCommandConfigLevelTest.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -7,7 +7,7 @@
77

88
import static org.junit.jupiter.api.Assertions.assertEquals;
99

10-
public class RunCommandLogLevelTest {
10+
public class RunCommandConfigLevelTest {
1111

1212
private Logger getRootLogger() {
1313
return (Logger)LoggerFactory.getLogger(Logger.ROOT_LOGGER_NAME);

0 commit comments

Comments
 (0)