You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@cayenne.apache.org by ab...@apache.org on 2019/03/22 08:24:25 UTC

[cayenne] branch STABLE-4.1 updated: CompactSlf4jJdbcEventLogger refactoring

This is an automated email from the ASF dual-hosted git repository.

abulatski pushed a commit to branch STABLE-4.1
in repository https://gitbox.apache.org/repos/asf/cayenne.git


The following commit(s) were added to refs/heads/STABLE-4.1 by this push:
     new 92d0863  CompactSlf4jJdbcEventLogger refactoring
92d0863 is described below

commit 92d0863cb9b963cad17df3fe3792d9fb9a8e662d
Author: Arseni Bulatski <an...@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) {