org.databene.benerator.wrapper
Class UniqueMultiSourceArrayGenerator<S>

java.lang.Object
  extended by org.databene.benerator.util.AbstractGenerator<P>
      extended by org.databene.benerator.wrapper.MultiGeneratorWrapper<S,S[]>
          extended by org.databene.benerator.wrapper.UniqueMultiSourceArrayGenerator<S>
All Implemented Interfaces:
java.io.Closeable, Generator<S[]>, org.databene.commons.Resettable, org.databene.commons.ThreadAware

public class UniqueMultiSourceArrayGenerator<S>
extends MultiGeneratorWrapper<S,S[]>

Creates arrays of unique combinations of the output of other generators. Each array element is filled from an own generator, each used generator is supposed to generate unique values itself.

Created: 17.11.2007 13:37:37

Author:
Volker Bergmann

Field Summary
 
Fields inherited from class org.databene.benerator.wrapper.MultiGeneratorWrapper
generatedType, sources
 
Fields inherited from class org.databene.benerator.util.AbstractGenerator
context, state
 
Constructor Summary
UniqueMultiSourceArrayGenerator(java.lang.Class<S> componentType, Generator<? extends S>... sources)
          Initializes the generator to an array of source generators
UniqueMultiSourceArrayGenerator(java.lang.Class<S> componentType, java.util.List<Generator<? extends S>> sources)
           
 
Method Summary
 ProductWrapper<S[]> generate(ProductWrapper<S[]> wrapper)
          Returns an instance of the generic type E, using the ProductWrapper instance provided as argument.
 void init(GeneratorContext context)
           
 void reset()
           
 
Methods inherited from class org.databene.benerator.wrapper.MultiGeneratorWrapper
addSource, availableSourceCount, close, generateFromAllSources, generateFromAvailableSource, generateFromRandomSource, generateFromSource, getAvailableSource, getGeneratedType, getSource, getSources, getSourceWrapper, isParallelizable, isThreadSafe, setSources, toString
 
Methods inherited from class org.databene.benerator.util.AbstractGenerator
assertInitialized, assertNotInitialized, getResultWrapper, wasInitialized
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 

Constructor Detail

UniqueMultiSourceArrayGenerator

public UniqueMultiSourceArrayGenerator(java.lang.Class<S> componentType,
                                       Generator<? extends S>... sources)
Initializes the generator to an array of source generators


UniqueMultiSourceArrayGenerator

public UniqueMultiSourceArrayGenerator(java.lang.Class<S> componentType,
                                       java.util.List<Generator<? extends S>> sources)
Method Detail

init

public void init(GeneratorContext context)
Specified by:
init in interface Generator<S[]>
Overrides:
init in class MultiGeneratorWrapper<S,S[]>

generate

public ProductWrapper<S[]> generate(ProductWrapper<S[]> wrapper)
Description copied from interface: Generator
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.


reset

public void reset()
Specified by:
reset in interface org.databene.commons.Resettable
Overrides:
reset in class MultiGeneratorWrapper<S,S[]>


Copyright © 2013. All Rights Reserved.