Class Fill.FillBuilder

java.lang.Object
ru.objectsfill.object_param.Fill.FillBuilder
Enclosing class:
Fill

public static final class Fill.FillBuilder extends Object
Fluent builder for constructing Fill configurations.
  • Constructor Details

    • FillBuilder

      public FillBuilder(T objectz)
      Creates a builder from an existing object instance.
      Type Parameters:
      T - the object type
      Parameters:
      objectz - the object to fill
    • FillBuilder

      public FillBuilder(Class<?> clazz)
      Creates a builder from a class, attempting to instantiate it via the no-arg constructor. If instantiation fails (no public no-arg constructor, abstract class, etc.), the object will be created later via a parameterized constructor.
      Parameters:
      clazz - the class to instantiate and fill
  • Method Details

    • collectionSize

      public Fill.FillBuilder collectionSize(Integer collectionSize)
      Sets the number of elements to generate for collections and arrays.
      Parameters:
      collectionSize - the collection size (must be >= 1)
      Returns:
      this builder
      Throws:
      FillException - if the value is less than 1
    • valueLength

      public Fill.FillBuilder valueLength(Integer valueLength)
      Sets the length of randomly generated string values.
      Parameters:
      valueLength - the value length (must be >= 1)
      Returns:
      this builder
      Throws:
      FillException - if the value is less than 1
    • fieldParams

      public Fill.FillBuilder fieldParams(Extend parameter)
      Adds a single per-field parameter override.
      Parameters:
      parameter - the field parameter override
      Returns:
      this builder
    • fieldParams

      public Fill.FillBuilder fieldParams(Extend... parameter)
      Adds multiple per-field parameter overrides.
      Parameters:
      parameter - the field parameter overrides
      Returns:
      this builder
    • fieldParams

      public Fill.FillBuilder fieldParams(List<Extend> parameter)
      Adds a list of per-field parameter overrides.
      Parameters:
      parameter - the field parameter overrides
      Returns:
      this builder
    • withGeneric

      public Fill.FillBuilder withGeneric(String genericName, Type genericType)
      Registers a generic type parameter mapping by name.
      Parameters:
      genericName - the type parameter name (e.g. "T")
      genericType - the resolved type
      Returns:
      this builder
    • withGeneric

      public Fill.FillBuilder withGeneric(Map<String,Type> genericType)
      Registers multiple generic type parameter mappings.
      Parameters:
      genericType - map of type parameter names to resolved types
      Returns:
      this builder
    • withGeneric

      public Fill.FillBuilder withGeneric(String genericName, Class<?> genericClass)
      Registers a generic type parameter mapping by name using a Class.
      Parameters:
      genericName - the type parameter name (e.g. "T")
      genericClass - the resolved class (ignored if null)
      Returns:
      this builder
    • excludeField

      public Fill.FillBuilder excludeField(List<String> excludedFieldName)
      Sets the list of field names to exclude from generation.
      Parameters:
      excludedFieldName - the field names to exclude
      Returns:
      this builder
    • excludeField

      public Fill.FillBuilder excludeField(String... excludedFieldName)
      Sets the field names to exclude from generation.
      Parameters:
      excludedFieldName - the field names to exclude
      Returns:
      this builder
    • setDeep

      public Fill.FillBuilder setDeep(Integer deep)
      Sets the maximum recursion depth for nested object generation.
      Parameters:
      deep - the depth limit (must be >= 1)
      Returns:
      this builder
      Throws:
      FillException - if the value is less than 1
    • gen

      public Fill gen()
      Builds and returns the Fill configuration.
      Returns:
      the constructed Fill object