All Downloads are FREE. Search and download functionalities are using the official Maven repository.

io.nosqlbench.nb.api.config.ConfigElement Maven / Gradle / Ivy

Go to download

The top level API module for NoSQLBench. This module should have no internal module dependencies other than the mvn-default module. All modules within NoSQLBench can safely depend on this module with circular dependencies. This module provides cross-cutting code infrastracture, such as path utilities and ways of describing services used between modules. It is also the transitive aggregation point for system-wide library dependencies for logging and testing or similar needs.

There is a newer version: 5.17.0
Show newest version
package io.nosqlbench.nb.api.config;

public class ConfigElement {

    public final String name;
    public final Class type;
    public final String description;
    private final T defaultValue;
    public boolean required;

    public ConfigElement(
            String name,
            Class type,
            String description,
            boolean required,
            T defaultValue
    ) {
        this.name = name;
        this.type = type;
        this.description = description;
        this.required = required;
        this.defaultValue = defaultValue;
    }

    @Override
    public String toString() {
        return "Element{" +
                "name='" + name + '\'' +
                ", type=" + type +
                ", description='" + description + '\'' +
                ", required=" + required +
                ", defaultValue = " + defaultValue +
                '}';
    }

    public String getName() {
        return name;
    }

    public Class getType() {
        return type;
    }

    public String getDescription() {
        return description;
    }

    public boolean isRequired() {
        return required;
    }

    public void setRequired(boolean required) {
        this.required = required;
    }

    public T getDefaultValue() {
        return defaultValue;
    }
}




© 2015 - 2025 Weber Informatics LLC | Privacy Policy