#1738 - Refactor simplify switch and various

This commit is contained in:
rob bygrave
2019-06-28 23:48:03 +12:00
parent e6c9f151c1
commit 8bfae9deef
17 changed files with 40 additions and 79 deletions
@@ -49,13 +49,12 @@ class PathPropertiesParser {
private String getPath() {
do {
char c1 = chars[pos++];
switch (c1) {
case '(':
return currentWord();
default:
if (pos == 1) {
return "";
}
if (c1 == '(') {
return currentWord();
} else {
if (pos == 1) {
return "";
}
}
} while (pos < eof);
throw new RuntimeException("Hit EOF while reading sectionTitle from " + startPos);
@@ -75,7 +75,7 @@ public class TransactionEvent implements Serializable {
* Return the list of PersistRequestBean's for this transaction.
*/
public List<PersistRequestBean<?>> getListenerNotify() {
return (listenerNotify == null) ? null : listenerNotify;
return listenerNotify;
}
public TransactionEventTable getEventTables() {
@@ -60,10 +60,7 @@ class LastMigration {
}
private static boolean includeSqlFile(String lowerFileName) {
if (lowerFileName.startsWith("r") || lowerFileName.startsWith("i") || !lowerFileName.endsWith(SQL)) {
return false;
}
return true;
return !lowerFileName.startsWith("r") && !lowerFileName.startsWith("i") && lowerFileName.endsWith(SQL);
}
private static boolean includeModelFile(String lowerFileName) {
@@ -55,10 +55,7 @@ public class DefaultCallStackFactory implements CallStackFactory {
if (element.getClassName().startsWith(IO_EBEAN)) {
return true;
}
if (element.getMethodName().startsWith("_ebean_")) {
return true;
}
return false;
return element.getMethodName().startsWith("_ebean_");
}
private CallStack createCallStack(StackTraceElement[] finalTrace) {
@@ -328,12 +328,10 @@ public class InternalConfiguration {
private MultiValueBind createMultiValueBind(Platform platform) {
// only Postgres at this stage
switch (platform) {
case POSTGRES:
return new PostgresMultiValueBind();
default:
return new MultiValueBind();
if (platform == Platform.POSTGRES) {
return new PostgresMultiValueBind();
}
return new MultiValueBind();
}
public SpiJsonContext createJsonContext(SpiEbeanServer server) {
@@ -1326,10 +1326,8 @@ public final class PersistRequestBean<T> extends PersistRequest implements BeanP
*/
public void docStorePersist() {
idValue = beanDescriptor.getId(entityBean);
switch (type) {
case UPDATE:
dirtyProperties = intercept.getDirtyProperties();
break;
if (type == Type.UPDATE) {
dirtyProperties = intercept.getDirtyProperties();
}
// processing now so set IGNORE (unlike DB + DocStore processing with post-commit)
docStoreMode = DocStoreMode.IGNORE;
@@ -31,13 +31,7 @@ public class DeployPropertyParserMap extends DeployParser {
@Override
public String getDeployWord(String expression) {
String deployExpr = map.get(expression);
if (deployExpr == null) {
return null;
} else {
return deployExpr;
}
return map.get(expression);
}
}
@@ -27,17 +27,19 @@ public final class DeployUpdateParser extends DeployParser {
public String convertWord() {
String dbWord = getDeployWord(word);
if (dbWord != null) {
return dbWord;
}
// maybe tableAlias.propertyName
return convertSubword(0, word, null);
return convertSubword(word);
}
private String convertSubword(int start, String currentWord, StringBuilder localBuffer) {
while (true) {
private String convertSubword(String currentWord) {
int start = 0;
StringBuilder localBuffer = null;
while (true) {
int dotPos = currentWord.indexOf('.', start);
if (start == 0 && dotPos == -1) {
return currentWord;
@@ -63,15 +65,11 @@ public final class DeployUpdateParser extends DeployParser {
start = dotPos + 1;
String remainder = currentWord.substring(start, currentWord.length());
//String dbWord = deployMap.get(remainder.toLowerCase());
String dbWord = getDeployWord(remainder);
if (dbWord != null) {
// we have found a match for the remainder
localBuffer.append(dbWord);
return localBuffer.toString();
} else {
//
}
}
}
@@ -84,11 +82,7 @@ public final class DeployUpdateParser extends DeployParser {
}
ElPropertyDeploy elProp = beanDescriptor.getElPropertyDeploy(expression);
if (elProp != null) {
return elProp.getDbColumn();
} else {
return null;
}
return elProp != null ? elProp.getDbColumn() : null;
}
}
@@ -92,8 +92,7 @@ class DetermineAggPath {
} else if (details instanceof DeployBeanPropertyAssocOne<?>) {
DeployBeanPropertyAssocOne<?> one = (DeployBeanPropertyAssocOne<?>) details;
DeployBeanDescriptor<?> targetDesc = one.getTargetDeploy();
desc = targetDesc;
desc = one.getTargetDeploy();
pos = pos + 1;
continue;
}
@@ -303,9 +303,7 @@ public class DefaultExampleExpression implements SpiExpression, ExampleExpressio
*/
private boolean isZero(Object value) {
if (value instanceof Number) {
Number num = (Number) value;
double doubleValue = num.doubleValue();
if (doubleValue == 0) {
if (((Number) value).doubleValue() == 0) {
return true;
}
}
@@ -2,6 +2,7 @@ package io.ebeaninternal.server.expression;
import java.util.Collection;
import java.util.Iterator;
import java.util.Objects;
/**
* Utility to help isSame methods.
@@ -12,14 +13,14 @@ public class Same {
* Return true if both values are null or both an not null.
*/
public static boolean sameByNull(Object v1, Object v2) {
return v1 == null ? v2 == null : v2 != null;
return (v1 == null) == (v2 == null);
}
/**
* Null safe equals check.
*/
public static boolean sameByValue(Object v1, Object v2) {
return v1 == null ? v2 == null : v1.equals(v2);
return Objects.equals(v1, v2);
}
/**
@@ -261,10 +261,7 @@ class EqlAdapter<T> extends EQLBaseListener {
}
private boolean isValue(String text) {
if (text.length() == 1 && (text.equals("(") || text.equals(")") || text.equals(","))) {
return false;
}
return true;
return text.length() != 1 || (!text.equals("(") && !text.equals(")") && !text.equals(","));
}
@Override
@@ -72,13 +72,8 @@ public final class DeleteMeta {
tenantId.dmlBind(bind, bean);
}
switch (persist.getConcurrencyMode()) {
case VERSION:
version.dmlBind(bind, bean);
break;
default:
break;
if (persist.getConcurrencyMode() == ConcurrencyMode.VERSION) {
version.dmlBind(bind, bean);
}
}
@@ -74,13 +74,8 @@ public final class UpdateMeta {
tenantId.dmlBind(bind, bean);
}
switch (persist.getConcurrencyMode()) {
case VERSION:
version.dmlBind(bind, bean);
break;
default:
break;
if (persist.getConcurrencyMode() == ConcurrencyMode.VERSION) {
version.dmlBind(bind, bean);
}
}
@@ -128,7 +128,7 @@ class CQueryBuilder {
}
// cache the query plan
queryPlan = new CQueryPlan(request, sql, sqlTree, false, false, predicates.getLogWhereSql());
queryPlan = new CQueryPlan(request, sql, sqlTree, false, predicates.getLogWhereSql());
request.putQueryPlan(queryPlan);
return new CQueryUpdate(type, request, predicates, queryPlan);
}
@@ -213,7 +213,7 @@ class CQueryBuilder {
SqlTree sqlTree = createSqlTree(request, predicates);
SqlLimitResponse s = buildSql(null, request, predicates, sqlTree);
queryPlan = new CQueryPlan(request, s.getSql(), sqlTree, false, s.isIncludesRowNumberColumn(), predicates.getLogWhereSql());
queryPlan = new CQueryPlan(request, s.getSql(), sqlTree, s.isIncludesRowNumberColumn(), predicates.getLogWhereSql());
request.putQueryPlan(queryPlan);
return new CQueryFetchSingleAttribute(request, predicates, queryPlan, query.isCountDistinct());
}
@@ -314,7 +314,7 @@ class CQueryBuilder {
}
// cache the query plan
queryPlan = new CQueryPlan(request, sql, sqlTree, false, s.isIncludesRowNumberColumn(), predicates.getLogWhereSql());
queryPlan = new CQueryPlan(request, sql, sqlTree, s.isIncludesRowNumberColumn(), predicates.getLogWhereSql());
request.putQueryPlan(queryPlan);
return new CQueryRowCount(queryPlan, request, predicates);
@@ -133,7 +133,7 @@ public class CQueryPlan {
/**
* Create a query plan for a raw sql query.
*/
CQueryPlan(OrmQueryRequest<?> request, String sql, SqlTree sqlTree, boolean rawSql, boolean rowNumberIncluded, String logWhereSql) {
CQueryPlan(OrmQueryRequest<?> request, String sql, SqlTree sqlTree, boolean rowNumberIncluded, String logWhereSql) {
this.server = request.getServer();
this.dataTimeZone = server.getDataTimeZone();
@@ -143,18 +143,18 @@ public class CQueryPlan {
this.label = query.getPlanLabel();
this.name = deriveName(label, query.getType());
this.location = location();
this.planKey = buildPlanKey(sql, rawSql, rowNumberIncluded, logWhereSql);
this.planKey = buildPlanKey(sql, false, rowNumberIncluded, logWhereSql);
this.autoTuned = false;
this.asOfTableCount = 0;
this.sql = sql;
this.sqlHash = md5Hash(sql);
this.sqlTree = sqlTree;
this.rawSql = rawSql;
this.rawSql = false;
this.rowNumberIncluded = rowNumberIncluded;
this.logWhereSql = logWhereSql;
this.encryptedProps = sqlTree.getEncryptedProps();
this.stats = new CQueryPlanStats(this, server.isCollectQueryOrigins());
this.dependentTables = (rawSql) ? Collections.emptySet() : sqlTree.dependentTables();
this.dependentTables = sqlTree.dependentTables();
this.bindCapture = initBindCapture(server.getServerConfig(), query);
}
@@ -1895,8 +1895,7 @@ public class DefaultOrmQuery<T> implements SpiQuery<T> {
namedParams = new HashMap<>();
}
ONamedParam param = namedParams.computeIfAbsent(name, ONamedParam::new);
return param;
return namedParams.computeIfAbsent(name, ONamedParam::new);
}
@Override