mirror of
https://github.com/nosqlbench/nosqlbench.git
synced 2025-02-25 18:55:28 -06:00
allow easy include/exclude of cql driver versions
This commit is contained in:
parent
f244c0f225
commit
03f7f13c2b
@ -74,8 +74,9 @@ public class NBConfiguration {
|
|||||||
if (param==null) {
|
if (param==null) {
|
||||||
throw new NBConfigError("Parameter named '" + name + "' is not valid for " + model.getOf().getSimpleName() + ".");
|
throw new NBConfigError("Parameter named '" + name + "' is not valid for " + model.getOf().getSimpleName() + ".");
|
||||||
}
|
}
|
||||||
if (!param.isRequired()) {
|
if ((!param.isRequired())&¶m.getDefaultValue()==null) {
|
||||||
throw new NBConfigError("Non-optional get on parameter declared optional '" + name + "'");
|
throw new RuntimeException("Non-optional get on optional parameter " + name + "' which has no default value while configuring " + model.getOf() + "." +
|
||||||
|
"\nTo avoid user impact, ensure that ConfigModel and NBConfigurable usage are aligned.");
|
||||||
}
|
}
|
||||||
|
|
||||||
Object o = data.get(name);
|
Object o = data.get(name);
|
||||||
|
@ -77,12 +77,28 @@ public class Param<T> {
|
|||||||
return new Param<V>(List.of(name), type, null, false, null);
|
return new Param<V>(List.of(name), type, null, false, null);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Parameters which are given a default value are automatically marked as required, as the default
|
||||||
|
* value allows them to be accessed as such.
|
||||||
|
* @param name
|
||||||
|
* @param defaultValue
|
||||||
|
* @param <V>
|
||||||
|
* @return
|
||||||
|
*/
|
||||||
public static <V> Param<V> defaultTo(String name, V defaultValue) {
|
public static <V> Param<V> defaultTo(String name, V defaultValue) {
|
||||||
return new Param<V>(List.of(name), (Class<V>) defaultValue.getClass(), null, false, null);
|
return new Param<V>(List.of(name), (Class<V>) defaultValue.getClass(), null, true, defaultValue);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Parameters which are given a default value are automatically marked as required, as the default
|
||||||
|
* value allows them to be accessed as such.
|
||||||
|
* @param names
|
||||||
|
* @param defaultValue
|
||||||
|
* @param <V>
|
||||||
|
* @return
|
||||||
|
*/
|
||||||
public static <V> Param<V> defaultTo(List<String> names, V defaultValue) {
|
public static <V> Param<V> defaultTo(List<String> names, V defaultValue) {
|
||||||
return new Param<V>(names, (Class<V>) defaultValue.getClass(), null, false, null);
|
return new Param<V>(names, (Class<V>) defaultValue.getClass(), null, true, defaultValue);
|
||||||
}
|
}
|
||||||
|
|
||||||
public static <V> Param<V> required(String name, Class<V> type) {
|
public static <V> Param<V> required(String name, Class<V> type) {
|
||||||
|
38
nb/pom.xml
38
nb/pom.xml
@ -93,18 +93,6 @@
|
|||||||
<version>4.15.52-SNAPSHOT</version>
|
<version>4.15.52-SNAPSHOT</version>
|
||||||
</dependency>
|
</dependency>
|
||||||
|
|
||||||
<dependency>
|
|
||||||
<groupId>io.nosqlbench</groupId>
|
|
||||||
<artifactId>driver-dsegraph-shaded</artifactId>
|
|
||||||
<version>4.15.52-SNAPSHOT</version>
|
|
||||||
</dependency>
|
|
||||||
|
|
||||||
<dependency>
|
|
||||||
<groupId>io.nosqlbench</groupId>
|
|
||||||
<artifactId>driver-cql-shaded</artifactId>
|
|
||||||
<version>4.15.52-SNAPSHOT</version>
|
|
||||||
</dependency>
|
|
||||||
|
|
||||||
<dependency>
|
<dependency>
|
||||||
<groupId>io.nosqlbench</groupId>
|
<groupId>io.nosqlbench</groupId>
|
||||||
<artifactId>driver-cqld3-shaded</artifactId>
|
<artifactId>driver-cqld3-shaded</artifactId>
|
||||||
@ -222,6 +210,32 @@
|
|||||||
</build>
|
</build>
|
||||||
|
|
||||||
<profiles>
|
<profiles>
|
||||||
|
<profile>
|
||||||
|
<id>with-dsegraph-d1</id>
|
||||||
|
<activation>
|
||||||
|
<activeByDefault>true</activeByDefault>
|
||||||
|
</activation>
|
||||||
|
<dependencies>
|
||||||
|
<dependency>
|
||||||
|
<groupId>io.nosqlbench</groupId>
|
||||||
|
<artifactId>driver-dsegraph-shaded</artifactId>
|
||||||
|
<version>4.15.52-SNAPSHOT</version>
|
||||||
|
</dependency>
|
||||||
|
</dependencies>
|
||||||
|
</profile>
|
||||||
|
<profile>
|
||||||
|
<id>with-cql-d1</id>
|
||||||
|
<activation>
|
||||||
|
<activeByDefault>true</activeByDefault>
|
||||||
|
</activation>
|
||||||
|
<dependencies>
|
||||||
|
<dependency>
|
||||||
|
<groupId>io.nosqlbench</groupId>
|
||||||
|
<artifactId>driver-cql-shaded</artifactId>
|
||||||
|
<version>4.15.52-SNAPSHOT</version>
|
||||||
|
</dependency>
|
||||||
|
</dependencies>
|
||||||
|
</profile>
|
||||||
<profile>
|
<profile>
|
||||||
<id>with-cql-d4</id>
|
<id>with-cql-d4</id>
|
||||||
<activation>
|
<activation>
|
||||||
|
Loading…
Reference in New Issue
Block a user