From cbf7c033b2ae020b36fa4a77093ace3a4257c4ee Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Timo=20Westk=C3=A4mper?= Date: Wed, 24 Feb 2010 12:45:05 +0000 Subject: [PATCH] improvements based on Sonar checks --- .../query/collections/CustomQueryable.java | 2 +- .../collections/impl/ColQuerySerializer.java | 2 +- .../mysema/query/codegen/TypeCategory.java | 7 +-- .../query/serialization/SerializerBase.java | 52 +++++++++++-------- .../query/support/ProjectableAdapter.java | 6 ++- .../query/types/expr/EBooleanConst.java | 2 +- .../main/java/com/mysema/util/MathUtils.java | 28 ++++++---- .../com/mysema/query/hql/HQLSerializer.java | 2 +- .../hibernate/sql/HibernateSQLSerializer.java | 2 +- 9 files changed, 63 insertions(+), 40 deletions(-) diff --git a/querydsl-collections/src/main/java/com/mysema/query/collections/CustomQueryable.java b/querydsl-collections/src/main/java/com/mysema/query/collections/CustomQueryable.java index 7e05d1791..fbb465486 100644 --- a/querydsl-collections/src/main/java/com/mysema/query/collections/CustomQueryable.java +++ b/querydsl-collections/src/main/java/com/mysema/query/collections/CustomQueryable.java @@ -29,7 +29,7 @@ public abstract class CustomQueryable> public CustomQueryable(QueryMetadata metadata, EvaluatorFactory evaluatorFactory) { super(new ColQueryImpl(metadata, evaluatorFactory)); - query = (ColQueryImpl) projectable; + query = (ColQueryImpl) getProjectable(); } protected QueryMetadata getMetadata() { diff --git a/querydsl-collections/src/main/java/com/mysema/query/collections/impl/ColQuerySerializer.java b/querydsl-collections/src/main/java/com/mysema/query/collections/impl/ColQuerySerializer.java index bfe3b1384..8af098670 100644 --- a/querydsl-collections/src/main/java/com/mysema/query/collections/impl/ColQuerySerializer.java +++ b/querydsl-collections/src/main/java/com/mysema/query/collections/impl/ColQuerySerializer.java @@ -55,7 +55,7 @@ public class ColQuerySerializer extends SerializerBase { args.add((Expr)path.getMetadata().getParent()); } args.add(path.getMetadata().getExpression()); - Template template = templates.getTemplate(pathType); + Template template = getTemplate(pathType); for (Template.Element element : template.getElements()){ if (element.getStaticText() != null){ append(element.getStaticText()); diff --git a/querydsl-core/src/main/java/com/mysema/query/codegen/TypeCategory.java b/querydsl-core/src/main/java/com/mysema/query/codegen/TypeCategory.java index 549714cf7..2183f9bb8 100644 --- a/querydsl-core/src/main/java/com/mysema/query/codegen/TypeCategory.java +++ b/querydsl-core/src/main/java/com/mysema/query/codegen/TypeCategory.java @@ -121,12 +121,13 @@ public enum TypeCategory { * @return */ public boolean isSubCategoryOf(TypeCategory ancestor){ - if (this == ancestor) + if (this == ancestor){ return true; - else if (superType == null) + }else if (superType == null){ return false; - else + }else{ return superType == ancestor || superType.isSubCategoryOf(ancestor); + } } public static TypeCategory get(String className){ diff --git a/querydsl-core/src/main/java/com/mysema/query/serialization/SerializerBase.java b/querydsl-core/src/main/java/com/mysema/query/serialization/SerializerBase.java index 973d52777..c348d3972 100644 --- a/querydsl-core/src/main/java/com/mysema/query/serialization/SerializerBase.java +++ b/querydsl-core/src/main/java/com/mysema/query/serialization/SerializerBase.java @@ -33,32 +33,40 @@ import com.mysema.query.types.path.PathType; */ public abstract class SerializerBase> extends VisitorBase { - private final StringBuilder builder = new StringBuilder(); - - private final Map constantToLabel = new HashMap(); - - protected String constantPrefix = "a"; - - protected final Templates templates; - @SuppressWarnings("unchecked") private final SubType _this = (SubType) this; + private final StringBuilder builder = new StringBuilder(); + + private String constantPrefix = "a"; + + private final Map constantToLabel = new HashMap(); + + private final Templates templates; + public SerializerBase(Templates patterns) { this.templates = Assert.notNull(patterns,"patterns is null"); - } - + } + public SubType append(String... str) { for (String s : str) { builder.append(s); } return _this; } - + + protected String getConstantPrefix() { + return constantPrefix; + } + public Map getConstantToLabel() { return constantToLabel; } + protected Template getTemplate(Operator op) { + return templates.getTemplate(op); + } + public final SubType handle(String sep, List> expressions) { boolean first = true; for (Expr expr : expressions) { @@ -80,6 +88,17 @@ public abstract class SerializerBase> ex return builder.toString(); } + @Override + public void visit(Constant expr) { + if (!constantToLabel.containsKey(expr.getConstant())) { + String constLabel = constantPrefix + (constantToLabel.size() + 1); + constantToLabel.put(expr.getConstant(), constLabel); + append(constLabel); + } else { + append(constantToLabel.get(expr.getConstant())); + } + } + @Override public void visit(Custom expr) { for (Template.Element element : expr.getTemplate().getElements()){ @@ -97,17 +116,6 @@ public abstract class SerializerBase> ex handle(", ", oa.getArgs()).append("}"); } - @Override - public void visit(Constant expr) { - if (!constantToLabel.containsKey(expr.getConstant())) { - String constLabel = constantPrefix + (constantToLabel.size() + 1); - constantToLabel.put(expr.getConstant(), constLabel); - append(constLabel); - } else { - append(constantToLabel.get(expr.getConstant())); - } - } - @Override public void visit(EConstructor expr) { append("new ").append(expr.getType().getName()).append("("); diff --git a/querydsl-core/src/main/java/com/mysema/query/support/ProjectableAdapter.java b/querydsl-core/src/main/java/com/mysema/query/support/ProjectableAdapter.java index 8fa695329..e58b30905 100644 --- a/querydsl-core/src/main/java/com/mysema/query/support/ProjectableAdapter.java +++ b/querydsl-core/src/main/java/com/mysema/query/support/ProjectableAdapter.java @@ -22,11 +22,15 @@ import com.mysema.query.types.expr.Expr; */ public class ProjectableAdapter implements Projectable { - protected final Projectable projectable; + private final Projectable projectable; public ProjectableAdapter(Projectable projectable) { this.projectable = Assert.notNull(projectable,"projectable is null"); } + + protected Projectable getProjectable(){ + return projectable; + } @Override public long count() { diff --git a/querydsl-core/src/main/java/com/mysema/query/types/expr/EBooleanConst.java b/querydsl-core/src/main/java/com/mysema/query/types/expr/EBooleanConst.java index 8b193f298..3ee41551e 100644 --- a/querydsl-core/src/main/java/com/mysema/query/types/expr/EBooleanConst.java +++ b/querydsl-core/src/main/java/com/mysema/query/types/expr/EBooleanConst.java @@ -14,7 +14,7 @@ import com.mysema.query.types.Visitor; * */ @SuppressWarnings("serial") -public class EBooleanConst extends EBoolean implements Constant{ +public final class EBooleanConst extends EBoolean implements Constant{ public static final EBoolean FALSE = new EBooleanConst(Boolean.FALSE); diff --git a/querydsl-core/src/main/java/com/mysema/util/MathUtils.java b/querydsl-core/src/main/java/com/mysema/util/MathUtils.java index 520ccf24a..10596fe3f 100644 --- a/querydsl-core/src/main/java/com/mysema/util/MathUtils.java +++ b/querydsl-core/src/main/java/com/mysema/util/MathUtils.java @@ -27,15 +27,25 @@ public final class MathUtils { @SuppressWarnings("unchecked") private static > D cast(BigDecimal num, Class type){ Number rv; - if (type.equals(Double.class)) rv = num.byteValue(); - else if (type.equals(Double.class)) rv = num.doubleValue(); - else if (type.equals(Float.class)) rv = num.floatValue(); - else if (type.equals(Integer.class)) rv = num.intValue(); - else if (type.equals(Long.class)) rv = num.longValue(); - else if (type.equals(Short.class)) rv = num.shortValue(); - else if (type.equals(BigDecimal.class)) rv = num; - else if (type.equals(BigInteger.class)) rv = num.toBigInteger(); - else throw new IllegalArgumentException(String.format("Illegal type : %s", type.getSimpleName())); + if (type.equals(Double.class)){ + rv = num.byteValue(); + }else if (type.equals(Double.class)){ + rv = num.doubleValue(); + }else if (type.equals(Float.class)){ + rv = num.floatValue(); + }else if (type.equals(Integer.class)){ + rv = num.intValue(); + }else if (type.equals(Long.class)){ + rv = num.longValue(); + }else if (type.equals(Short.class)){ + rv = num.shortValue(); + }else if (type.equals(BigDecimal.class)){ + rv = num; + }else if (type.equals(BigInteger.class)){ + rv = num.toBigInteger(); + }else{ + throw new IllegalArgumentException(String.format("Illegal type : %s", type.getSimpleName())); + } return (D) rv; } } diff --git a/querydsl-hql/src/main/java/com/mysema/query/hql/HQLSerializer.java b/querydsl-hql/src/main/java/com/mysema/query/hql/HQLSerializer.java index 5eaaac9b9..c4be24ba2 100644 --- a/querydsl-hql/src/main/java/com/mysema/query/hql/HQLSerializer.java +++ b/querydsl-hql/src/main/java/com/mysema/query/hql/HQLSerializer.java @@ -176,7 +176,7 @@ public class HQLSerializer extends SerializerBase { } append(":"); if (!getConstantToLabel().containsKey(expr.getConstant())) { - String constLabel = constantPrefix + (getConstantToLabel().size()+1); + String constLabel = getConstantPrefix() + (getConstantToLabel().size()+1); getConstantToLabel().put(expr.getConstant(), constLabel); append(constLabel); } else { diff --git a/querydsl-hql/src/main/java/com/mysema/query/hql/hibernate/sql/HibernateSQLSerializer.java b/querydsl-hql/src/main/java/com/mysema/query/hql/hibernate/sql/HibernateSQLSerializer.java index 7befbeacf..e829ac629 100644 --- a/querydsl-hql/src/main/java/com/mysema/query/hql/hibernate/sql/HibernateSQLSerializer.java +++ b/querydsl-hql/src/main/java/com/mysema/query/hql/hibernate/sql/HibernateSQLSerializer.java @@ -28,7 +28,7 @@ public class HibernateSQLSerializer extends SQLSerializer{ @Override public void visit(Constant expr) { if (!getConstantToLabel().containsKey(expr.getConstant())) { - String constLabel = constantPrefix + (getConstantToLabel().size() + 1); + String constLabel = getConstantPrefix() + (getConstantToLabel().size() + 1); getConstantToLabel().put(expr.getConstant(), constLabel); append(":"+constLabel); } else {