simplify switch

This commit is contained in:
Jonathan Shook 2021-06-23 11:25:15 -05:00
parent a80e6d599b
commit 1e8ad0cc91
2 changed files with 10 additions and 17 deletions

View File

@ -1,7 +1,7 @@
package io.nosqlbench.activitytype.cql.core; package io.nosqlbench.activitytype.cql.core;
import com.datastax.driver.core.*; import com.datastax.driver.core.*;
import io.nosqlbench.engine.api.activityconfig.ParsedStmt; import io.nosqlbench.engine.api.activityconfig.ParsedStmtOp;
import io.nosqlbench.engine.api.activityconfig.yaml.OpTemplate; import io.nosqlbench.engine.api.activityconfig.yaml.OpTemplate;
import java.math.BigDecimal; import java.math.BigDecimal;
@ -79,13 +79,10 @@ public class CQLBindHelper {
public static BoundStatement bindStatement(Statement statement, String name, Object value, DataType.Name typeName) { public static BoundStatement bindStatement(Statement statement, String name, Object value, DataType.Name typeName) {
switch (typeName) { switch (typeName) {
case ASCII: // ASCII(1, String.class) case ASCII: // ASCII(1, String.class)
return ((BoundStatement) statement).bind().setString(name, (String) value);
case VARCHAR: // VARCHAR(13, String.class) case VARCHAR: // VARCHAR(13, String.class)
return ((BoundStatement) statement).bind().setString(name, (String) value);
case TEXT: // TEXT(10, String.class) case TEXT: // TEXT(10, String.class)
return ((BoundStatement) statement).bind().setString(name, (String) value); return ((BoundStatement) statement).bind().setString(name, (String) value);
case BIGINT: // BIGINT(2, Long.class) case BIGINT: // BIGINT(2, Long.class)
return ((BoundStatement) statement).bind().setLong(name, (long) value);
case COUNTER: // COUNTER(5, Long.class) case COUNTER: // COUNTER(5, Long.class)
return ((BoundStatement) statement).bind().setLong(name, (long) value); return ((BoundStatement) statement).bind().setLong(name, (long) value);
case BLOB: // BLOB(3, ByteBuffer.class) case BLOB: // BLOB(3, ByteBuffer.class)
@ -102,24 +99,20 @@ public class CQLBindHelper {
return ((BoundStatement) statement).bind().setFloat(name, (float) value); return ((BoundStatement) statement).bind().setFloat(name, (float) value);
case INET: // INET(16, InetAddress.class) case INET: // INET(16, InetAddress.class)
return ((BoundStatement) statement).bind().setInet(name, (InetAddress) value); return ((BoundStatement) statement).bind().setInet(name, (InetAddress) value);
case VARINT: // VARINT(14, BigInteger.class)
case SMALLINT:
case TINYINT:
case INT: // INT(9, Integer.class) case INT: // INT(9, Integer.class)
return ((BoundStatement) statement).bind().setInt(name, (int) value); return ((BoundStatement) statement).bind().setInt(name, (int) value);
case TIMESTAMP: // TIMESTAMP(11, Date.class) case TIMESTAMP: // TIMESTAMP(11, Date.class)
return ((BoundStatement) statement).bind().setTimestamp(name, (Date) value); return ((BoundStatement) statement).bind().setTimestamp(name, (Date) value);
case UUID: // UUID(12, UUID.class) case UUID: // UUID(12, UUID.class)
return ((BoundStatement) statement).bind().setUUID(name, (UUID) value);
case TIMEUUID: // TIMEUUID(15, UUID.class) case TIMEUUID: // TIMEUUID(15, UUID.class)
return ((BoundStatement) statement).bind().setUUID(name, (UUID) value); return ((BoundStatement) statement).bind().setUUID(name, (UUID) value);
case VARINT: // VARINT(14, BigInteger.class)
return ((BoundStatement) statement).bind().setInt(name, (int) value);
case UDT: // UDT(48, UDTValue.class) case UDT: // UDT(48, UDTValue.class)
return ((BoundStatement) statement).bind().setUDTValue(name, (UDTValue) value); return ((BoundStatement) statement).bind().setUDTValue(name, (UDTValue) value);
case TUPLE: // TUPLE(49, TupleValue.class case TUPLE: // TUPLE(49, TupleValue.class
return ((BoundStatement) statement).bind().setTupleValue(name, (TupleValue) value); return ((BoundStatement) statement).bind().setTupleValue(name, (TupleValue) value);
case SMALLINT:
return ((BoundStatement) statement).bind().setInt(name, (int) value);
case TINYINT:
return ((BoundStatement) statement).bind().setInt(name, (int) value);
case DATE: case DATE:
return ((BoundStatement) statement).bind().setDate(name, (LocalDate) value); return ((BoundStatement) statement).bind().setDate(name, (LocalDate) value);
case TIME: case TIME:
@ -129,8 +122,8 @@ public class CQLBindHelper {
} }
} }
public static Map<String, String> parseAndGetSpecificBindings(OpTemplate opDef, ParsedStmt parsed) { public static Map<String, String> parseAndGetSpecificBindings(OpTemplate opDef, ParsedStmtOp parsed) {
String statement = opDef.getStmt(); String statement = opDef.getStmt().orElseThrow();
Set<String> extraBindings = new HashSet<>(opDef.getBindings().keySet()); Set<String> extraBindings = new HashSet<>(opDef.getBindings().keySet());
Map<String, String> specificBindings = new LinkedHashMap<>(); Map<String, String> specificBindings = new LinkedHashMap<>();

View File

@ -1,8 +1,8 @@
package io.nosqlbench.activitytype.cql.core; package io.nosqlbench.activitytype.cql.core;
import com.datastax.driver.core.*; import com.datastax.driver.core.*;
import io.nosqlbench.engine.api.activityconfig.ParsedStmt; import io.nosqlbench.engine.api.activityconfig.ParsedStmtOp;
import io.nosqlbench.engine.api.activityconfig.yaml.OpDef; import io.nosqlbench.engine.api.activityconfig.yaml.OpTemplate;
import java.math.BigDecimal; import java.math.BigDecimal;
import java.net.InetAddress; import java.net.InetAddress;
@ -122,10 +122,10 @@ public class CQLBindHelper {
} }
} }
public static Map<String, String> parseAndGetSpecificBindings(OpDef opDef, ParsedStmt parsed) { public static Map<String, String> parseAndGetSpecificBindings(OpTemplate opDef, ParsedStmtOp parsed) {
List<String> spans = new ArrayList<>(); List<String> spans = new ArrayList<>();
String statement = opDef.getStmt(); String statement = opDef.getStmt().orElseThrow();
Set<String> extraBindings = new HashSet<>(); Set<String> extraBindings = new HashSet<>();
extraBindings.addAll(opDef.getBindings().keySet()); extraBindings.addAll(opDef.getBindings().keySet());