This is an automated email from the ASF dual-hosted git repository. abulatski pushed a commit to branch master in repository https://gitbox.apache.org/repos/asf/cayenne.git
The following commit(s) were added to refs/heads/master by this push: new 5be5235 CompactSlf4jJdbcEventLogger refactoring 5be5235 is described below commit 5be5235ed1c02589b6300e9729cf3c308c0173e8 Author: Arseni Bulatski <ancars...@gmail.com> AuthorDate: Fri Mar 22 11:16:12 2019 +0300 CompactSlf4jJdbcEventLogger refactoring --- .../cayenne/log/CompactSlf4jJdbcEventLogger.java | 25 ++++++++++++---------- 1 file changed, 14 insertions(+), 11 deletions(-) diff --git a/cayenne-server/src/main/java/org/apache/cayenne/log/CompactSlf4jJdbcEventLogger.java b/cayenne-server/src/main/java/org/apache/cayenne/log/CompactSlf4jJdbcEventLogger.java index c74cd7a..3879def 100644 --- a/cayenne-server/src/main/java/org/apache/cayenne/log/CompactSlf4jJdbcEventLogger.java +++ b/cayenne-server/src/main/java/org/apache/cayenne/log/CompactSlf4jJdbcEventLogger.java @@ -18,12 +18,6 @@ ****************************************************************/ package org.apache.cayenne.log; -import org.apache.cayenne.access.translator.DbAttributeBinding; -import org.apache.cayenne.access.translator.ParameterBinding; -import org.apache.cayenne.configuration.RuntimeProperties; -import org.apache.cayenne.di.Inject; -import org.apache.cayenne.map.DbAttribute; - import java.util.ArrayList; import java.util.Arrays; import java.util.HashMap; @@ -32,6 +26,12 @@ import java.util.Map; import java.util.regex.Pattern; import java.util.stream.Collectors; +import org.apache.cayenne.access.translator.DbAttributeBinding; +import org.apache.cayenne.access.translator.ParameterBinding; +import org.apache.cayenne.configuration.RuntimeProperties; +import org.apache.cayenne.di.Inject; +import org.apache.cayenne.map.DbAttribute; + /** * @since 4.1 */ @@ -42,6 +42,8 @@ public class CompactSlf4jJdbcEventLogger extends Slf4jJdbcEventLogger { private static final String FROM = "FROM"; private static final char SPACE = ' '; + private static final Pattern UNION_PATTERN = Pattern.compile(UNION, Pattern.CASE_INSENSITIVE); + public CompactSlf4jJdbcEventLogger(@Inject RuntimeProperties runtimeProperties) { super(runtimeProperties); } @@ -53,7 +55,7 @@ public class CompactSlf4jJdbcEventLogger extends Slf4jJdbcEventLogger { } String str; - if (sql.toUpperCase().contains(UNION)) { + if (UNION_PATTERN.matcher(sql).find()) { str = processUnionSql(sql); } else { str = trimSqlSelectColumns(sql); @@ -63,8 +65,8 @@ public class CompactSlf4jJdbcEventLogger extends Slf4jJdbcEventLogger { } protected String processUnionSql(String sql) { - String modified = Pattern.compile(UNION.toLowerCase(), Pattern.CASE_INSENSITIVE) - .matcher(sql).replaceAll(UNION); + String modified = UNION_PATTERN.matcher(sql) + .replaceAll(UNION); String[] queries = modified.split(UNION); return Arrays.stream(queries) .map(this::trimSqlSelectColumns) @@ -72,12 +74,13 @@ public class CompactSlf4jJdbcEventLogger extends Slf4jJdbcEventLogger { } protected String trimSqlSelectColumns(String sql) { - int selectIndex = sql.toUpperCase().indexOf(SELECT); + String str = sql.toUpperCase(); + int selectIndex = str.indexOf(SELECT); if (selectIndex == -1) { return sql; } selectIndex += SELECT.length(); - int fromIndex = sql.toUpperCase().indexOf(FROM); + int fromIndex = str.indexOf(FROM); String columns = sql.substring(selectIndex, fromIndex); String[] columnsArray = columns.split(","); if (columnsArray.length <= 3) {