start CLI DSL for parameterization

This commit is contained in:
Jonathan Shook 2020-08-12 00:00:16 -05:00
parent 40d6e60085
commit f16f3fb325
4 changed files with 52 additions and 0 deletions

View File

@ -0,0 +1,10 @@
package io.nosqlbench.engine.api.clireader;
public class CLI {
private CLI() {
}
public static CLI builder() {
return new CLI();
}
}

View File

@ -0,0 +1,23 @@
package io.nosqlbench.engine.api.clireader.dsl;
public interface CLIFacets {
public static interface WantsAnyOption
extends WantsGlobalOption {
}
public static interface WantsParameterizedCommand {
public WantsAnyOption namedParams();
}
public static interface WantsGlobalOption {
public WantsOptionType global(String optionName);
}
public static interface WantsOptionType {
public WantsAnyOption toggle();
public WantsAnyOption string();
public WantsAnyOption number();
}
}

View File

@ -0,0 +1,6 @@
/**
* This package is intended to consolidate the command line
* parsing logic over time so that all of the CLI parsing
* is separately testable and usable by other modules in NoSqlBench.
*/
package io.nosqlbench.engine.api.clireader;

View File

@ -0,0 +1,13 @@
package io.nosqlbench.engine.api.clireader;
import org.junit.Test;
import static org.assertj.core.api.Assertions.assertThat;
class CLITest {
@Test
public void name() {
}
}