org.databene.benerator
Interface Generator<E>

All Superinterfaces:
java.io.Closeable, org.databene.commons.Resettable, org.databene.commons.ThreadAware
All Known Subinterfaces:
DatasetBasedGenerator<E>, NonNullGenerator<E>, VarLengthStringGenerator, WeightedDatasetGenerator<E>, WeightedGenerator<E>
All Known Implementing Classes:
AbstractBigDecimalGenerator, AbstractBigIntegerGenerator, AbstractDatasetGenerator, AbstractGenerator, AbstractNonNullGenerator, AbstractNonNullNumberGenerator, AbstractSampleGenerator, AbstractSequenceGenerator, AcademicTitleGenerator, AccessingGenerator, AddressGenerator, AlternativeGenerator, AsBigDecimalGeneratorWrapper, AsBigIntegerGeneratorWrapper, AsByteGeneratorWrapper, AsDoubleGeneratorWrapper, AsFloatGeneratorWrapper, AsIntegerGeneratorWrapper, AsLongGeneratorWrapper, AsNonNullGenerator, AsShortGeneratorWrapper, AsStringGenerator, AtomicDatasetGenerator, AttachedWeightSampleGenerator, BankAccountGenerator, BankGenerator, BinaryFileContentGenerator, BirthDateGenerator, BitReverseLongGenerator, BitReverseNaturalNumberGenerator, BlankArrayGenerator, BlankEntityGenerator, BooleanGenerator, ByteArrayGenerator, CachedSequenceGenerator, CardinalGenerator, CharacterGenerator, CityGenerator, CNPJGenerator, CollectionGenerator, CompanyDomainGenerator, CompanyNameGenerator, CompositeDatasetGenerator, CompositeGenerator, CompositeStringGenerator, ConcatenatingGenerator, ConstantGenerator, ConvertingGenerator, CountryGenerator, CPFGenerator, CreditCardNumberGenerator, CumulatedDoubleGenerator, CumulatedLongGenerator, CumulativeDistributionFunction.IPINumberGenerator, CurrentDateGenerator, CurrentDateTimeGenerator, CurrentMilliTimeGenerator, CurrentNanoTimeGenerator, CurrentTimeGenerator, CyclicGeneratorProxy, DataSourceGenerator, DateGenerator, DateTimeGenerator, DayGenerator, DBSeqHiLoGenerator, DBSequenceGenerator, DepartmentNameGenerator, DescriptorBasedGenerator, DistributingGenerator, DomainGenerator, DynamicCountGenerator, DynamicLongGenerator, EAN13Generator, EAN8Generator, EANGenerator, EMailAddressGenerator, EquivalenceStringGenerator, ExpandGeneratorProxy, ExpressionBasedGenerator, FamilyNameGenerator, FibonacciLongGenerator, FileContentGenerator, FileGenerator, FileNameGenerator, FilteringGenerator, GenderGenerator, GeneratorChain, GeneratorProxy, GeneratorWrapper, GivenNameGenerator, HibUUIDGenerator, HiLoGenerator, IncrementalIdGenerator, IncrementalIntsGenerator, IncrementalStringGenerator, IncrementGenerator, IndexBasedSampleGeneratorProxy, IndividualWeightSampleGenerator, IteratingGenerator, LastFlagGenerator, LastProductDetector, LegalFormGenerator, LengthGenerator, LocalCSVGenerator, LocalSequenceGenerator, LongGenerator, LuhnGenerator, MessageGenerator, MobileNumberGenerator, MultiGeneratorWrapper, MultiSourceArrayGenerator, NobilityTitleGenerator, NonClosingGeneratorProxy, NonNullGeneratorProxy, NonNullGeneratorWrapper, NonNullSampleGenerator, NounGenerator, NShotGeneratorProxy, NullInjectingGeneratorProxy, NullStartingGenerator, OffsetBasedGenerator, OneShotGenerator, PadovanLongGenerator, PersonGenerator, PhoneNumberGenerator, PlainSequenceGenerator, PredefinedSequenceGenerator, QueryGenerator, QueryHiLoGenerator, QueryLongGenerator, RandomBigDecimalGenerator, RandomBigIntegerGenerator, RandomDomainGenerator, RandomDoubleGenerator, RandomIntegerGenerator, RandomLongGenerator, RandomVarLengthStringGenerator, RandomWalkDoubleGenerator, RandomWalkLongGenerator, RecurrenceRelationNumberGenerator, RegexStringGenerator, RepeatGeneratorProxy, SampleGenerator, ScriptGenerator, SectorGenerator, SeedGenerator, SeedSentenceGenerator, SeedWordGenerator, SequencedCSVSampleGenerator, SequencedDatasetCSVGenerator, SequenceGenerator, SequenceTableGenerator, SharedGenerator, ShuffleDoubleGenerator, ShuffleLongGenerator, SimpleMultiSourceArrayGenerator, SimpleTypeEntityGenerator, SimplifyingSingleSourceArrayGenerator, SingleSourceArrayGenerator, SingleSourceCollectionGenerator, SkipGeneratorProxy, SourceAwareGenerator, SSNGenerator, StateGenerator, StateTransitionGenerator, StepDoubleGenerator, StepLongGenerator, StreetNameGenerator, StringGenerator, SynchronizedGeneratorProxy, TaskBasedGenerator, TextFileContentGenerator, ThreadSafeGenerator, ThreadSafeNonNullGenerator, TINGenerator, TokenCombiner, TokenCombiner.SimpleTokenCombinator, TopLevelDomainGenerator, UniqueFixedLengthStringGenerator, UniqueIntsGenerator, UniqueMultiSourceArrayGenerator, UniqueScrambledStringGenerator, UnsafeGenerator, UnsafeMethodParamsGenerator, UnsafeNonNullGenerator, UUIDGenerator, ValidatingGenerator, ValidatingGeneratorProxy, WebmailDomainGenerator, WedgeDoubleGenerator, WedgeLongGenerator, WeighingGeneratorWrapper, WeightedCSVSampleGenerator, WeightedDatasetCSVGenerator, WeightedDoubleGenerator, WeightedGeneratorGenerator, WeightedLongGenerator, WeigthedLiteralGenerator, XMLFileGenerator

public interface Generator<E>
extends org.databene.commons.ThreadAware, org.databene.commons.Resettable, java.io.Closeable

This is the basic Generator interface, the mother of all generators.

Generator States
A Generator may be in one of three states:

Developer Notes:
When implementing a custom generator, you should make it a JavaBean:
Created: 07.06.2006 18:51:28

Since:
0.1
Author:
Volker Bergmann

Method Summary
 void close()
          Closes the generator.
 ProductWrapper<E> generate(ProductWrapper<E> wrapper)
          Returns an instance of the generic type E, using the ProductWrapper instance provided as argument.
 java.lang.Class<E> getGeneratedType()
          Declares the type of the objects returned by the generate() method.
 void init(GeneratorContext context)
           
 boolean wasInitialized()
           
 
Methods inherited from interface org.databene.commons.ThreadAware
isParallelizable, isThreadSafe
 
Methods inherited from interface org.databene.commons.Resettable
reset
 

Method Detail

getGeneratedType

java.lang.Class<E> getGeneratedType()
Declares the type of the objects returned by the generate() method.


init

void init(GeneratorContext context)

wasInitialized

boolean wasInitialized()

generate

ProductWrapper<E> generate(ProductWrapper<E> wrapper)
Returns an instance of the generic type E, using the ProductWrapper instance provided as argument. The wrapper may wrap a null value as a regular generator product. If the generator is not available (any more), it returns null instead of the ProductWrapper instance.


close

void close()
Closes the generator. After invocation the state is unavailable.

Specified by:
close in interface java.io.Closeable


Copyright © 2013. All Rights Reserved.