From af2da8c0d41c91acfeb492ad8fd9bf654ba97dd9 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Timo=20Westk=C3=A4mper?= Date: Fri, 16 Oct 2015 21:41:25 +0300 Subject: [PATCH] Get rid of query level normalization --- .../querydsl/core/support/Normalization.java | 98 -------------- .../querydsl/core/support/SerializerBase.java | 14 +- .../core/support/NormalizationTest.java | 122 ------------------ 3 files changed, 6 insertions(+), 228 deletions(-) delete mode 100644 querydsl-core/src/main/java/com/querydsl/core/support/Normalization.java delete mode 100644 querydsl-core/src/test/java/com/querydsl/core/support/NormalizationTest.java diff --git a/querydsl-core/src/main/java/com/querydsl/core/support/Normalization.java b/querydsl-core/src/main/java/com/querydsl/core/support/Normalization.java deleted file mode 100644 index 68b528bba..000000000 --- a/querydsl-core/src/main/java/com/querydsl/core/support/Normalization.java +++ /dev/null @@ -1,98 +0,0 @@ -/* - * Copyright 2015, The Querydsl Team (http://www.querydsl.com/team) - * - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * http://www.apache.org/licenses/LICENSE-2.0 - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ -package com.querydsl.core.support; - -import java.math.BigDecimal; -import java.math.RoundingMode; -import java.util.regex.Matcher; -import java.util.regex.Pattern; - -final class Normalization { - - private static final String WS = "\\s*"; - - private static final String NUMBER = "([\\+\\-]?\\d+\\.?\\d*)(?!\\p{Alpha})"; - - // TODO simplify - private static final Pattern FULL_OPERATION = Pattern.compile( - "(?> implements Vis private final Templates templates; - private boolean normalize = true; - private boolean strict = true; public SerializerBase(Templates templates) { @@ -170,8 +168,12 @@ public abstract class SerializerBase> implements Vis this.anonParamPrefix = prefix; } + /** + * Not used anymore + */ + @Deprecated public void setNormalize(boolean normalize) { - this.normalize = normalize; + // not used anymore } public void setStrict(boolean strict) { @@ -180,11 +182,7 @@ public abstract class SerializerBase> implements Vis @Override public String toString() { - if (normalize) { - return Normalization.normalize(builder.toString()); - } else { - return builder.toString(); - } + return builder.toString(); } @Override diff --git a/querydsl-core/src/test/java/com/querydsl/core/support/NormalizationTest.java b/querydsl-core/src/test/java/com/querydsl/core/support/NormalizationTest.java deleted file mode 100644 index 23b58d15f..000000000 --- a/querydsl-core/src/test/java/com/querydsl/core/support/NormalizationTest.java +++ /dev/null @@ -1,122 +0,0 @@ -package com.querydsl.core.support; - -import static org.junit.Assert.assertEquals; - -import org.junit.Test; -import org.junit.experimental.categories.Category; - -import com.querydsl.core.testutil.Benchmark; -import com.querydsl.core.testutil.Performance; -import com.querydsl.core.testutil.Runner; - -public class NormalizationTest { - - @Test - @Category(Performance.class) - public void Performance() throws Exception { - Runner.run("NormalizationTest Performance", new Benchmark() { - - @Override - public void run(int times) throws Exception { - for (int i = 0; i < times; i++) { - Normalization.normalize("select name from companies where id = ?"); - } - } - }); - } - - @Test - public void Variables() { - assertEquals("var1 + 3", Normalization.normalize("var1 + 3")); - } - - @Test - public void Arithmetic() { - assertEquals("3", Normalization.normalize("1 - 2 + 4")); - } - - @Test - public void Normalize_Addition() { - assertEquals("3", Normalization.normalize("1+2")); - assertEquals("where 3 = 3", Normalization.normalize("where 1+2 = 3")); - assertEquals("where 3.3 = 3.3", Normalization.normalize("where 1.1+2.2 = 3.3")); - assertEquals("where 3.3 = 3.3", Normalization.normalize("where 1.1 + 2.2 = 3.3")); - } - - @Test - public void Normalize_Subtraction() { - assertEquals("3", Normalization.normalize("5-2")); - assertEquals("where 3 = 3", Normalization.normalize("where 5-2 = 3")); - assertEquals("where 3.3 = 3.3", Normalization.normalize("where 5.5-2.2 = 3.3")); - assertEquals("where 3.3 = 3.3", Normalization.normalize("where 5.5 - 2.2 = 3.3")); - } - - @Test - public void Normalize_Multiplication() { - assertEquals("10", Normalization.normalize("5*2")); - assertEquals("where 10 = 10", Normalization.normalize("where 5*2 = 10")); - assertEquals("where 11 = 11", Normalization.normalize("where 5.5*2 = 11")); - assertEquals("where 10.8 = 10.8", Normalization.normalize("where 5.4 * 2 = 10.8")); - assertEquals("where 9 = 9 and 13 = 13", Normalization.normalize("where 2 * 3 + 3 = 9 and 5 + 4 * 2 = 13")); - } - - @Test - public void Normalize_Division() { - assertEquals("2.5", Normalization.normalize("5/2")); - assertEquals("where 2.5 = 2.5", Normalization.normalize("where 5/2 = 2.5")); - assertEquals("where 2.6 = 2.6", Normalization.normalize("where 5.2/2 = 2.6")); - assertEquals("where 2.6 = 2.6", Normalization.normalize("where 5.2 / 2 = 2.6")); - } - - @Test - public void Mixed() { - assertEquals("13", Normalization.normalize("2 * 5 + 3")); - assertEquals("17", Normalization.normalize("2 + 5 * 3")); - assertEquals("-2.5", Normalization.normalize("2.5 * -1")); - assertEquals("hours * 2 + 3", Normalization.normalize("hours * 2 + 3")); - assertEquals("2 + 3 * hours", Normalization.normalize("2 + 3 * hours")); - assertEquals("2 + 3 * 0hours", Normalization.normalize("2 + 3 * 0hours")); - assertEquals("a like '1 + 2 ' and b like '2 * 3'", Normalization.normalize("a like '1 + 2 ' and b like '2 * 3'")); - } - - @Test - public void PI() { - assertEquals("0.1591549431", Normalization.normalize("0.5 / " + Math.PI)); - } - - @Test - public void DateTimeLiterals() { - assertEquals("'1980-10-10'", Normalization.normalize("'1980-10-10'")); - } - - @Test - public void DateTimeLiterals2() { - assertEquals("\"1980-10-10\"", Normalization.normalize("\"1980-10-10\"")); - } - - @Test - public void Math1() { - assertEquals("fn(1)", Normalization.normalize("fn(-1+2)")); - assertEquals("fn(3)", Normalization.normalize("fn(1--2)")); - } - - @Test - public void Substring() { - assertEquals("substring(cat.name,1,locate(?1,cat.name)-1)", - Normalization.normalize("substring(cat.name,0+1,locate(?1,cat.name)-1-0)")); - } - - @Test - public void Parameters() { - assertEquals("?1 + 1", Normalization.normalize("?1 + 1")); - } - - @Test - public void Literals() { - assertEquals("'INPS-ISET-0000-12345678A'", Normalization.normalize("'INPS-ISET-0000-12345678A'")); - assertEquals("'INPS-ISET-0000X00000000A'", Normalization.normalize("'INPS-ISET-0000X00000000A'")); - assertEquals("'INPS-ISET-0000-00000000A'", Normalization.normalize("'INPS-ISET-0000-00000000A'")); - - assertEquals("column = 'INPS-ISET-0000-00000000A' limit 1", Normalization.normalize("column = 'INPS-ISET-0000-00000000A' limit 1")); - } -}