put required categories on all binding functions, not just one of each name

This commit is contained in:
Jonathan Shook 2022-12-21 14:59:12 -06:00
parent b528a4e29c
commit 54546ce9ab
76 changed files with 220 additions and 82 deletions

View File

@ -16,11 +16,14 @@
package io.nosqlbench.virtdata.library.basics.shared.from_long.to_int; package io.nosqlbench.virtdata.library.basics.shared.from_long.to_int;
import io.nosqlbench.virtdata.api.annotations.Categories;
import io.nosqlbench.virtdata.api.annotations.Category;
import io.nosqlbench.virtdata.api.annotations.ThreadSafeMapper; import io.nosqlbench.virtdata.api.annotations.ThreadSafeMapper;
import java.util.function.LongToIntFunction; import java.util.function.LongToIntFunction;
@ThreadSafeMapper @ThreadSafeMapper
@Categories({Category.general})
public class Add implements LongToIntFunction { public class Add implements LongToIntFunction {
private final long addend; private final long addend;

View File

@ -15,6 +15,8 @@
*/ */
package io.nosqlbench.virtdata.library.basics.shared.from_long.to_int; package io.nosqlbench.virtdata.library.basics.shared.from_long.to_int;
import io.nosqlbench.virtdata.api.annotations.Categories;
import io.nosqlbench.virtdata.api.annotations.Category;
import io.nosqlbench.virtdata.api.annotations.Description; import io.nosqlbench.virtdata.api.annotations.Description;
import io.nosqlbench.virtdata.api.annotations.ThreadSafeMapper; import io.nosqlbench.virtdata.api.annotations.ThreadSafeMapper;
@ -22,6 +24,7 @@ import java.util.function.LongToIntFunction;
@Description("divides the operand by an long and returns the whole part") @Description("divides the operand by an long and returns the whole part")
@ThreadSafeMapper @ThreadSafeMapper
@Categories({Category.general})
public class Div implements LongToIntFunction { public class Div implements LongToIntFunction {
private final int divisor; private final int divisor;

View File

@ -28,7 +28,6 @@ import java.util.function.LongToIntFunction;
*/ */
@ThreadSafeMapper @ThreadSafeMapper
@Categories({Category.general}) @Categories({Category.general})
public class FixedValue implements LongToIntFunction { public class FixedValue implements LongToIntFunction {
private final int fixedValue; private final int fixedValue;

View File

@ -16,11 +16,14 @@
package io.nosqlbench.virtdata.library.basics.shared.from_long.to_int; package io.nosqlbench.virtdata.library.basics.shared.from_long.to_int;
import io.nosqlbench.virtdata.api.annotations.Categories;
import io.nosqlbench.virtdata.api.annotations.Category;
import io.nosqlbench.virtdata.api.annotations.ThreadSafeMapper; import io.nosqlbench.virtdata.api.annotations.ThreadSafeMapper;
import java.util.function.LongToIntFunction; import java.util.function.LongToIntFunction;
@ThreadSafeMapper @ThreadSafeMapper
@Categories({Category.general})
public class Mul implements LongToIntFunction { public class Mul implements LongToIntFunction {
public Mul(int multiplicand) { public Mul(int multiplicand) {

View File

@ -1,40 +0,0 @@
/*
* Copyright (c) 2022 nosqlbench
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
package io.nosqlbench.virtdata.library.basics.shared.from_long.to_int;
import io.nosqlbench.virtdata.api.annotations.Categories;
import io.nosqlbench.virtdata.api.annotations.Category;
import io.nosqlbench.virtdata.api.annotations.ThreadSafeMapper;
import java.util.function.LongToIntFunction;
@ThreadSafeMapper
@Deprecated
@Categories({Category.general})
public class Scale implements LongToIntFunction {
private final double scaleFactor;
public Scale(double scaleFactor) {
this.scaleFactor = scaleFactor;
}
@Override
public int applyAsInt(long value) {
return (int) (scaleFactor * (double) value);
}
}

View File

@ -16,11 +16,14 @@
package io.nosqlbench.virtdata.library.basics.shared.from_long.to_long; package io.nosqlbench.virtdata.library.basics.shared.from_long.to_long;
import io.nosqlbench.virtdata.api.annotations.Categories;
import io.nosqlbench.virtdata.api.annotations.Category;
import io.nosqlbench.virtdata.api.annotations.ThreadSafeMapper; import io.nosqlbench.virtdata.api.annotations.ThreadSafeMapper;
import java.util.function.LongUnaryOperator; import java.util.function.LongUnaryOperator;
@ThreadSafeMapper @ThreadSafeMapper
@Categories({Category.general})
public class Add implements LongUnaryOperator { public class Add implements LongUnaryOperator {
private final long addend; private final long addend;

View File

@ -16,11 +16,14 @@
package io.nosqlbench.virtdata.library.basics.shared.from_long.to_long; package io.nosqlbench.virtdata.library.basics.shared.from_long.to_long;
import io.nosqlbench.virtdata.api.annotations.Categories;
import io.nosqlbench.virtdata.api.annotations.Category;
import io.nosqlbench.virtdata.api.annotations.ThreadSafeMapper; import io.nosqlbench.virtdata.api.annotations.ThreadSafeMapper;
import java.util.function.LongUnaryOperator; import java.util.function.LongUnaryOperator;
@ThreadSafeMapper @ThreadSafeMapper
@Categories({Category.general})
public class AddCycleRange implements LongUnaryOperator { public class AddCycleRange implements LongUnaryOperator {
private final CycleRange cycleRange; private final CycleRange cycleRange;

View File

@ -16,11 +16,14 @@
package io.nosqlbench.virtdata.library.basics.shared.from_long.to_long; package io.nosqlbench.virtdata.library.basics.shared.from_long.to_long;
import io.nosqlbench.virtdata.api.annotations.Categories;
import io.nosqlbench.virtdata.api.annotations.Category;
import io.nosqlbench.virtdata.api.annotations.ThreadSafeMapper; import io.nosqlbench.virtdata.api.annotations.ThreadSafeMapper;
import java.util.function.LongUnaryOperator; import java.util.function.LongUnaryOperator;
@ThreadSafeMapper @ThreadSafeMapper
@Categories({Category.general})
public class AddHashRange implements LongUnaryOperator { public class AddHashRange implements LongUnaryOperator {
private final HashRange hashRange; private final HashRange hashRange;

View File

@ -16,6 +16,8 @@
package io.nosqlbench.virtdata.library.basics.shared.from_long.to_long; package io.nosqlbench.virtdata.library.basics.shared.from_long.to_long;
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.Example;
import io.nosqlbench.virtdata.api.annotations.ThreadSafeMapper; import io.nosqlbench.virtdata.api.annotations.ThreadSafeMapper;
@ -26,6 +28,7 @@ import java.util.function.LongUnaryOperator;
* at most the maximum value. * at most the maximum value.
*/ */
@ThreadSafeMapper @ThreadSafeMapper
@Categories({Category.general})
public class Clamp implements LongUnaryOperator { public class Clamp implements LongUnaryOperator {
private final long min; private final long min;

View File

@ -16,11 +16,14 @@
package io.nosqlbench.virtdata.library.basics.shared.from_long.to_long; package io.nosqlbench.virtdata.library.basics.shared.from_long.to_long;
import io.nosqlbench.virtdata.api.annotations.Categories;
import io.nosqlbench.virtdata.api.annotations.Category;
import io.nosqlbench.virtdata.api.annotations.ThreadSafeMapper; import io.nosqlbench.virtdata.api.annotations.ThreadSafeMapper;
import java.util.function.LongUnaryOperator; import java.util.function.LongUnaryOperator;
@ThreadSafeMapper @ThreadSafeMapper
@Categories({Category.general})
public class CycleRange implements LongUnaryOperator { public class CycleRange implements LongUnaryOperator {
private final long minValue; private final long minValue;

View File

@ -15,6 +15,8 @@
*/ */
package io.nosqlbench.virtdata.library.basics.shared.from_long.to_long; package io.nosqlbench.virtdata.library.basics.shared.from_long.to_long;
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.Example;
import io.nosqlbench.virtdata.api.annotations.ThreadSafeMapper; import io.nosqlbench.virtdata.api.annotations.ThreadSafeMapper;
@ -24,6 +26,7 @@ import java.util.function.LongUnaryOperator;
* Divide the operand by a fixed value and return the result. * Divide the operand by a fixed value and return the result.
*/ */
@ThreadSafeMapper @ThreadSafeMapper
@Categories({Category.general})
public class Div implements LongUnaryOperator { public class Div implements LongUnaryOperator {
private final long divisor; private final long divisor;

View File

@ -16,11 +16,14 @@
package io.nosqlbench.virtdata.library.basics.shared.from_long.to_long; package io.nosqlbench.virtdata.library.basics.shared.from_long.to_long;
import io.nosqlbench.virtdata.api.annotations.Categories;
import io.nosqlbench.virtdata.api.annotations.Category;
import io.nosqlbench.virtdata.api.annotations.ThreadSafeMapper; import io.nosqlbench.virtdata.api.annotations.ThreadSafeMapper;
import java.util.function.LongUnaryOperator; import java.util.function.LongUnaryOperator;
@ThreadSafeMapper @ThreadSafeMapper
@Categories({Category.general})
public class FixedValue implements LongUnaryOperator { public class FixedValue implements LongUnaryOperator {
private final long fixedValue; private final long fixedValue;

View File

@ -17,6 +17,8 @@
package io.nosqlbench.virtdata.library.basics.shared.from_long.to_long; package io.nosqlbench.virtdata.library.basics.shared.from_long.to_long;
import io.nosqlbench.api.errors.BasicError; import io.nosqlbench.api.errors.BasicError;
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.Example;
import io.nosqlbench.virtdata.api.annotations.ThreadSafeMapper; import io.nosqlbench.virtdata.api.annotations.ThreadSafeMapper;
@ -33,6 +35,7 @@ import java.util.function.LongUnaryOperator;
* (5,6), or as wide as the relevant data type allows. * (5,6), or as wide as the relevant data type allows.
*/ */
@ThreadSafeMapper @ThreadSafeMapper
@Categories({Category.general})
public class HashInterval implements LongUnaryOperator { public class HashInterval implements LongUnaryOperator {
private final long minValue; private final long minValue;

View File

@ -17,6 +17,8 @@
package io.nosqlbench.virtdata.library.basics.shared.from_long.to_long; package io.nosqlbench.virtdata.library.basics.shared.from_long.to_long;
import io.nosqlbench.api.errors.BasicError; import io.nosqlbench.api.errors.BasicError;
import io.nosqlbench.virtdata.api.annotations.Categories;
import io.nosqlbench.virtdata.api.annotations.Category;
import io.nosqlbench.virtdata.api.annotations.ThreadSafeMapper; import io.nosqlbench.virtdata.api.annotations.ThreadSafeMapper;
import java.util.function.LongUnaryOperator; import java.util.function.LongUnaryOperator;
@ -30,6 +32,7 @@ import java.util.function.LongUnaryOperator;
* (5,5), or as wide as the relevant data type allows. * (5,5), or as wide as the relevant data type allows.
*/ */
@ThreadSafeMapper @ThreadSafeMapper
@Categories({Category.general})
public class HashRange implements LongUnaryOperator { public class HashRange implements LongUnaryOperator {
private final long minValue; private final long minValue;

View File

@ -16,6 +16,8 @@
package io.nosqlbench.virtdata.library.basics.shared.from_long.to_long; package io.nosqlbench.virtdata.library.basics.shared.from_long.to_long;
import io.nosqlbench.virtdata.api.annotations.Categories;
import io.nosqlbench.virtdata.api.annotations.Category;
import io.nosqlbench.virtdata.api.annotations.ThreadSafeMapper; import io.nosqlbench.virtdata.api.annotations.ThreadSafeMapper;
import java.util.function.LongUnaryOperator; import java.util.function.LongUnaryOperator;
@ -25,6 +27,7 @@ import java.util.function.LongUnaryOperator;
* a scale factor, with a default scale factor of 1.0d * a scale factor, with a default scale factor of 1.0d
*/ */
@ThreadSafeMapper @ThreadSafeMapper
@Categories({Category.general})
public class HashRangeScaled implements LongUnaryOperator { public class HashRangeScaled implements LongUnaryOperator {
private final double scalefactor; private final double scalefactor;

View File

@ -17,12 +17,15 @@
package io.nosqlbench.virtdata.library.basics.shared.from_long.to_long; package io.nosqlbench.virtdata.library.basics.shared.from_long.to_long;
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.Example;
import io.nosqlbench.virtdata.api.annotations.ThreadSafeMapper; import io.nosqlbench.virtdata.api.annotations.ThreadSafeMapper;
import java.util.function.LongUnaryOperator; import java.util.function.LongUnaryOperator;
@ThreadSafeMapper @ThreadSafeMapper
@Categories({Category.general})
public class Interpolate implements LongUnaryOperator { public class Interpolate implements LongUnaryOperator {
private final io.nosqlbench.virtdata.library.basics.shared.from_long.to_double.Interpolate basefunc; private final io.nosqlbench.virtdata.library.basics.shared.from_long.to_double.Interpolate basefunc;

View File

@ -16,6 +16,8 @@
package io.nosqlbench.virtdata.library.basics.shared.from_long.to_long; package io.nosqlbench.virtdata.library.basics.shared.from_long.to_long;
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.Example;
import io.nosqlbench.virtdata.api.annotations.ThreadSafeMapper; import io.nosqlbench.virtdata.api.annotations.ThreadSafeMapper;
@ -25,6 +27,7 @@ import java.util.function.LongUnaryOperator;
* Return the maximum of either the input value or the specified max. * Return the maximum of either the input value or the specified max.
*/ */
@ThreadSafeMapper @ThreadSafeMapper
@Categories({Category.general})
public class Max implements LongUnaryOperator { public class Max implements LongUnaryOperator {
private final long max; private final long max;

View File

@ -16,6 +16,8 @@
package io.nosqlbench.virtdata.library.basics.shared.from_long.to_long; package io.nosqlbench.virtdata.library.basics.shared.from_long.to_long;
import io.nosqlbench.virtdata.api.annotations.Categories;
import io.nosqlbench.virtdata.api.annotations.Category;
import io.nosqlbench.virtdata.api.annotations.ThreadSafeMapper; import io.nosqlbench.virtdata.api.annotations.ThreadSafeMapper;
import java.util.function.LongUnaryOperator; import java.util.function.LongUnaryOperator;
@ -24,6 +26,7 @@ import java.util.function.LongUnaryOperator;
* Return the minimum of either the input value or the specified minimum. * Return the minimum of either the input value or the specified minimum.
*/ */
@ThreadSafeMapper @ThreadSafeMapper
@Categories({Category.general})
public class Min implements LongUnaryOperator { public class Min implements LongUnaryOperator {
private final long min; private final long min;

View File

@ -15,6 +15,8 @@
*/ */
package io.nosqlbench.virtdata.library.basics.shared.from_long.to_long; package io.nosqlbench.virtdata.library.basics.shared.from_long.to_long;
import io.nosqlbench.virtdata.api.annotations.Categories;
import io.nosqlbench.virtdata.api.annotations.Category;
import io.nosqlbench.virtdata.api.annotations.ThreadSafeMapper; import io.nosqlbench.virtdata.api.annotations.ThreadSafeMapper;
import java.util.function.LongUnaryOperator; import java.util.function.LongUnaryOperator;
@ -23,6 +25,7 @@ import java.util.function.LongUnaryOperator;
* Return the result of modulo division by the specified divisor. * Return the result of modulo division by the specified divisor.
*/ */
@ThreadSafeMapper @ThreadSafeMapper
@Categories({Category.general})
public class Mod implements LongUnaryOperator { public class Mod implements LongUnaryOperator {
private final Long modulo; private final Long modulo;

View File

@ -16,6 +16,8 @@
package io.nosqlbench.virtdata.library.basics.shared.from_long.to_long; package io.nosqlbench.virtdata.library.basics.shared.from_long.to_long;
import io.nosqlbench.virtdata.api.annotations.Categories;
import io.nosqlbench.virtdata.api.annotations.Category;
import io.nosqlbench.virtdata.api.annotations.ThreadSafeMapper; import io.nosqlbench.virtdata.api.annotations.ThreadSafeMapper;
import java.util.function.LongUnaryOperator; import java.util.function.LongUnaryOperator;
@ -24,6 +26,7 @@ import java.util.function.LongUnaryOperator;
* Return the result of multiplying the specified value with the input. * Return the result of multiplying the specified value with the input.
*/ */
@ThreadSafeMapper @ThreadSafeMapper
@Categories({Category.general})
public class Mul implements LongUnaryOperator { public class Mul implements LongUnaryOperator {
public Mul(long multiplicand) { public Mul(long multiplicand) {

View File

@ -16,6 +16,8 @@
package io.nosqlbench.virtdata.library.basics.shared.from_long.to_long; package io.nosqlbench.virtdata.library.basics.shared.from_long.to_long;
import io.nosqlbench.virtdata.api.annotations.Categories;
import io.nosqlbench.virtdata.api.annotations.Category;
import io.nosqlbench.virtdata.api.annotations.ThreadSafeMapper; import io.nosqlbench.virtdata.api.annotations.ThreadSafeMapper;
import io.nosqlbench.virtdata.murmur.Murmur3F; import io.nosqlbench.virtdata.murmur.Murmur3F;
@ -32,6 +34,7 @@ import java.util.function.LongUnaryOperator;
* as well as negative values. * as well as negative values.
*/ */
@ThreadSafeMapper @ThreadSafeMapper
@Categories({Category.general})
public class SignedHash implements LongUnaryOperator { public class SignedHash implements LongUnaryOperator {
// TODO: Bench this against the non-state based TL implementations // TODO: Bench this against the non-state based TL implementations

View File

@ -16,6 +16,8 @@
package io.nosqlbench.virtdata.library.basics.shared.from_long.to_long; package io.nosqlbench.virtdata.library.basics.shared.from_long.to_long;
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.Example;
import io.nosqlbench.virtdata.api.annotations.ThreadSafeMapper; import io.nosqlbench.virtdata.api.annotations.ThreadSafeMapper;
@ -38,6 +40,7 @@ import java.util.function.LongUnaryOperator;
* join the project or let us know.</p> * join the project or let us know.</p>
*/ */
@ThreadSafeMapper @ThreadSafeMapper
@Categories({Category.experimental})
public class TriangularStep implements LongUnaryOperator { public class TriangularStep implements LongUnaryOperator {
private final Hash hasher = new Hash(); private final Hash hasher = new Hash();

View File

@ -16,11 +16,14 @@
package io.nosqlbench.virtdata.library.basics.shared.from_long.to_string; package io.nosqlbench.virtdata.library.basics.shared.from_long.to_string;
import io.nosqlbench.virtdata.api.annotations.Categories;
import io.nosqlbench.virtdata.api.annotations.Category;
import io.nosqlbench.virtdata.api.annotations.ThreadSafeMapper; import io.nosqlbench.virtdata.api.annotations.ThreadSafeMapper;
import java.util.function.LongFunction; import java.util.function.LongFunction;
@ThreadSafeMapper @ThreadSafeMapper
@Categories({Category.general})
public class FixedValue implements LongFunction<String> { public class FixedValue implements LongFunction<String> {
private final String value; private final String value;

View File

@ -16,6 +16,8 @@
package io.nosqlbench.virtdata.library.basics.shared.from_uuid; package io.nosqlbench.virtdata.library.basics.shared.from_uuid;
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.Example;
import io.nosqlbench.virtdata.api.annotations.ThreadSafeMapper; import io.nosqlbench.virtdata.api.annotations.ThreadSafeMapper;
@ -26,8 +28,9 @@ import java.util.UUID;
import java.util.function.Function; import java.util.function.Function;
@ThreadSafeMapper @ThreadSafeMapper
@Categories(Category.conversion)
public class ToBase64String implements Function<UUID,String> { public class ToBase64String implements Function<UUID,String> {
private ThreadLocal<Base64.Encoder> tl_encoder = ThreadLocal.withInitial(Base64::getEncoder); private final ThreadLocal<Base64.Encoder> tl_encoder = ThreadLocal.withInitial(Base64::getEncoder);
@Example({"ToBase64String()","Encode the bits of a UUID into a Base64 String"}) @Example({"ToBase64String()","Encode the bits of a UUID into a Base64 String"})
public ToBase64String() { public ToBase64String() {

View File

@ -16,6 +16,8 @@
package io.nosqlbench.virtdata.library.basics.shared.unary_int; package io.nosqlbench.virtdata.library.basics.shared.unary_int;
import io.nosqlbench.virtdata.api.annotations.Categories;
import io.nosqlbench.virtdata.api.annotations.Category;
import io.nosqlbench.virtdata.api.annotations.ThreadSafeMapper; import io.nosqlbench.virtdata.api.annotations.ThreadSafeMapper;
import java.util.function.IntUnaryOperator; import java.util.function.IntUnaryOperator;
@ -24,6 +26,7 @@ import java.util.function.IntUnaryOperator;
* Adds a cycle range to the input, producing an increasing sawtooth-like output. * Adds a cycle range to the input, producing an increasing sawtooth-like output.
*/ */
@ThreadSafeMapper @ThreadSafeMapper
@Categories({Category.general})
public class AddCycleRange implements IntUnaryOperator { public class AddCycleRange implements IntUnaryOperator {
private final CycleRange cycleRange; private final CycleRange cycleRange;

View File

@ -16,6 +16,8 @@
package io.nosqlbench.virtdata.library.basics.shared.unary_int; package io.nosqlbench.virtdata.library.basics.shared.unary_int;
import io.nosqlbench.virtdata.api.annotations.Categories;
import io.nosqlbench.virtdata.api.annotations.Category;
import io.nosqlbench.virtdata.api.annotations.ThreadSafeMapper; import io.nosqlbench.virtdata.api.annotations.ThreadSafeMapper;
import java.util.function.IntUnaryOperator; import java.util.function.IntUnaryOperator;
@ -24,6 +26,7 @@ import java.util.function.IntUnaryOperator;
* Adds a pseudo-random value within the specified range to the input. * Adds a pseudo-random value within the specified range to the input.
*/ */
@ThreadSafeMapper @ThreadSafeMapper
@Categories({Category.general})
public class AddHashRange implements IntUnaryOperator { public class AddHashRange implements IntUnaryOperator {
private final io.nosqlbench.virtdata.library.basics.shared.unary_int.HashRange hashRange; private final io.nosqlbench.virtdata.library.basics.shared.unary_int.HashRange hashRange;

View File

@ -16,12 +16,15 @@
package io.nosqlbench.virtdata.library.basics.shared.unary_int; package io.nosqlbench.virtdata.library.basics.shared.unary_int;
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.Example;
import io.nosqlbench.virtdata.api.annotations.ThreadSafeMapper; import io.nosqlbench.virtdata.api.annotations.ThreadSafeMapper;
import java.util.function.IntUnaryOperator; import java.util.function.IntUnaryOperator;
@ThreadSafeMapper @ThreadSafeMapper
@Categories({Category.general})
public class Clamp implements IntUnaryOperator { public class Clamp implements IntUnaryOperator {
private final int min; private final int min;

View File

@ -16,6 +16,8 @@
package io.nosqlbench.virtdata.library.basics.shared.unary_int; package io.nosqlbench.virtdata.library.basics.shared.unary_int;
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.Example;
import io.nosqlbench.virtdata.api.annotations.ThreadSafeMapper; import io.nosqlbench.virtdata.api.annotations.ThreadSafeMapper;
@ -25,6 +27,7 @@ import java.util.function.IntUnaryOperator;
* Yields a value within a specified range, which rolls over continuously. * Yields a value within a specified range, which rolls over continuously.
*/ */
@ThreadSafeMapper @ThreadSafeMapper
@Categories({Category.general})
public class CycleRange implements IntUnaryOperator { public class CycleRange implements IntUnaryOperator {
private final int minValue; private final int minValue;

View File

@ -15,6 +15,8 @@
*/ */
package io.nosqlbench.virtdata.library.basics.shared.unary_int; package io.nosqlbench.virtdata.library.basics.shared.unary_int;
import io.nosqlbench.virtdata.api.annotations.Categories;
import io.nosqlbench.virtdata.api.annotations.Category;
import io.nosqlbench.virtdata.api.annotations.Description; import io.nosqlbench.virtdata.api.annotations.Description;
import io.nosqlbench.virtdata.api.annotations.ThreadSafeMapper; import io.nosqlbench.virtdata.api.annotations.ThreadSafeMapper;
@ -22,6 +24,7 @@ import java.util.function.IntUnaryOperator;
@Description("divides the operand by an integer and returns the whole part") @Description("divides the operand by an integer and returns the whole part")
@ThreadSafeMapper @ThreadSafeMapper
@Categories({Category.general})
public class Div implements IntUnaryOperator { public class Div implements IntUnaryOperator {
private final int divisor; private final int divisor;

View File

@ -17,12 +17,15 @@
package io.nosqlbench.virtdata.library.basics.shared.unary_int; package io.nosqlbench.virtdata.library.basics.shared.unary_int;
import io.nosqlbench.api.errors.BasicError; import io.nosqlbench.api.errors.BasicError;
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.Example;
import io.nosqlbench.virtdata.api.annotations.ThreadSafeMapper; import io.nosqlbench.virtdata.api.annotations.ThreadSafeMapper;
import java.util.function.IntUnaryOperator; import java.util.function.IntUnaryOperator;
@ThreadSafeMapper @ThreadSafeMapper
@Categories({Category.general})
public class HashInterval implements IntUnaryOperator { public class HashInterval implements IntUnaryOperator {
private final int minValue; private final int minValue;

View File

@ -17,11 +17,14 @@
package io.nosqlbench.virtdata.library.basics.shared.unary_int; package io.nosqlbench.virtdata.library.basics.shared.unary_int;
import io.nosqlbench.api.errors.BasicError; import io.nosqlbench.api.errors.BasicError;
import io.nosqlbench.virtdata.api.annotations.Categories;
import io.nosqlbench.virtdata.api.annotations.Category;
import io.nosqlbench.virtdata.api.annotations.ThreadSafeMapper; import io.nosqlbench.virtdata.api.annotations.ThreadSafeMapper;
import java.util.function.IntUnaryOperator; import java.util.function.IntUnaryOperator;
@ThreadSafeMapper @ThreadSafeMapper
@Categories({Category.general})
public class HashRange implements IntUnaryOperator { public class HashRange implements IntUnaryOperator {
private final int minValue; private final int minValue;

View File

@ -16,11 +16,14 @@
package io.nosqlbench.virtdata.library.basics.shared.unary_int; package io.nosqlbench.virtdata.library.basics.shared.unary_int;
import io.nosqlbench.virtdata.api.annotations.Categories;
import io.nosqlbench.virtdata.api.annotations.Category;
import io.nosqlbench.virtdata.api.annotations.ThreadSafeMapper; import io.nosqlbench.virtdata.api.annotations.ThreadSafeMapper;
import java.util.function.IntUnaryOperator; import java.util.function.IntUnaryOperator;
@ThreadSafeMapper @ThreadSafeMapper
@Categories({Category.general})
public class HashRangeScaled implements IntUnaryOperator { public class HashRangeScaled implements IntUnaryOperator {
private final Hash hash = new Hash(); private final Hash hash = new Hash();

View File

@ -16,11 +16,14 @@
package io.nosqlbench.virtdata.library.basics.shared.unary_int; package io.nosqlbench.virtdata.library.basics.shared.unary_int;
import io.nosqlbench.virtdata.api.annotations.Categories;
import io.nosqlbench.virtdata.api.annotations.Category;
import io.nosqlbench.virtdata.api.annotations.ThreadSafeMapper; import io.nosqlbench.virtdata.api.annotations.ThreadSafeMapper;
import java.util.function.IntUnaryOperator; import java.util.function.IntUnaryOperator;
@ThreadSafeMapper @ThreadSafeMapper
@Categories({Category.general})
public class Max implements IntUnaryOperator { public class Max implements IntUnaryOperator {
private final int max; private final int max;

View File

@ -16,11 +16,14 @@
package io.nosqlbench.virtdata.library.basics.shared.unary_int; package io.nosqlbench.virtdata.library.basics.shared.unary_int;
import io.nosqlbench.virtdata.api.annotations.Categories;
import io.nosqlbench.virtdata.api.annotations.Category;
import io.nosqlbench.virtdata.api.annotations.ThreadSafeMapper; import io.nosqlbench.virtdata.api.annotations.ThreadSafeMapper;
import java.util.function.IntUnaryOperator; import java.util.function.IntUnaryOperator;
@ThreadSafeMapper @ThreadSafeMapper
@Categories({Category.general})
public class Min implements IntUnaryOperator { public class Min implements IntUnaryOperator {
private final int min; private final int min;

View File

@ -15,11 +15,14 @@
*/ */
package io.nosqlbench.virtdata.library.basics.shared.unary_int; package io.nosqlbench.virtdata.library.basics.shared.unary_int;
import io.nosqlbench.virtdata.api.annotations.Categories;
import io.nosqlbench.virtdata.api.annotations.Category;
import io.nosqlbench.virtdata.api.annotations.ThreadSafeMapper; import io.nosqlbench.virtdata.api.annotations.ThreadSafeMapper;
import java.util.function.IntUnaryOperator; import java.util.function.IntUnaryOperator;
@ThreadSafeMapper @ThreadSafeMapper
@Categories({Category.general})
public class Mod implements IntUnaryOperator { public class Mod implements IntUnaryOperator {
private final int modulo; private final int modulo;

View File

@ -16,11 +16,14 @@
package io.nosqlbench.virtdata.library.basics.shared.unary_int; package io.nosqlbench.virtdata.library.basics.shared.unary_int;
import io.nosqlbench.virtdata.api.annotations.Categories;
import io.nosqlbench.virtdata.api.annotations.Category;
import io.nosqlbench.virtdata.api.annotations.ThreadSafeMapper; import io.nosqlbench.virtdata.api.annotations.ThreadSafeMapper;
import java.util.function.IntUnaryOperator; import java.util.function.IntUnaryOperator;
@ThreadSafeMapper @ThreadSafeMapper
@Categories({Category.general})
public class Mul implements IntUnaryOperator { public class Mul implements IntUnaryOperator {
public Mul(int addend) { public Mul(int addend) {

View File

@ -1,40 +0,0 @@
/*
* Copyright (c) 2022 nosqlbench
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
package io.nosqlbench.virtdata.library.basics.shared.unary_int;
import io.nosqlbench.virtdata.api.annotations.ThreadSafeMapper;
import java.util.function.IntUnaryOperator;
/**
* Scale the input by the factor provided.
* @deprecated use Mul(...) instead
*/
@ThreadSafeMapper
public class Scale implements IntUnaryOperator {
private final double scaleFactor;
public Scale(double scaleFactor) {
this.scaleFactor = scaleFactor;
}
@Override
public int applyAsInt(int operand) {
return (int) (scaleFactor * (double) operand);
}
}

View File

@ -16,6 +16,8 @@
package io.nosqlbench.virtdata.library.basics.shared.unary_int; package io.nosqlbench.virtdata.library.basics.shared.unary_int;
import io.nosqlbench.virtdata.api.annotations.Categories;
import io.nosqlbench.virtdata.api.annotations.Category;
import io.nosqlbench.virtdata.api.annotations.ThreadSafeMapper; import io.nosqlbench.virtdata.api.annotations.ThreadSafeMapper;
import io.nosqlbench.virtdata.murmur.Murmur3F; import io.nosqlbench.virtdata.murmur.Murmur3F;
@ -23,6 +25,7 @@ import java.nio.ByteBuffer;
import java.util.function.IntUnaryOperator; import java.util.function.IntUnaryOperator;
@ThreadSafeMapper @ThreadSafeMapper
@Categories({Category.general})
public class SignedHash implements IntUnaryOperator { public class SignedHash implements IntUnaryOperator {
private final ThreadLocal<Murmur3F> murmur3f_TL = ThreadLocal.withInitial(Murmur3F::new); private final ThreadLocal<Murmur3F> murmur3f_TL = ThreadLocal.withInitial(Murmur3F::new);

View File

@ -16,6 +16,8 @@
package io.nosqlbench.virtdata.library.basics.shared.unary_string; package io.nosqlbench.virtdata.library.basics.shared.unary_string;
import io.nosqlbench.virtdata.api.annotations.Categories;
import io.nosqlbench.virtdata.api.annotations.Category;
import io.nosqlbench.virtdata.api.annotations.ThreadSafeMapper; import io.nosqlbench.virtdata.api.annotations.ThreadSafeMapper;
import java.util.function.Function; import java.util.function.Function;
@ -26,6 +28,7 @@ import java.util.function.Function;
* String.valueOf() to the result. * String.valueOf() to the result.
*/ */
@ThreadSafeMapper @ThreadSafeMapper
@Categories({Category.conversion})
public class ToString implements Function<Object,String> { public class ToString implements Function<Object,String> {
@Override @Override

View File

@ -16,10 +16,13 @@
package io.nosqlbench.virtdata.library.curves4.continuous.long_double; package io.nosqlbench.virtdata.library.curves4.continuous.long_double;
import io.nosqlbench.virtdata.api.annotations.Categories;
import io.nosqlbench.virtdata.api.annotations.Category;
import io.nosqlbench.virtdata.api.annotations.ThreadSafeMapper; import io.nosqlbench.virtdata.api.annotations.ThreadSafeMapper;
import org.apache.commons.statistics.distribution.CauchyDistribution; import org.apache.commons.statistics.distribution.CauchyDistribution;
@ThreadSafeMapper @ThreadSafeMapper
@Categories({Category.distributions})
public class Cauchy extends LongToDoubleContinuousCurve { public class Cauchy extends LongToDoubleContinuousCurve {
public Cauchy(double median, double scale, String... mods) { public Cauchy(double median, double scale, String... mods) {
super(new CauchyDistribution(median, scale), mods); super(new CauchyDistribution(median, scale), mods);

View File

@ -16,10 +16,13 @@
package io.nosqlbench.virtdata.library.curves4.continuous.long_double; package io.nosqlbench.virtdata.library.curves4.continuous.long_double;
import io.nosqlbench.virtdata.api.annotations.Categories;
import io.nosqlbench.virtdata.api.annotations.Category;
import io.nosqlbench.virtdata.api.annotations.ThreadSafeMapper; import io.nosqlbench.virtdata.api.annotations.ThreadSafeMapper;
import org.apache.commons.statistics.distribution.ChiSquaredDistribution; import org.apache.commons.statistics.distribution.ChiSquaredDistribution;
@ThreadSafeMapper @ThreadSafeMapper
@Categories({Category.distributions})
public class ChiSquared extends LongToDoubleContinuousCurve { public class ChiSquared extends LongToDoubleContinuousCurve {
public ChiSquared(double degreesOfFreedom, String... mods) { public ChiSquared(double degreesOfFreedom, String... mods) {
super(new ChiSquaredDistribution(degreesOfFreedom), mods); super(new ChiSquaredDistribution(degreesOfFreedom), mods);

View File

@ -16,10 +16,13 @@
package io.nosqlbench.virtdata.library.curves4.continuous.long_double; package io.nosqlbench.virtdata.library.curves4.continuous.long_double;
import io.nosqlbench.virtdata.api.annotations.Categories;
import io.nosqlbench.virtdata.api.annotations.Category;
import io.nosqlbench.virtdata.api.annotations.ThreadSafeMapper; import io.nosqlbench.virtdata.api.annotations.ThreadSafeMapper;
import org.apache.commons.statistics.distribution.ConstantContinuousDistribution; import org.apache.commons.statistics.distribution.ConstantContinuousDistribution;
@ThreadSafeMapper @ThreadSafeMapper
@Categories({Category.distributions})
public class ConstantContinuous extends LongToDoubleContinuousCurve { public class ConstantContinuous extends LongToDoubleContinuousCurve {
public ConstantContinuous(double value, String... mods) { public ConstantContinuous(double value, String... mods) {
super(new ConstantContinuousDistribution(value), mods); super(new ConstantContinuousDistribution(value), mods);

View File

@ -16,11 +16,14 @@
package io.nosqlbench.virtdata.library.curves4.continuous.long_double; package io.nosqlbench.virtdata.library.curves4.continuous.long_double;
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.Example;
import io.nosqlbench.virtdata.api.annotations.ThreadSafeMapper; import io.nosqlbench.virtdata.api.annotations.ThreadSafeMapper;
import org.apache.commons.math4.distribution.EnumeratedRealDistribution; import org.apache.commons.math4.distribution.EnumeratedRealDistribution;
@ThreadSafeMapper @ThreadSafeMapper
@Categories({Category.distributions})
public class Enumerated extends LongToDoubleContinuousCurve { public class Enumerated extends LongToDoubleContinuousCurve {
@Example({"Enumerated('1 2 3 4 5 6')","a fair 6-sided die"}) @Example({"Enumerated('1 2 3 4 5 6')","a fair 6-sided die"})

View File

@ -16,10 +16,13 @@
package io.nosqlbench.virtdata.library.curves4.continuous.long_double; package io.nosqlbench.virtdata.library.curves4.continuous.long_double;
import io.nosqlbench.virtdata.api.annotations.Categories;
import io.nosqlbench.virtdata.api.annotations.Category;
import io.nosqlbench.virtdata.api.annotations.ThreadSafeMapper; import io.nosqlbench.virtdata.api.annotations.ThreadSafeMapper;
import org.apache.commons.statistics.distribution.ExponentialDistribution; import org.apache.commons.statistics.distribution.ExponentialDistribution;
@ThreadSafeMapper @ThreadSafeMapper
@Categories({Category.distributions})
public class Exponential extends LongToDoubleContinuousCurve { public class Exponential extends LongToDoubleContinuousCurve {
public Exponential(double mean, String... mods) { public Exponential(double mean, String... mods) {
super(new ExponentialDistribution(mean), mods); super(new ExponentialDistribution(mean), mods);

View File

@ -16,10 +16,13 @@
package io.nosqlbench.virtdata.library.curves4.continuous.long_double; package io.nosqlbench.virtdata.library.curves4.continuous.long_double;
import io.nosqlbench.virtdata.api.annotations.Categories;
import io.nosqlbench.virtdata.api.annotations.Category;
import io.nosqlbench.virtdata.api.annotations.ThreadSafeMapper; import io.nosqlbench.virtdata.api.annotations.ThreadSafeMapper;
import org.apache.commons.statistics.distribution.FDistribution; import org.apache.commons.statistics.distribution.FDistribution;
@ThreadSafeMapper @ThreadSafeMapper
@Categories({Category.distributions})
public class F extends LongToDoubleContinuousCurve { public class F extends LongToDoubleContinuousCurve {
public F(double numeratorDegreesOfFreedom, double denominatorDegreesOfFreedom, String... mods) { public F(double numeratorDegreesOfFreedom, double denominatorDegreesOfFreedom, String... mods) {
super(new FDistribution(numeratorDegreesOfFreedom, denominatorDegreesOfFreedom), mods); super(new FDistribution(numeratorDegreesOfFreedom, denominatorDegreesOfFreedom), mods);

View File

@ -16,10 +16,13 @@
package io.nosqlbench.virtdata.library.curves4.continuous.long_double; package io.nosqlbench.virtdata.library.curves4.continuous.long_double;
import io.nosqlbench.virtdata.api.annotations.Categories;
import io.nosqlbench.virtdata.api.annotations.Category;
import io.nosqlbench.virtdata.api.annotations.ThreadSafeMapper; import io.nosqlbench.virtdata.api.annotations.ThreadSafeMapper;
import org.apache.commons.statistics.distribution.GammaDistribution; import org.apache.commons.statistics.distribution.GammaDistribution;
@ThreadSafeMapper @ThreadSafeMapper
@Categories({Category.distributions})
public class Gamma extends LongToDoubleContinuousCurve { public class Gamma extends LongToDoubleContinuousCurve {
public Gamma(double shape, double scale, String... mods) { public Gamma(double shape, double scale, String... mods) {
super(new GammaDistribution(shape, scale), mods); super(new GammaDistribution(shape, scale), mods);

View File

@ -16,10 +16,13 @@
package io.nosqlbench.virtdata.library.curves4.continuous.long_double; package io.nosqlbench.virtdata.library.curves4.continuous.long_double;
import io.nosqlbench.virtdata.api.annotations.Categories;
import io.nosqlbench.virtdata.api.annotations.Category;
import io.nosqlbench.virtdata.api.annotations.ThreadSafeMapper; import io.nosqlbench.virtdata.api.annotations.ThreadSafeMapper;
import org.apache.commons.statistics.distribution.GumbelDistribution; import org.apache.commons.statistics.distribution.GumbelDistribution;
@ThreadSafeMapper @ThreadSafeMapper
@Categories({Category.distributions})
public class Gumbel extends LongToDoubleContinuousCurve { public class Gumbel extends LongToDoubleContinuousCurve {
public Gumbel(double mu, double beta, String... mods) { public Gumbel(double mu, double beta, String... mods) {
super(new GumbelDistribution(mu, beta), mods); super(new GumbelDistribution(mu, beta), mods);

View File

@ -16,10 +16,13 @@
package io.nosqlbench.virtdata.library.curves4.continuous.long_double; package io.nosqlbench.virtdata.library.curves4.continuous.long_double;
import io.nosqlbench.virtdata.api.annotations.Categories;
import io.nosqlbench.virtdata.api.annotations.Category;
import io.nosqlbench.virtdata.api.annotations.ThreadSafeMapper; import io.nosqlbench.virtdata.api.annotations.ThreadSafeMapper;
import org.apache.commons.statistics.distribution.LaplaceDistribution; import org.apache.commons.statistics.distribution.LaplaceDistribution;
@ThreadSafeMapper @ThreadSafeMapper
@Categories({Category.distributions})
public class Laplace extends LongToDoubleContinuousCurve { public class Laplace extends LongToDoubleContinuousCurve {
public Laplace(double mu, double beta, String... mods) { public Laplace(double mu, double beta, String... mods) {
super(new LaplaceDistribution(mu, beta), mods); super(new LaplaceDistribution(mu, beta), mods);

View File

@ -16,10 +16,13 @@
package io.nosqlbench.virtdata.library.curves4.continuous.long_double; package io.nosqlbench.virtdata.library.curves4.continuous.long_double;
import io.nosqlbench.virtdata.api.annotations.Categories;
import io.nosqlbench.virtdata.api.annotations.Category;
import io.nosqlbench.virtdata.api.annotations.ThreadSafeMapper; import io.nosqlbench.virtdata.api.annotations.ThreadSafeMapper;
import org.apache.commons.statistics.distribution.LevyDistribution; import org.apache.commons.statistics.distribution.LevyDistribution;
@ThreadSafeMapper @ThreadSafeMapper
@Categories({Category.distributions})
public class Levy extends LongToDoubleContinuousCurve { public Levy(double mu, double c, String... mods) { super(new LevyDistribution(mu,c), mods); public class Levy extends LongToDoubleContinuousCurve { public Levy(double mu, double c, String... mods) { super(new LevyDistribution(mu,c), mods);
} }
} }

View File

@ -16,10 +16,13 @@
package io.nosqlbench.virtdata.library.curves4.continuous.long_double; package io.nosqlbench.virtdata.library.curves4.continuous.long_double;
import io.nosqlbench.virtdata.api.annotations.Categories;
import io.nosqlbench.virtdata.api.annotations.Category;
import io.nosqlbench.virtdata.api.annotations.ThreadSafeMapper; import io.nosqlbench.virtdata.api.annotations.ThreadSafeMapper;
import org.apache.commons.statistics.distribution.LogNormalDistribution; import org.apache.commons.statistics.distribution.LogNormalDistribution;
@ThreadSafeMapper @ThreadSafeMapper
@Categories({Category.distributions})
public class LogNormal extends LongToDoubleContinuousCurve { public class LogNormal extends LongToDoubleContinuousCurve {
public LogNormal(double scale, double shape, String... mods) { public LogNormal(double scale, double shape, String... mods) {
super(new LogNormalDistribution(scale, shape), mods); super(new LogNormalDistribution(scale, shape), mods);

View File

@ -16,10 +16,13 @@
package io.nosqlbench.virtdata.library.curves4.continuous.long_double; package io.nosqlbench.virtdata.library.curves4.continuous.long_double;
import io.nosqlbench.virtdata.api.annotations.Categories;
import io.nosqlbench.virtdata.api.annotations.Category;
import io.nosqlbench.virtdata.api.annotations.ThreadSafeMapper; import io.nosqlbench.virtdata.api.annotations.ThreadSafeMapper;
import org.apache.commons.statistics.distribution.LogisticDistribution; import org.apache.commons.statistics.distribution.LogisticDistribution;
@ThreadSafeMapper @ThreadSafeMapper
@Categories({Category.distributions})
public class Logistic extends LongToDoubleContinuousCurve { public class Logistic extends LongToDoubleContinuousCurve {
public Logistic(double mu, double scale, String... mods) { public Logistic(double mu, double scale, String... mods) {
super(new LogisticDistribution(mu, scale), mods); super(new LogisticDistribution(mu, scale), mods);

View File

@ -16,10 +16,13 @@
package io.nosqlbench.virtdata.library.curves4.continuous.long_double; package io.nosqlbench.virtdata.library.curves4.continuous.long_double;
import io.nosqlbench.virtdata.api.annotations.Categories;
import io.nosqlbench.virtdata.api.annotations.Category;
import io.nosqlbench.virtdata.api.annotations.ThreadSafeMapper; import io.nosqlbench.virtdata.api.annotations.ThreadSafeMapper;
import org.apache.commons.statistics.distribution.NakagamiDistribution; import org.apache.commons.statistics.distribution.NakagamiDistribution;
@ThreadSafeMapper @ThreadSafeMapper
@Categories({Category.distributions})
public class Nakagami extends LongToDoubleContinuousCurve { public class Nakagami extends LongToDoubleContinuousCurve {
public Nakagami(double mu, double omega, String... mods) { public Nakagami(double mu, double omega, String... mods) {
super(new NakagamiDistribution(mu, omega), mods); super(new NakagamiDistribution(mu, omega), mods);

View File

@ -16,10 +16,13 @@
package io.nosqlbench.virtdata.library.curves4.continuous.long_double; package io.nosqlbench.virtdata.library.curves4.continuous.long_double;
import io.nosqlbench.virtdata.api.annotations.Categories;
import io.nosqlbench.virtdata.api.annotations.Category;
import io.nosqlbench.virtdata.api.annotations.ThreadSafeMapper; import io.nosqlbench.virtdata.api.annotations.ThreadSafeMapper;
import org.apache.commons.statistics.distribution.NormalDistribution; import org.apache.commons.statistics.distribution.NormalDistribution;
@ThreadSafeMapper @ThreadSafeMapper
@Categories({Category.distributions})
public class Normal extends LongToDoubleContinuousCurve { public class Normal extends LongToDoubleContinuousCurve {
public Normal(double mean, double sd, String... mods) { public Normal(double mean, double sd, String... mods) {
super(new NormalDistribution(mean, sd), mods); super(new NormalDistribution(mean, sd), mods);

View File

@ -16,10 +16,13 @@
package io.nosqlbench.virtdata.library.curves4.continuous.long_double; package io.nosqlbench.virtdata.library.curves4.continuous.long_double;
import io.nosqlbench.virtdata.api.annotations.Categories;
import io.nosqlbench.virtdata.api.annotations.Category;
import io.nosqlbench.virtdata.api.annotations.ThreadSafeMapper; import io.nosqlbench.virtdata.api.annotations.ThreadSafeMapper;
import org.apache.commons.statistics.distribution.ParetoDistribution; import org.apache.commons.statistics.distribution.ParetoDistribution;
@ThreadSafeMapper @ThreadSafeMapper
@Categories({Category.distributions})
public class Pareto extends LongToDoubleContinuousCurve { public class Pareto extends LongToDoubleContinuousCurve {
public Pareto(double scale, double shape, String... mods) { public Pareto(double scale, double shape, String... mods) {
super(new ParetoDistribution(scale, shape), mods); super(new ParetoDistribution(scale, shape), mods);

View File

@ -16,10 +16,13 @@
package io.nosqlbench.virtdata.library.curves4.continuous.long_double; package io.nosqlbench.virtdata.library.curves4.continuous.long_double;
import io.nosqlbench.virtdata.api.annotations.Categories;
import io.nosqlbench.virtdata.api.annotations.Category;
import io.nosqlbench.virtdata.api.annotations.ThreadSafeMapper; import io.nosqlbench.virtdata.api.annotations.ThreadSafeMapper;
import org.apache.commons.statistics.distribution.TDistribution; import org.apache.commons.statistics.distribution.TDistribution;
@ThreadSafeMapper @ThreadSafeMapper
@Categories({Category.distributions})
public class T extends LongToDoubleContinuousCurve { public class T extends LongToDoubleContinuousCurve {
public T(double degreesOfFreedom, String... mods) { public T(double degreesOfFreedom, String... mods) {
super(new TDistribution(degreesOfFreedom), mods); super(new TDistribution(degreesOfFreedom), mods);

View File

@ -16,10 +16,13 @@
package io.nosqlbench.virtdata.library.curves4.continuous.long_double; package io.nosqlbench.virtdata.library.curves4.continuous.long_double;
import io.nosqlbench.virtdata.api.annotations.Categories;
import io.nosqlbench.virtdata.api.annotations.Category;
import io.nosqlbench.virtdata.api.annotations.ThreadSafeMapper; import io.nosqlbench.virtdata.api.annotations.ThreadSafeMapper;
import org.apache.commons.statistics.distribution.TriangularDistribution; import org.apache.commons.statistics.distribution.TriangularDistribution;
@ThreadSafeMapper @ThreadSafeMapper
@Categories({Category.distributions})
public class Triangular extends LongToDoubleContinuousCurve { public class Triangular extends LongToDoubleContinuousCurve {
public Triangular(double a, double c, double b, String... mods) { public Triangular(double a, double c, double b, String... mods) {
super(new TriangularDistribution(a,c,b), mods); super(new TriangularDistribution(a,c,b), mods);

View File

@ -16,10 +16,13 @@
package io.nosqlbench.virtdata.library.curves4.continuous.long_double; package io.nosqlbench.virtdata.library.curves4.continuous.long_double;
import io.nosqlbench.virtdata.api.annotations.Categories;
import io.nosqlbench.virtdata.api.annotations.Category;
import io.nosqlbench.virtdata.api.annotations.ThreadSafeMapper; import io.nosqlbench.virtdata.api.annotations.ThreadSafeMapper;
import org.apache.commons.statistics.distribution.UniformContinuousDistribution; import org.apache.commons.statistics.distribution.UniformContinuousDistribution;
@ThreadSafeMapper @ThreadSafeMapper
@Categories({Category.distributions})
public class Uniform extends LongToDoubleContinuousCurve { public class Uniform extends LongToDoubleContinuousCurve {
public Uniform(double lower, double upper, String... mods) { public Uniform(double lower, double upper, String... mods) {
super(new UniformContinuousDistribution(lower, upper), mods); super(new UniformContinuousDistribution(lower, upper), mods);

View File

@ -16,10 +16,13 @@
package io.nosqlbench.virtdata.library.curves4.continuous.long_double; package io.nosqlbench.virtdata.library.curves4.continuous.long_double;
import io.nosqlbench.virtdata.api.annotations.Categories;
import io.nosqlbench.virtdata.api.annotations.Category;
import io.nosqlbench.virtdata.api.annotations.ThreadSafeMapper; import io.nosqlbench.virtdata.api.annotations.ThreadSafeMapper;
import org.apache.commons.statistics.distribution.WeibullDistribution; import org.apache.commons.statistics.distribution.WeibullDistribution;
@ThreadSafeMapper @ThreadSafeMapper
@Categories({Category.distributions})
public class Weibull extends LongToDoubleContinuousCurve { public class Weibull extends LongToDoubleContinuousCurve {
public Weibull(double alpha, double beta, String... mods) { public Weibull(double alpha, double beta, String... mods) {
super(new WeibullDistribution(alpha, beta), mods); super(new WeibullDistribution(alpha, beta), mods);

View File

@ -16,10 +16,13 @@
package io.nosqlbench.virtdata.library.curves4.discrete.int_long; package io.nosqlbench.virtdata.library.curves4.discrete.int_long;
import io.nosqlbench.virtdata.api.annotations.Categories;
import io.nosqlbench.virtdata.api.annotations.Category;
import io.nosqlbench.virtdata.api.annotations.ThreadSafeMapper; import io.nosqlbench.virtdata.api.annotations.ThreadSafeMapper;
import org.apache.commons.statistics.distribution.GeometricDistribution; import org.apache.commons.statistics.distribution.GeometricDistribution;
@ThreadSafeMapper @ThreadSafeMapper
@Categories({Category.distributions})
public class Geometric extends IntToLongDiscreteCurve { public class Geometric extends IntToLongDiscreteCurve {
public Geometric(double p, String... modslist) { public Geometric(double p, String... modslist) {
super(new GeometricDistribution(p), modslist); super(new GeometricDistribution(p), modslist);

View File

@ -16,10 +16,13 @@
package io.nosqlbench.virtdata.library.curves4.discrete.int_long; package io.nosqlbench.virtdata.library.curves4.discrete.int_long;
import io.nosqlbench.virtdata.api.annotations.Categories;
import io.nosqlbench.virtdata.api.annotations.Category;
import io.nosqlbench.virtdata.api.annotations.ThreadSafeMapper; import io.nosqlbench.virtdata.api.annotations.ThreadSafeMapper;
import org.apache.commons.statistics.distribution.HypergeometricDistribution; import org.apache.commons.statistics.distribution.HypergeometricDistribution;
@ThreadSafeMapper @ThreadSafeMapper
@Categories({Category.distributions})
public class Hypergeometric extends IntToLongDiscreteCurve { public class Hypergeometric extends IntToLongDiscreteCurve {
public Hypergeometric(int populationSize, int numberOfSuccesses, int sampleSize, String... modslist) { public Hypergeometric(int populationSize, int numberOfSuccesses, int sampleSize, String... modslist) {
super(new HypergeometricDistribution(populationSize, numberOfSuccesses, sampleSize), modslist); super(new HypergeometricDistribution(populationSize, numberOfSuccesses, sampleSize), modslist);

View File

@ -16,10 +16,13 @@
package io.nosqlbench.virtdata.library.curves4.discrete.int_long; package io.nosqlbench.virtdata.library.curves4.discrete.int_long;
import io.nosqlbench.virtdata.api.annotations.Categories;
import io.nosqlbench.virtdata.api.annotations.Category;
import io.nosqlbench.virtdata.api.annotations.ThreadSafeMapper; import io.nosqlbench.virtdata.api.annotations.ThreadSafeMapper;
import org.apache.commons.statistics.distribution.PascalDistribution; import org.apache.commons.statistics.distribution.PascalDistribution;
@ThreadSafeMapper @ThreadSafeMapper
@Categories({Category.distributions})
public class Pascal extends IntToLongDiscreteCurve { public class Pascal extends IntToLongDiscreteCurve {
public Pascal(int r, double p, String... modslist) { public Pascal(int r, double p, String... modslist) {
super(new PascalDistribution(r, p), modslist); super(new PascalDistribution(r, p), modslist);

View File

@ -16,10 +16,13 @@
package io.nosqlbench.virtdata.library.curves4.discrete.int_long; package io.nosqlbench.virtdata.library.curves4.discrete.int_long;
import io.nosqlbench.virtdata.api.annotations.Categories;
import io.nosqlbench.virtdata.api.annotations.Category;
import io.nosqlbench.virtdata.api.annotations.ThreadSafeMapper; import io.nosqlbench.virtdata.api.annotations.ThreadSafeMapper;
import org.apache.commons.statistics.distribution.PoissonDistribution; import org.apache.commons.statistics.distribution.PoissonDistribution;
@ThreadSafeMapper @ThreadSafeMapper
@Categories({Category.distributions})
public class Poisson extends IntToLongDiscreteCurve { public class Poisson extends IntToLongDiscreteCurve {
public Poisson(double p, String... modslist) { public Poisson(double p, String... modslist) {
super(new PoissonDistribution(p), modslist); super(new PoissonDistribution(p), modslist);

View File

@ -16,10 +16,13 @@
package io.nosqlbench.virtdata.library.curves4.discrete.int_long; package io.nosqlbench.virtdata.library.curves4.discrete.int_long;
import io.nosqlbench.virtdata.api.annotations.Categories;
import io.nosqlbench.virtdata.api.annotations.Category;
import io.nosqlbench.virtdata.api.annotations.ThreadSafeMapper; import io.nosqlbench.virtdata.api.annotations.ThreadSafeMapper;
import org.apache.commons.statistics.distribution.UniformDiscreteDistribution; import org.apache.commons.statistics.distribution.UniformDiscreteDistribution;
@ThreadSafeMapper @ThreadSafeMapper
@Categories({Category.distributions})
public class Uniform extends IntToLongDiscreteCurve { public class Uniform extends IntToLongDiscreteCurve {
public Uniform(int lower, int upper, String... modslist) { public Uniform(int lower, int upper, String... modslist) {
super(new UniformDiscreteDistribution(lower, upper), modslist); super(new UniformDiscreteDistribution(lower, upper), modslist);

View File

@ -16,10 +16,13 @@
package io.nosqlbench.virtdata.library.curves4.discrete.int_long; package io.nosqlbench.virtdata.library.curves4.discrete.int_long;
import io.nosqlbench.virtdata.api.annotations.Categories;
import io.nosqlbench.virtdata.api.annotations.Category;
import io.nosqlbench.virtdata.api.annotations.ThreadSafeMapper; import io.nosqlbench.virtdata.api.annotations.ThreadSafeMapper;
import org.apache.commons.statistics.distribution.ZipfDistribution; import org.apache.commons.statistics.distribution.ZipfDistribution;
@ThreadSafeMapper @ThreadSafeMapper
@Categories({Category.distributions})
public class Zipf extends IntToLongDiscreteCurve { public class Zipf extends IntToLongDiscreteCurve {
public Zipf(int numberOfElements, double exponent, String... modslist) { public Zipf(int numberOfElements, double exponent, String... modslist) {
super(new ZipfDistribution(numberOfElements, exponent), modslist); super(new ZipfDistribution(numberOfElements, exponent), modslist);

View File

@ -16,10 +16,13 @@
package io.nosqlbench.virtdata.library.curves4.discrete.long_int; package io.nosqlbench.virtdata.library.curves4.discrete.long_int;
import io.nosqlbench.virtdata.api.annotations.Categories;
import io.nosqlbench.virtdata.api.annotations.Category;
import io.nosqlbench.virtdata.api.annotations.ThreadSafeMapper; import io.nosqlbench.virtdata.api.annotations.ThreadSafeMapper;
import org.apache.commons.statistics.distribution.GeometricDistribution; import org.apache.commons.statistics.distribution.GeometricDistribution;
@ThreadSafeMapper @ThreadSafeMapper
@Categories({Category.distributions})
public class Geometric extends LongToIntDiscreteCurve { public class Geometric extends LongToIntDiscreteCurve {
public Geometric(double p, String... modslist) { public Geometric(double p, String... modslist) {
super(new GeometricDistribution(p), modslist); super(new GeometricDistribution(p), modslist);

View File

@ -16,10 +16,13 @@
package io.nosqlbench.virtdata.library.curves4.discrete.long_int; package io.nosqlbench.virtdata.library.curves4.discrete.long_int;
import io.nosqlbench.virtdata.api.annotations.Categories;
import io.nosqlbench.virtdata.api.annotations.Category;
import io.nosqlbench.virtdata.api.annotations.ThreadSafeMapper; import io.nosqlbench.virtdata.api.annotations.ThreadSafeMapper;
import org.apache.commons.statistics.distribution.HypergeometricDistribution; import org.apache.commons.statistics.distribution.HypergeometricDistribution;
@ThreadSafeMapper @ThreadSafeMapper
@Categories({Category.distributions})
public class Hypergeometric extends LongToIntDiscreteCurve { public class Hypergeometric extends LongToIntDiscreteCurve {
public Hypergeometric(int populationSize, int numberOfSuccesses, int sampleSize, String... modslist) { public Hypergeometric(int populationSize, int numberOfSuccesses, int sampleSize, String... modslist) {
super(new HypergeometricDistribution(populationSize, numberOfSuccesses, sampleSize), modslist); super(new HypergeometricDistribution(populationSize, numberOfSuccesses, sampleSize), modslist);

View File

@ -16,10 +16,13 @@
package io.nosqlbench.virtdata.library.curves4.discrete.long_int; package io.nosqlbench.virtdata.library.curves4.discrete.long_int;
import io.nosqlbench.virtdata.api.annotations.Categories;
import io.nosqlbench.virtdata.api.annotations.Category;
import io.nosqlbench.virtdata.api.annotations.ThreadSafeMapper; import io.nosqlbench.virtdata.api.annotations.ThreadSafeMapper;
import org.apache.commons.statistics.distribution.PascalDistribution; import org.apache.commons.statistics.distribution.PascalDistribution;
@ThreadSafeMapper @ThreadSafeMapper
@Categories({Category.distributions})
public class Pascal extends LongToIntDiscreteCurve { public class Pascal extends LongToIntDiscreteCurve {
public Pascal(int r, double p, String... modslist) { public Pascal(int r, double p, String... modslist) {
super(new PascalDistribution(r, p), modslist); super(new PascalDistribution(r, p), modslist);

View File

@ -16,10 +16,13 @@
package io.nosqlbench.virtdata.library.curves4.discrete.long_int; package io.nosqlbench.virtdata.library.curves4.discrete.long_int;
import io.nosqlbench.virtdata.api.annotations.Categories;
import io.nosqlbench.virtdata.api.annotations.Category;
import io.nosqlbench.virtdata.api.annotations.ThreadSafeMapper; import io.nosqlbench.virtdata.api.annotations.ThreadSafeMapper;
import org.apache.commons.statistics.distribution.PoissonDistribution; import org.apache.commons.statistics.distribution.PoissonDistribution;
@ThreadSafeMapper @ThreadSafeMapper
@Categories({Category.distributions})
public class Poisson extends LongToIntDiscreteCurve { public class Poisson extends LongToIntDiscreteCurve {
public Poisson(double p, String... modslist) { public Poisson(double p, String... modslist) {
super(new PoissonDistribution(p), modslist); super(new PoissonDistribution(p), modslist);

View File

@ -16,10 +16,13 @@
package io.nosqlbench.virtdata.library.curves4.discrete.long_int; package io.nosqlbench.virtdata.library.curves4.discrete.long_int;
import io.nosqlbench.virtdata.api.annotations.Categories;
import io.nosqlbench.virtdata.api.annotations.Category;
import io.nosqlbench.virtdata.api.annotations.ThreadSafeMapper; import io.nosqlbench.virtdata.api.annotations.ThreadSafeMapper;
import org.apache.commons.statistics.distribution.UniformDiscreteDistribution; import org.apache.commons.statistics.distribution.UniformDiscreteDistribution;
@ThreadSafeMapper @ThreadSafeMapper
@Categories({Category.distributions})
public class Uniform extends LongToIntDiscreteCurve { public class Uniform extends LongToIntDiscreteCurve {
public Uniform(int lower, int upper, String... modslist) { public Uniform(int lower, int upper, String... modslist) {
super(new UniformDiscreteDistribution(lower, upper), modslist); super(new UniformDiscreteDistribution(lower, upper), modslist);

View File

@ -16,10 +16,13 @@
package io.nosqlbench.virtdata.library.curves4.discrete.long_int; package io.nosqlbench.virtdata.library.curves4.discrete.long_int;
import io.nosqlbench.virtdata.api.annotations.Categories;
import io.nosqlbench.virtdata.api.annotations.Category;
import io.nosqlbench.virtdata.api.annotations.ThreadSafeMapper; import io.nosqlbench.virtdata.api.annotations.ThreadSafeMapper;
import org.apache.commons.statistics.distribution.ZipfDistribution; import org.apache.commons.statistics.distribution.ZipfDistribution;
@ThreadSafeMapper @ThreadSafeMapper
@Categories({Category.distributions})
public class Zipf extends LongToIntDiscreteCurve { public class Zipf extends LongToIntDiscreteCurve {
public Zipf(int numberOfElements, double exponent, String... modslist) { public Zipf(int numberOfElements, double exponent, String... modslist) {
super(new ZipfDistribution(numberOfElements, exponent), modslist); super(new ZipfDistribution(numberOfElements, exponent), modslist);

View File

@ -16,10 +16,13 @@
package io.nosqlbench.virtdata.library.curves4.discrete.long_long; package io.nosqlbench.virtdata.library.curves4.discrete.long_long;
import io.nosqlbench.virtdata.api.annotations.Categories;
import io.nosqlbench.virtdata.api.annotations.Category;
import io.nosqlbench.virtdata.api.annotations.ThreadSafeMapper; import io.nosqlbench.virtdata.api.annotations.ThreadSafeMapper;
import org.apache.commons.statistics.distribution.GeometricDistribution; import org.apache.commons.statistics.distribution.GeometricDistribution;
@ThreadSafeMapper @ThreadSafeMapper
@Categories({Category.distributions})
public class Geometric extends LongToLongDiscreteCurve { public class Geometric extends LongToLongDiscreteCurve {
public Geometric(double p, String... modslist) { public Geometric(double p, String... modslist) {
super(new GeometricDistribution(p), modslist); super(new GeometricDistribution(p), modslist);

View File

@ -16,10 +16,13 @@
package io.nosqlbench.virtdata.library.curves4.discrete.long_long; package io.nosqlbench.virtdata.library.curves4.discrete.long_long;
import io.nosqlbench.virtdata.api.annotations.Categories;
import io.nosqlbench.virtdata.api.annotations.Category;
import io.nosqlbench.virtdata.api.annotations.ThreadSafeMapper; import io.nosqlbench.virtdata.api.annotations.ThreadSafeMapper;
import org.apache.commons.statistics.distribution.HypergeometricDistribution; import org.apache.commons.statistics.distribution.HypergeometricDistribution;
@ThreadSafeMapper @ThreadSafeMapper
@Categories({Category.distributions})
public class Hypergeometric extends LongToLongDiscreteCurve { public class Hypergeometric extends LongToLongDiscreteCurve {
public Hypergeometric(int populationSize, int numberOfSuccesses, int sampleSize, String... modslist) { public Hypergeometric(int populationSize, int numberOfSuccesses, int sampleSize, String... modslist) {
super(new HypergeometricDistribution(populationSize, numberOfSuccesses, sampleSize), modslist); super(new HypergeometricDistribution(populationSize, numberOfSuccesses, sampleSize), modslist);

View File

@ -16,10 +16,13 @@
package io.nosqlbench.virtdata.library.curves4.discrete.long_long; package io.nosqlbench.virtdata.library.curves4.discrete.long_long;
import io.nosqlbench.virtdata.api.annotations.Categories;
import io.nosqlbench.virtdata.api.annotations.Category;
import io.nosqlbench.virtdata.api.annotations.ThreadSafeMapper; import io.nosqlbench.virtdata.api.annotations.ThreadSafeMapper;
import org.apache.commons.statistics.distribution.PascalDistribution; import org.apache.commons.statistics.distribution.PascalDistribution;
@ThreadSafeMapper @ThreadSafeMapper
@Categories({Category.distributions})
public class Pascal extends LongToLongDiscreteCurve { public class Pascal extends LongToLongDiscreteCurve {
public Pascal(int r, double p, String... modslist) { public Pascal(int r, double p, String... modslist) {
super(new PascalDistribution(r, p), modslist); super(new PascalDistribution(r, p), modslist);

View File

@ -16,10 +16,13 @@
package io.nosqlbench.virtdata.library.curves4.discrete.long_long; package io.nosqlbench.virtdata.library.curves4.discrete.long_long;
import io.nosqlbench.virtdata.api.annotations.Categories;
import io.nosqlbench.virtdata.api.annotations.Category;
import io.nosqlbench.virtdata.api.annotations.ThreadSafeMapper; import io.nosqlbench.virtdata.api.annotations.ThreadSafeMapper;
import org.apache.commons.statistics.distribution.PoissonDistribution; import org.apache.commons.statistics.distribution.PoissonDistribution;
@ThreadSafeMapper @ThreadSafeMapper
@Categories({Category.distributions})
public class Poisson extends LongToLongDiscreteCurve { public class Poisson extends LongToLongDiscreteCurve {
public Poisson(double p, String... modslist) { public Poisson(double p, String... modslist) {
super(new PoissonDistribution(p), modslist); super(new PoissonDistribution(p), modslist);

View File

@ -16,10 +16,13 @@
package io.nosqlbench.virtdata.library.curves4.discrete.long_long; package io.nosqlbench.virtdata.library.curves4.discrete.long_long;
import io.nosqlbench.virtdata.api.annotations.Categories;
import io.nosqlbench.virtdata.api.annotations.Category;
import io.nosqlbench.virtdata.api.annotations.ThreadSafeMapper; import io.nosqlbench.virtdata.api.annotations.ThreadSafeMapper;
import org.apache.commons.statistics.distribution.UniformDiscreteDistribution; import org.apache.commons.statistics.distribution.UniformDiscreteDistribution;
@ThreadSafeMapper @ThreadSafeMapper
@Categories({Category.distributions})
public class Uniform extends LongToLongDiscreteCurve { public class Uniform extends LongToLongDiscreteCurve {
public Uniform(int lower, int upper, String... modslist) { public Uniform(int lower, int upper, String... modslist) {
super(new UniformDiscreteDistribution(lower, upper), modslist); super(new UniformDiscreteDistribution(lower, upper), modslist);

View File

@ -16,10 +16,13 @@
package io.nosqlbench.virtdata.library.curves4.discrete.long_long; package io.nosqlbench.virtdata.library.curves4.discrete.long_long;
import io.nosqlbench.virtdata.api.annotations.Categories;
import io.nosqlbench.virtdata.api.annotations.Category;
import io.nosqlbench.virtdata.api.annotations.ThreadSafeMapper; import io.nosqlbench.virtdata.api.annotations.ThreadSafeMapper;
import org.apache.commons.statistics.distribution.ZipfDistribution; import org.apache.commons.statistics.distribution.ZipfDistribution;
@ThreadSafeMapper @ThreadSafeMapper
@Categories({Category.distributions})
public class Zipf extends LongToLongDiscreteCurve { public class Zipf extends LongToLongDiscreteCurve {
public Zipf(int numberOfElements, double exponent, String... modslist) { public Zipf(int numberOfElements, double exponent, String... modslist) {
super(new ZipfDistribution(numberOfElements, exponent), modslist); super(new ZipfDistribution(numberOfElements, exponent), modslist);