diff --git a/adapters-api/src/main/java/io/nosqlbench/engine/api/activityimpl/OpMapper.java b/adapters-api/src/main/java/io/nosqlbench/engine/api/activityimpl/OpMapper.java
index 93a09a086..268647cb4 100644
--- a/adapters-api/src/main/java/io/nosqlbench/engine/api/activityimpl/OpMapper.java
+++ b/adapters-api/src/main/java/io/nosqlbench/engine/api/activityimpl/OpMapper.java
@@ -53,7 +53,7 @@ import java.util.function.Function;
* rules provided to the user. Conversely, the driver maintainer should take care to provide
* rules of construction and examples in the documentation.
* Each {@link io.nosqlbench.engine.api.activityimpl.uniform.DriverAdapter} has a unique
- * name, just as with {@link io.nosqlbench.engine.api.activityapi.core.ActivityType}s. The documentation
+ * name. The documentation
* for each of these should be kept in the bundled resources in a top-level markdown file that
* matches the driver name.
*
@@ -62,7 +62,7 @@ import java.util.function.Function;
* to hold all the details for executing an operation,
* generally something that implements {@link Runnable}.
*/
-public interface OpMapper extends Function> {
+public interface OpMapper extends Function> {
/**
* Interrogate the parsed command, and provide a new
@@ -73,5 +73,5 @@ public interface OpMapper extends Function apply(ParsedOp cmd);
+ OpDispenser extends T> apply(ParsedOp cmd);
}
diff --git a/driver-http/src/main/java/io/nosqlbench/activitytype/cmds/HttpAsyncOp.java b/driver-http/src/main/java/io/nosqlbench/activitytype/cmds/HttpAsyncOp.java
index 55f2afff5..99c15a252 100644
--- a/driver-http/src/main/java/io/nosqlbench/activitytype/cmds/HttpAsyncOp.java
+++ b/driver-http/src/main/java/io/nosqlbench/activitytype/cmds/HttpAsyncOp.java
@@ -7,13 +7,13 @@ import java.util.function.LongFunction;
public class HttpAsyncOp {
public final HttpAsyncAction action;
- public final LongFunction op;
+ public final LongFunction extends HttpOp> op;
public final long cycle;
private final HttpOp httpOp;
private final HttpClient client;
- public HttpAsyncOp(HttpAsyncAction action, LongFunction op, long cycle, HttpClient client) {
+ public HttpAsyncOp(HttpAsyncAction action, LongFunction extends HttpOp> op, long cycle, HttpClient client) {
this.action = action;
this.op = op;
this.cycle = cycle;
diff --git a/driver-http/src/main/java/io/nosqlbench/activitytype/http/HttpAction.java b/driver-http/src/main/java/io/nosqlbench/activitytype/http/HttpAction.java
index 0ab9c7265..804de49cf 100644
--- a/driver-http/src/main/java/io/nosqlbench/activitytype/http/HttpAction.java
+++ b/driver-http/src/main/java/io/nosqlbench/activitytype/http/HttpAction.java
@@ -30,7 +30,7 @@ public class HttpAction implements SyncAction {
private final int slot;
private int maxTries = 1;
- private OpSequence> sequencer;
+ private OpSequence> sequencer;
private HttpClient client;
private final HttpResponse.BodyHandler bodyreader = HttpResponse.BodyHandlers.ofString();
@@ -62,7 +62,7 @@ public class HttpAction implements SyncAction {
// operation for execution, including data generation as well as
// op construction
try (Timer.Context bindTime = httpActivity.bindTimer.time()) {
- LongFunction readyOp = sequencer.apply(cycle);
+ LongFunction extends HttpOp> readyOp = sequencer.apply(cycle);
httpOp = readyOp.apply(cycle);
} catch (Exception e) {
if (httpActivity.isDiagnosticMode()) {
diff --git a/driver-http/src/main/java/io/nosqlbench/activitytype/http/HttpActivity.java b/driver-http/src/main/java/io/nosqlbench/activitytype/http/HttpActivity.java
index 0c3b1267d..e159ff3ea 100644
--- a/driver-http/src/main/java/io/nosqlbench/activitytype/http/HttpActivity.java
+++ b/driver-http/src/main/java/io/nosqlbench/activitytype/http/HttpActivity.java
@@ -37,7 +37,7 @@ public class HttpActivity extends SimpleActivity implements Activity, ActivityDe
public Timer resultSuccessTimer;
public Histogram statusCodeHisto;
- private OpSequence> sequencer;
+ private OpSequence> sequencer;
private boolean diagnosticsEnabled;
private long timeout = Long.MAX_VALUE;
private NBErrorHandler errorhandler;
@@ -121,7 +121,7 @@ public class HttpActivity extends SimpleActivity implements Activity, ActivityDe
return builder.build();
}
- public OpSequence> getSequencer() {
+ public OpSequence> getSequencer() {
return sequencer;
}
diff --git a/driver-http/src/main/java/io/nosqlbench/activitytype/http/async/HttpAsyncAction.java b/driver-http/src/main/java/io/nosqlbench/activitytype/http/async/HttpAsyncAction.java
index 2fbcb7999..ea6e68918 100644
--- a/driver-http/src/main/java/io/nosqlbench/activitytype/http/async/HttpAsyncAction.java
+++ b/driver-http/src/main/java/io/nosqlbench/activitytype/http/async/HttpAsyncAction.java
@@ -19,7 +19,7 @@ public class HttpAsyncAction extends BaseAsyncAction
private final static Logger logger = LogManager.getLogger(HttpAsyncAction.class);
- private OpSequence> sequencer;
+ private OpSequence> sequencer;
private HttpClient client;
private CompletableFuture> future;
@@ -46,7 +46,7 @@ public class HttpAsyncAction extends BaseAsyncAction
@Override
public LongFunction getOpInitFunction() {
return l -> {
- LongFunction readyHttpOp = sequencer.apply(l);
+ LongFunction extends HttpOp> readyHttpOp = sequencer.apply(l);
return new HttpAsyncOp(this,readyHttpOp,l,client);
};
}
diff --git a/driver-jdbc/src/main/java/io/nosqlbench/activitytype/jdbc/api/JDBCActivity.java b/driver-jdbc/src/main/java/io/nosqlbench/activitytype/jdbc/api/JDBCActivity.java
index 5e13d7d30..4b6f17dec 100644
--- a/driver-jdbc/src/main/java/io/nosqlbench/activitytype/jdbc/api/JDBCActivity.java
+++ b/driver-jdbc/src/main/java/io/nosqlbench/activitytype/jdbc/api/JDBCActivity.java
@@ -29,7 +29,7 @@ public abstract class JDBCActivity extends SimpleActivity {
private int minRetryDelayMs;
protected DataSource dataSource;
- protected OpSequence> opSequence;
+ protected OpSequence> opSequence;
public JDBCActivity(ActivityDef activityDef) {
super(activityDef);
@@ -107,7 +107,7 @@ public abstract class JDBCActivity extends SimpleActivity {
return dataSource;
}
- public OpSequence> getOpSequence() {
+ public OpSequence> getOpSequence() {
return opSequence;
}
diff --git a/driver-jdbc/src/main/java/io/nosqlbench/activitytype/jdbc/impl/JDBCAction.java b/driver-jdbc/src/main/java/io/nosqlbench/activitytype/jdbc/impl/JDBCAction.java
index e6c8e96d8..616d0f736 100644
--- a/driver-jdbc/src/main/java/io/nosqlbench/activitytype/jdbc/impl/JDBCAction.java
+++ b/driver-jdbc/src/main/java/io/nosqlbench/activitytype/jdbc/impl/JDBCAction.java
@@ -18,7 +18,7 @@ public class JDBCAction implements SyncAction {
private static final Logger LOGGER = LogManager.getLogger(JDBCAction.class);
private final JDBCActivity activity;
- private OpSequence> sequencer;
+ private OpSequence> sequencer;
public JDBCAction(JDBCActivity a, int slot) {
activity = a;
@@ -33,7 +33,7 @@ public class JDBCAction implements SyncAction {
public int runCycle(long cycle) {
String boundStmt;
- LongFunction unboundStmt = sequencer.apply(cycle);
+ LongFunction extends String> unboundStmt = sequencer.apply(cycle);
try (Timer.Context bindTime = activity.getBindTimer().time()) {
boundStmt = unboundStmt.apply(cycle);
diff --git a/driver-jms/src/main/java/io/nosqlbench/driver/jms/JmsAction.java b/driver-jms/src/main/java/io/nosqlbench/driver/jms/JmsAction.java
index b8f28e064..4b17ca353 100644
--- a/driver-jms/src/main/java/io/nosqlbench/driver/jms/JmsAction.java
+++ b/driver-jms/src/main/java/io/nosqlbench/driver/jms/JmsAction.java
@@ -36,7 +36,7 @@ public class JmsAction implements SyncAction {
JmsOp jmsOp;
try (Timer.Context ctx = activity.getBindTimer().time()) {
- LongFunction readyJmsOp = activity.getSequencer().apply(cycle);
+ LongFunction extends JmsOp> readyJmsOp = activity.getSequencer().apply(cycle);
jmsOp = readyJmsOp.apply(cycle);
} catch (Exception bindException) {
// if diagnostic mode ...
diff --git a/driver-jms/src/main/java/io/nosqlbench/driver/jms/JmsActivity.java b/driver-jms/src/main/java/io/nosqlbench/driver/jms/JmsActivity.java
index 39ac5b42d..f22e2b203 100644
--- a/driver-jms/src/main/java/io/nosqlbench/driver/jms/JmsActivity.java
+++ b/driver-jms/src/main/java/io/nosqlbench/driver/jms/JmsActivity.java
@@ -32,7 +32,7 @@ public class JmsActivity extends SimpleActivity {
private JMSContext jmsContext;
- private OpSequence> sequence;
+ private OpSequence> sequence;
private volatile Throwable asyncOperationFailure;
private NBErrorHandler errorhandler;
@@ -144,7 +144,7 @@ public class JmsActivity extends SimpleActivity {
@Override
public synchronized void onActivityDefUpdate(ActivityDef activityDef) { super.onActivityDefUpdate(activityDef); }
- public OpSequence> getSequencer() { return sequence; }
+ public OpSequence> getSequencer() { return sequence; }
public String getJmsProviderType() { return jmsProviderType; }
public JmsConnInfo getJmsConnInfo() { return jmsConnInfo; }
diff --git a/driver-jmx/src/main/java/io/nosqlbench/driver/jmx/JMXAction.java b/driver-jmx/src/main/java/io/nosqlbench/driver/jmx/JMXAction.java
index 88134d288..a0ed2e6f4 100644
--- a/driver-jmx/src/main/java/io/nosqlbench/driver/jmx/JMXAction.java
+++ b/driver-jmx/src/main/java/io/nosqlbench/driver/jmx/JMXAction.java
@@ -17,7 +17,7 @@ public class JMXAction implements SyncAction {
private final ActivityDef activityDef;
private final int slot;
private final JMXActivity activity;
- private OpSequence> sequencer;
+ private OpSequence> sequencer;
public JMXAction(ActivityDef activityDef, int slot, JMXActivity activity) {
this.activityDef = activityDef;
@@ -32,7 +32,7 @@ public class JMXAction implements SyncAction {
@Override
public int runCycle(long cycle) {
- LongFunction readyJmxOp = sequencer.apply(cycle);
+ LongFunction extends JmxOp> readyJmxOp = sequencer.apply(cycle);
JmxOp jmxOp = readyJmxOp.apply(cycle);
jmxOp.execute();
return 0;
diff --git a/driver-jmx/src/main/java/io/nosqlbench/driver/jmx/JMXActivity.java b/driver-jmx/src/main/java/io/nosqlbench/driver/jmx/JMXActivity.java
index 193884cbd..87a5da0b3 100644
--- a/driver-jmx/src/main/java/io/nosqlbench/driver/jmx/JMXActivity.java
+++ b/driver-jmx/src/main/java/io/nosqlbench/driver/jmx/JMXActivity.java
@@ -13,7 +13,7 @@ import javax.net.ssl.SSLContext;
public class JMXActivity extends SimpleActivity implements Activity {
- private OpSequence> sequence;
+ private OpSequence> sequence;
private SSLContext sslContext;
public JMXActivity(ActivityDef activityDef) {
@@ -39,7 +39,7 @@ public class JMXActivity extends SimpleActivity implements Activity {
return sslContext;
}
- public OpSequence> getSequencer() {
+ public OpSequence> getSequencer() {
return sequence;
}
}
diff --git a/driver-pulsar/src/main/java/io/nosqlbench/driver/pulsar/PulsarAction.java b/driver-pulsar/src/main/java/io/nosqlbench/driver/pulsar/PulsarAction.java
index ee87a3e49..c45a7ded4 100644
--- a/driver-pulsar/src/main/java/io/nosqlbench/driver/pulsar/PulsarAction.java
+++ b/driver-pulsar/src/main/java/io/nosqlbench/driver/pulsar/PulsarAction.java
@@ -37,7 +37,7 @@ public class PulsarAction implements SyncAction {
PulsarOp pulsarOp;
try (Timer.Context ctx = activity.getBindTimer().time()) {
- LongFunction readyPulsarOp = activity.getSequencer().apply(cycle);
+ LongFunction extends PulsarOp> readyPulsarOp = activity.getSequencer().apply(cycle);
pulsarOp = readyPulsarOp.apply(cycle);
} catch (Exception bindException) {
// if diagnostic mode ...
diff --git a/driver-pulsar/src/main/java/io/nosqlbench/driver/pulsar/PulsarActivity.java b/driver-pulsar/src/main/java/io/nosqlbench/driver/pulsar/PulsarActivity.java
index d2e9dc71e..08e383948 100644
--- a/driver-pulsar/src/main/java/io/nosqlbench/driver/pulsar/PulsarActivity.java
+++ b/driver-pulsar/src/main/java/io/nosqlbench/driver/pulsar/PulsarActivity.java
@@ -66,7 +66,7 @@ public class PulsarActivity extends SimpleActivity implements ActivityDefObserve
private Schema> pulsarSchema;
private NBErrorHandler errorHandler;
- private OpSequence> sequencer;
+ private OpSequence> sequencer;
private volatile Throwable asyncOperationFailure;
private boolean cycleratePerThread;
@@ -151,7 +151,7 @@ public class PulsarActivity extends SimpleActivity implements ActivityDefObserve
public NBErrorHandler getErrorHandler() { return errorHandler; }
- public OpSequence> getSequencer() { return sequencer; }
+ public OpSequence> getSequencer() { return sequencer; }
public void failOnAsyncOperationFailure() {
if (asyncOperationFailure != null) {
diff --git a/engine-api/src/main/java/io/nosqlbench/engine/api/activityapi/planning/OpSource.java b/engine-api/src/main/java/io/nosqlbench/engine/api/activityapi/planning/OpSource.java
index 081342f40..b9be3a543 100644
--- a/engine-api/src/main/java/io/nosqlbench/engine/api/activityapi/planning/OpSource.java
+++ b/engine-api/src/main/java/io/nosqlbench/engine/api/activityapi/planning/OpSource.java
@@ -13,7 +13,7 @@ import java.util.function.LongFunction;
*/
public interface OpSource extends LongFunction {
- static OpSource of(OpSequence> seq) {
+ static OpSource of(OpSequence> seq) {
return (long l) -> seq.apply(l).apply(l);
}
diff --git a/engine-api/src/main/java/io/nosqlbench/engine/api/activityimpl/SimpleActivity.java b/engine-api/src/main/java/io/nosqlbench/engine/api/activityimpl/SimpleActivity.java
index f132e9671..4b403c40e 100644
--- a/engine-api/src/main/java/io/nosqlbench/engine/api/activityimpl/SimpleActivity.java
+++ b/engine-api/src/main/java/io/nosqlbench/engine/api/activityimpl/SimpleActivity.java
@@ -419,20 +419,20 @@ public class SimpleActivity implements Activity, ProgressCapable {
* @param
* @return
*/
- protected OpSequence> createOpSequenceFromCommands(Function> opinit) {
+ protected OpSequence> createOpSequenceFromCommands(Function> opinit) {
Function f = CommandTemplate::new;
- Function> opTemplateOFunction = f.andThen(opinit);
+ Function> opTemplateOFunction = f.andThen(opinit);
return createOpSequence(opTemplateOFunction);
}
- protected OpSequence> createOpSourceFromCommands(
- Function> opinit,
+ protected OpSequence> createOpSourceFromCommands(
+ Function> opinit,
NBConfiguration cfg,
List, Map>> parsers
) {
Function f = t -> new ParsedOp(t, cfg, parsers);
- Function> opTemplateOFunction = f.andThen(opinit);
+ Function> opTemplateOFunction = f.andThen(opinit);
return createOpSequence(opTemplateOFunction);
}
@@ -459,14 +459,14 @@ public class SimpleActivity implements Activity, ProgressCapable {
* @return The sequence of operations as determined by filtering and ratios
*/
@Deprecated(forRemoval = true)
- protected OpSequence> createOpSequence(Function> opinit) {
+ protected OpSequence> createOpSequence(Function> opinit) {
String tagfilter = activityDef.getParams().getOptionalString("tags").orElse("");
- StrInterpolator interp = new StrInterpolator(activityDef);
+// StrInterpolator interp = new StrInterpolator(activityDef);
SequencerType sequencerType = getParams()
.getOptionalString("seq")
.map(SequencerType::valueOf)
.orElse(SequencerType.bucket);
- SequencePlanner> planner = new SequencePlanner<>(sequencerType);
+ SequencePlanner> planner = new SequencePlanner<>(sequencerType);
StmtsDocList stmtsDocList = null;
@@ -475,10 +475,10 @@ public class SimpleActivity implements Activity, ProgressCapable {
Optional stmt = activityDef.getParams().getOptionalString("op", "stmt", "statement");
Optional op_yaml_loc = activityDef.getParams().getOptionalString("yaml", "workload");
if (stmt.isPresent()) {
- stmtsDocList = StatementsLoader.loadStmt(logger, stmt.get(), interp);
+ stmtsDocList = StatementsLoader.loadStmt(logger, stmt.get(), activityDef.getParams());
workloadSource = "commandline:" + stmt.get();
} else if (op_yaml_loc.isPresent()) {
- stmtsDocList = StatementsLoader.loadPath(logger, op_yaml_loc.get(), interp, "activities");
+ stmtsDocList = StatementsLoader.loadPath(logger, op_yaml_loc.get(), activityDef.getParams(), "activities");
workloadSource = "yaml:" + op_yaml_loc.get();
}
@@ -500,7 +500,7 @@ public class SimpleActivity implements Activity, ProgressCapable {
for (int i = 0; i < stmts.size(); i++) {
long ratio = ratios.get(i);
OpTemplate optemplate = stmts.get(i);
- OpDispenser driverSpecificReadyOp = opinit.apply(optemplate);
+ OpDispenser extends O> driverSpecificReadyOp = opinit.apply(optemplate);
planner.addOp(driverSpecificReadyOp, ratio);
}
} catch (Exception e) {
diff --git a/engine-api/src/main/java/io/nosqlbench/engine/api/activityimpl/uniform/StandardActivity.java b/engine-api/src/main/java/io/nosqlbench/engine/api/activityimpl/uniform/StandardActivity.java
index 0d377d29b..6b96dd869 100644
--- a/engine-api/src/main/java/io/nosqlbench/engine/api/activityimpl/uniform/StandardActivity.java
+++ b/engine-api/src/main/java/io/nosqlbench/engine/api/activityimpl/uniform/StandardActivity.java
@@ -5,9 +5,9 @@ import io.nosqlbench.engine.api.activityapi.planning.OpSequence;
import io.nosqlbench.engine.api.activityapi.planning.OpSource;
import io.nosqlbench.engine.api.activityimpl.ActivityDef;
import io.nosqlbench.engine.api.activityimpl.OpDispenser;
+import io.nosqlbench.engine.api.activityimpl.OpMapper;
import io.nosqlbench.engine.api.activityimpl.SimpleActivity;
import io.nosqlbench.engine.api.activityimpl.uniform.flowtypes.Op;
-import io.nosqlbench.engine.api.templating.ParsedOp;
import io.nosqlbench.nb.api.errors.OpConfigError;
import java.util.List;
@@ -27,14 +27,15 @@ public class StandardActivity extends SimpleActivity {
private final DriverAdapter adapter;
private final OpSource opsource;
private NBErrorHandler errorHandler;
- private final OpSequence> sequence;
+ private final OpSequence> sequence;
public StandardActivity(DriverAdapter adapter, ActivityDef activityDef) {
super(activityDef);
this.adapter = adapter;
try {
- Function> opmapper = adapter.getOpMapper();
+// Function> opmapper;
+ OpMapper opmapper = adapter.getOpMapper();
Function