net.sourceforge.datagenerator.generator
Class NumberExpressionValueGenerator

java.lang.Object
  extended bynet.sourceforge.datagenerator.ColumnValueGeneratorBase
      extended bynet.sourceforge.datagenerator.generator.NumberExpressionValueGenerator
All Implemented Interfaces:
ColumnValueGenerator

public class NumberExpressionValueGenerator
extends ColumnValueGeneratorBase

The NumberExpressionValueGenerator generates values by evaluating an numeric expression. The expression can be made up of the following operators : '+', '-', '*', '/' and it can contain sub-expressions that are enclosed in brackets. The actual values can be staticly specified or selected from another columns' generated values. Examples:

 '2+3+4-5' 
 '(4+3*(5-1))/2-6'
 'minimum+10000'
 'Order.quantity*Order.unitPrice'
 

Version:
0.6
Author:
Chris Nagy

Field Summary
 
Fields inherited from class net.sourceforge.datagenerator.ColumnValueGeneratorBase
columnDef, dependentValues
 
Constructor Summary
NumberExpressionValueGenerator()
           
 
Method Summary
 java.lang.String[] getDependencies()
          Returns the columns that this generator needs values for before it can generate a value.
 ColumnValue getNextColumnValue(int row, java.util.Random r)
          Returns the next generated value.
static void main(java.lang.String[] args)
           
 void setExpression(java.lang.String expression)
          Set the expression.
 
Methods inherited from class net.sourceforge.datagenerator.ColumnValueGeneratorBase
setColumnDef, setDependentValue, setDependentValues
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

NumberExpressionValueGenerator

public NumberExpressionValueGenerator()
Method Detail

setExpression

public void setExpression(java.lang.String expression)
Set the expression.

Parameters:
expression - the expression

getDependencies

public java.lang.String[] getDependencies()
Description copied from interface: ColumnValueGenerator
Returns the columns that this generator needs values for before it can generate a value.

Returns:
the list of column names
See Also:
ColumnValueGenerator.getDependencies()

getNextColumnValue

public ColumnValue getNextColumnValue(int row,
                                      java.util.Random r)
Description copied from interface: ColumnValueGenerator
Returns the next generated value.

Parameters:
row - the row number
r - a random number generator
Returns:
the next column value
See Also:
ColumnValueGenerator.getNextColumnValue(int,java.util.Random)

main

public static void main(java.lang.String[] args)