org.databene.benerator.sample
Class AttachedWeightSampleGenerator<E>

java.lang.Object
  extended by org.databene.benerator.util.AbstractGenerator<E>
      extended by org.databene.benerator.util.ThreadSafeGenerator<E>
          extended by org.databene.benerator.sample.AbstractSampleGenerator<E>
              extended by org.databene.benerator.sample.AttachedWeightSampleGenerator<E>
All Implemented Interfaces:
java.io.Closeable, Generator<E>, WeightedGenerator<E>, org.databene.commons.Resettable, org.databene.commons.ThreadAware, org.databene.commons.Weighted

public class AttachedWeightSampleGenerator<E>
extends AbstractSampleGenerator<E>
implements WeightedGenerator<E>

Generates values from a weighted or non-weighted set of samples.

Created: 07.06.2006 19:04:08

Since:
0.1
Author:
Volker Bergmann

Field Summary
 
Fields inherited from class org.databene.benerator.util.AbstractGenerator
context, logger, state
 
Constructor Summary
AttachedWeightSampleGenerator(java.lang.Class<E> generatedType)
          Initializes the generator to an empty sample list
AttachedWeightSampleGenerator(java.lang.Class<E> generatedType, E... values)
          Initializes the generator to an unweighted sample list
AttachedWeightSampleGenerator(java.lang.Class<E> generatedType, java.lang.Iterable<E> values)
          Initializes the generator to an unweighted sample list
 
Method Summary
<T extends E>
void
addSample(T value, double weight)
          Adds weighted values to the sample list
 void addSample(org.databene.script.WeightedSample<? extends E> sample)
          Adds a weighted value to the sample list
<T extends E>
void
addValue(T value)
          Adds an unweighted value to the sample list
 void clear()
          Removes all values from the sample list
 boolean containsSample(E searchedValue)
           
 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.
 java.util.List<org.databene.script.WeightedSample<? extends E>> getSamples()
          returns the sample list
 long getVariety()
           
 double getWeight()
           
 void init(GeneratorContext context)
          Initializes all attributes
 void setSamples(java.util.Collection<org.databene.script.WeightedSample<E>> samples)
          Adds weighted values to the sample list
 void setSamples(org.databene.script.WeightedSample<? extends E>... samples)
          Sets the sample list to the specified weighted values
 java.lang.String toString()
           
 
Methods inherited from class org.databene.benerator.sample.AbstractSampleGenerator
addValues, addValues, setValues, setValues
 
Methods inherited from class org.databene.benerator.util.ThreadSafeGenerator
isParallelizable, isThreadSafe
 
Methods inherited from class org.databene.benerator.util.AbstractGenerator
assertInitialized, assertNotInitialized, close, getResultWrapper, reset, wasInitialized
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 
Methods inherited from interface org.databene.benerator.Generator
close, wasInitialized
 
Methods inherited from interface org.databene.commons.ThreadAware
isParallelizable, isThreadSafe
 
Methods inherited from interface org.databene.commons.Resettable
reset
 

Constructor Detail

AttachedWeightSampleGenerator

public AttachedWeightSampleGenerator(java.lang.Class<E> generatedType)
Initializes the generator to an empty sample list


AttachedWeightSampleGenerator

public AttachedWeightSampleGenerator(java.lang.Class<E> generatedType,
                                     E... values)
Initializes the generator to an unweighted sample list


AttachedWeightSampleGenerator

public AttachedWeightSampleGenerator(java.lang.Class<E> generatedType,
                                     java.lang.Iterable<E> values)
Initializes the generator to an unweighted sample list

Method Detail

getSamples

public java.util.List<org.databene.script.WeightedSample<? extends E>> getSamples()
returns the sample list


setSamples

public void setSamples(org.databene.script.WeightedSample<? extends E>... samples)
Sets the sample list to the specified weighted values


setSamples

public void setSamples(java.util.Collection<org.databene.script.WeightedSample<E>> samples)
Adds weighted values to the sample list


addSample

public <T extends E> void addSample(T value,
                                    double weight)
Adds weighted values to the sample list


addSample

public void addSample(org.databene.script.WeightedSample<? extends E> sample)
Adds a weighted value to the sample list


addValue

public <T extends E> void addValue(T value)
Adds an unweighted value to the sample list

Specified by:
addValue in class AbstractSampleGenerator<E>

clear

public void clear()
Description copied from class: AbstractSampleGenerator
Removes all values from the sample list

Specified by:
clear in class AbstractSampleGenerator<E>

getGeneratedType

public java.lang.Class<E> getGeneratedType()
Description copied from interface: Generator
Declares the type of the objects returned by the generate() method.

Specified by:
getGeneratedType in interface Generator<E>
Overrides:
getGeneratedType in class AbstractSampleGenerator<E>

init

public void init(GeneratorContext context)
Initializes all attributes

Specified by:
init in interface Generator<E>
Overrides:
init in class AbstractGenerator<E>

generate

public ProductWrapper<E> generate(ProductWrapper<E> 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.

Specified by:
generate in interface Generator<E>

getWeight

public double getWeight()
Specified by:
getWeight in interface org.databene.commons.Weighted

getVariety

public long getVariety()
Specified by:
getVariety in class AbstractSampleGenerator<E>

containsSample

public boolean containsSample(E searchedValue)

toString

public java.lang.String toString()
Overrides:
toString in class AbstractGenerator<E>


Copyright © 2013. All Rights Reserved.