From 98c5042d5a2cbbe9d0f88155e0666a39fc7ecefd Mon Sep 17 00:00:00 2001 From: Jonathan Shook Date: Wed, 2 Mar 2022 10:01:17 -0600 Subject: [PATCH] simplify to functional switch --- .../adapter/dynamodb/DynamoDBOpMapper.java | 22 ++++++------------- 1 file changed, 7 insertions(+), 15 deletions(-) diff --git a/adapter-dynamodb/src/main/java/io/nosqlbench/adapter/dynamodb/DynamoDBOpMapper.java b/adapter-dynamodb/src/main/java/io/nosqlbench/adapter/dynamodb/DynamoDBOpMapper.java index e6793bd12..5c179e392 100644 --- a/adapter-dynamodb/src/main/java/io/nosqlbench/adapter/dynamodb/DynamoDBOpMapper.java +++ b/adapter-dynamodb/src/main/java/io/nosqlbench/adapter/dynamodb/DynamoDBOpMapper.java @@ -9,10 +9,9 @@ import io.nosqlbench.adapter.dynamodb.optypes.DynamoDBOp; import io.nosqlbench.engine.api.activityimpl.OpDispenser; import io.nosqlbench.engine.api.activityimpl.OpMapper; import io.nosqlbench.engine.api.activityimpl.uniform.DriverSpaceCache; -import io.nosqlbench.engine.api.templating.TypeAndTarget; import io.nosqlbench.engine.api.templating.ParsedOp; +import io.nosqlbench.engine.api.templating.TypeAndTarget; import io.nosqlbench.nb.api.config.standard.NBConfiguration; -import io.nosqlbench.nb.api.errors.OpConfigError; public class DynamoDBOpMapper implements OpMapper { @@ -39,19 +38,12 @@ public class DynamoDBOpMapper implements OpMapper { // return new RawDynamoDBOpDispenser(cmd); } else { TypeAndTarget cmdType = cmd.getTargetEnum(DynamoDBCmdType.class,String.class); - switch (cmdType.enumId) { - case CreateTable: - return new DDBCreateTableOpDispenser(ddb, cmd, cmdType.targetFunction); - case PutItem: - return new DDBPutItemOpDispenser(ddb, cmd, cmdType.targetFunction); - case GetItem: - return new DDBGetItemOpDispenser(ddb, cmd, cmdType.targetFunction); - case Query: - return new DDBQueryOpDispenser(ddb, cmd, cmdType.targetFunction); - - default: - throw new OpConfigError("No implementation for " + cmdType); - } + return switch (cmdType.enumId) { + case CreateTable -> new DDBCreateTableOpDispenser(ddb, cmd, cmdType.targetFunction); + case PutItem -> new DDBPutItemOpDispenser(ddb, cmd, cmdType.targetFunction); + case GetItem -> new DDBGetItemOpDispenser(ddb, cmd, cmdType.targetFunction); + case Query -> new DDBQueryOpDispenser(ddb, cmd, cmdType.targetFunction); + }; } }