Class Generators

java.lang.Object
org.instancio.generators.Generators

public class Generators extends Object
This class provides access to built-in generators.

It can be used to customise random values generated by built-in generators. This includes numeric, collection sizes, string lengths, etc.

Since:
1.0.1
  • Constructor Details

  • Method Details

    • getApiMethod

      public static String getApiMethod(Class<?> generatorSpec)
      Returns the public API method for the given generator spec class.
      Parameters:
      generatorSpec - whose API method to return
      Returns:
      the public API method, for example array() for the array generator
    • string

      public StringGeneratorSpec string()
      Customises generated String values.
      Returns:
      customised generator
    • booleans

      public BooleanGeneratorSpec booleans()
      Customises generated boolean values.
      Returns:
      customised generator
      Since:
      2.0.0
    • chars

      public CharacterGeneratorSpec chars()
      Customises generated char values.
      Returns:
      customised generator
      Since:
      2.0.0
    • bytes

      public NumberGeneratorSpec<Byte> bytes()
      Customises generated Byte values.
      Returns:
      customised generator
    • shorts

      public NumberGeneratorSpec<Short> shorts()
      Customises generated Short values.
      Returns:
      customised generator
    • ints

      public NumberGeneratorSpec<Integer> ints()
      Customises generated Integer values.
      Returns:
      customised generator
    • longs

      public NumberGeneratorSpec<Long> longs()
      Customises generated Long values.
      Returns:
      customised generator
    • floats

      public NumberGeneratorSpec<Float> floats()
      Customises generated Float values.
      Returns:
      customised generator
    • doubles

      public NumberGeneratorSpec<Double> doubles()
      Customises generated Double values.
      Returns:
      customised generator
    • enumOf

      public <E extends Enum<E>> EnumGeneratorSpec<E> enumOf(Class<E> enumClass)
      Customises generated enum values.
      Type Parameters:
      E - enum type
      Parameters:
      enumClass - type of enum to generate
      Returns:
      customised generator
    • math

      public MathGenerators math()
      Return generators for java.math classes.
      Returns:
      built-in generators for java.math classes.
    • oneOf

      @SafeVarargs public final <T> OneOfArrayGeneratorSpec<T> oneOf(T... choices)
      Picks a random value from the given choices.
      Type Parameters:
      T - element type
      Parameters:
      choices - to choose from
      Returns:
      generator for making a selection
    • oneOf

      public final <T> OneOfCollectionGeneratorSpec<T> oneOf(Collection<T> choices)
      Picks a random value from the given choices.
      Type Parameters:
      T - element type
      Parameters:
      choices - to choose from
      Returns:
      generator for making a selection
    • array

      public <T> ArrayGeneratorSpec<T> array()
      Customises generated arrays.
      Type Parameters:
      T - array component type
      Returns:
      customised generator
    • collection

      public <T> CollectionGeneratorSpec<T> collection()
      Customises generated collections.
      Type Parameters:
      T - element type
      Returns:
      customised generator
    • enumSet

      public <E extends Enum<E>> EnumSetGeneratorSpec<E> enumSet(Class<E> enumClass)
      Customises generated EnumSet.
      Type Parameters:
      E - enum type
      Parameters:
      enumClass - contained by the generated enum set
      Returns:
      customised generator
      Since:
      2.0.0
    • map

      public <K, V> MapGeneratorSpec<K,V> map()
      Customises generated maps.
      Type Parameters:
      K - key type
      V - value type
      Returns:
      customised generator
    • atomic

      public AtomicGenerators atomic()
      Provides access to atomic generators.
      Returns:
      built-in atomic generators
    • temporal

      public TemporalGenerators temporal()
      Provides access to temporal generators.
      Returns:
      built-in temporal generators
    • text

      public TextGenerators text()
      Provides access to text generators.
      Returns:
      built-in text generators