net.sf.jasperreports.crosstabs.fill.calculation
Class BucketDefinition

java.lang.Object
  extended by net.sf.jasperreports.crosstabs.fill.calculation.BucketDefinition

public class BucketDefinition
extends java.lang.Object

Bucket definition.

Version:
$Id: BucketDefinition.java 5180 2012-03-29 13:23:12Z teodord $
Author:
Lucian Chirita (lucianc@users.sourceforge.net)

Nested Class Summary
 class BucketDefinition.Bucket
          Bucket value class.
 
Field Summary
protected  java.util.Comparator<java.lang.Object> bucketValueComparator
           
protected  JRExpression orderByExpression
           
protected  java.util.Comparator<java.lang.Object> orderValueComparator
           
protected  BucketDefinition.Bucket VALUE_NULL
          The null bucket.
protected  BucketDefinition.Bucket VALUE_TOTAL
          The total value for this bucket.
protected static byte VALUE_TYPE_NULL
          Value type used for null bucket values.
protected static byte VALUE_TYPE_TOTAL
          Value type used for total buckets.
protected static byte VALUE_TYPE_VALUE
          Value type used for non-null values.
 
Constructor Summary
BucketDefinition(java.lang.Class<?> valueClass, JRExpression orderByExpression, java.util.Comparator<java.lang.Object> comparator, SortOrderEnum order, CrosstabTotalPositionEnum totalPosition)
          Creates a bucket.
 
Method Summary
 int compareOrderValues(java.lang.Object v1, java.lang.Object v2)
           
 boolean computeTotal()
          Whether this bucket needs total calculation.
 BucketDefinition.Bucket create(java.lang.Object value)
          Creates a BucketValue object for a given value.
protected static java.util.Comparator<java.lang.Object> createOrderComparator(java.util.Comparator<java.lang.Object> comparator, SortOrderEnum order)
           
 JRExpression getOrderByExpression()
           
 CrosstabTotalPositionEnum getTotalPosition()
          Returns the total bucket position.
 boolean hasOrderValues()
           
 void setComputeTotal()
          Instructs that the bucket will need total bucket calculation.
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

VALUE_TYPE_VALUE

protected static final byte VALUE_TYPE_VALUE
Value type used for non-null values.

See Also:
Constant Field Values

VALUE_TYPE_NULL

protected static final byte VALUE_TYPE_NULL
Value type used for null bucket values.

See Also:
Constant Field Values

VALUE_TYPE_TOTAL

protected static final byte VALUE_TYPE_TOTAL
Value type used for total buckets.

See Also:
Constant Field Values

VALUE_TOTAL

protected final BucketDefinition.Bucket VALUE_TOTAL
The total value for this bucket.


VALUE_NULL

protected final BucketDefinition.Bucket VALUE_NULL
The null bucket.


bucketValueComparator

protected final java.util.Comparator<java.lang.Object> bucketValueComparator

orderByExpression

protected final JRExpression orderByExpression

orderValueComparator

protected final java.util.Comparator<java.lang.Object> orderValueComparator
Constructor Detail

BucketDefinition

public BucketDefinition(java.lang.Class<?> valueClass,
                        JRExpression orderByExpression,
                        java.util.Comparator<java.lang.Object> comparator,
                        SortOrderEnum order,
                        CrosstabTotalPositionEnum totalPosition)
                 throws JRException
Creates a bucket.

Parameters:
valueClass - the class of the bucket values
orderByExpression - expression that provides order by values
comparator - the comparator to use for bucket sorting
order - the order type, SortOrderEnum.ASCENDING or SortOrderEnum.DESCENDING descending
totalPosition - the position of the total bucket
Throws:
JRException
Method Detail

createOrderComparator

protected static java.util.Comparator<java.lang.Object> createOrderComparator(java.util.Comparator<java.lang.Object> comparator,
                                                                              SortOrderEnum order)

computeTotal

public boolean computeTotal()
Whether this bucket needs total calculation.

Returns:
this bucket needs total calculation

setComputeTotal

public void setComputeTotal()
Instructs that the bucket will need total bucket calculation.

See Also:
computeTotal()

getTotalPosition

public CrosstabTotalPositionEnum getTotalPosition()
Returns the total bucket position.

Returns:
the total bucket position

getOrderByExpression

public JRExpression getOrderByExpression()

hasOrderValues

public boolean hasOrderValues()

compareOrderValues

public int compareOrderValues(java.lang.Object v1,
                              java.lang.Object v2)

create

public BucketDefinition.Bucket create(java.lang.Object value)
Creates a BucketValue object for a given value.

Parameters:
value - the value
Returns:
the corresponding BucketValue object


© 2001-2010 Jaspersoft Corporation www.jaspersoft.com