io.nosqlbench.virtdata.library.basics.shared.stateful.SaveString Maven / Gradle / Ivy
package io.nosqlbench.virtdata.library.basics.shared.stateful;
import io.nosqlbench.virtdata.api.annotations.Categories;
import io.nosqlbench.virtdata.api.annotations.Category;
import io.nosqlbench.virtdata.api.annotations.Example;
import io.nosqlbench.virtdata.api.annotations.ThreadSafeMapper;
import io.nosqlbench.virtdata.library.basics.core.threadstate.SharedState;
import java.util.HashMap;
import java.util.function.Function;
/**
* Save a value to a named thread-local variable, where the variable
* name is fixed or a generated variable name from a provided function.
* Note that the input type is not that suitable for constructing names,
* so this is more likely to be used in an indirect naming pattern like
* SaveString(Load('id'))
*/
@Categories(Category.state)
@ThreadSafeMapper
public class SaveString implements Function {
private final String name;
private final Function