|
||||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | |||||||||
java.lang.Objectnet.sf.jasperreports.engine.fill.JRFillDataset
public class JRFillDataset
| Nested Class Summary | |
|---|---|
protected static interface |
JRFillDataset.CacheRecordIndexCallback
|
protected static class |
JRFillDataset.CacheRecordIndexChainedCallback
|
protected static class |
JRFillDataset.FillDatasetPositionRecordIndexCallback
|
protected static class |
JRFillDataset.VariableCalculationReq
Class used to hold expression calculation requirements. |
| Field Summary | |
|---|---|
protected JRCalculator |
calculator
The calculator used by the dataset. |
protected DatasetRecorder |
dataRecorder
|
protected JRDataSource |
dataSource
The data source. |
protected JRAbstractScriptlet |
delegateScriptlet
|
protected JRFillElementDataset[] |
elementDatasets
The element datasets. |
protected JRFillField[] |
fields
The dataset fields. |
protected Map<String,JRFillField> |
fieldsMap
The dataset fields indexed by name. |
protected FillDatasetPosition |
fillPosition
|
protected DatasetFilter |
filter
|
protected JRFillGroup[] |
groups
The dataset groups. |
protected Locale |
locale
The Locale to be used by the dataset. |
protected JRFillElementDataset[] |
origElementDatasets
Used to save the original element datasets when filterElementDatasets is called. |
protected JRFillParameter[] |
parameters
The dataset parameters. |
protected Map<String,JRFillParameter> |
parametersMap
The dataset parameters indexed by name. |
protected JRQuery |
query
The dataset query. |
protected int |
reportCount
The cursor used when iterating the data source. |
protected Integer |
reportMaxCount
The value of the max count parameter. |
protected ResourceBundle |
resourceBundle
The loaded resource bundle. |
protected String |
resourceBundleBaseName
The resource bundle base name. |
protected String |
scriptletClassName
The scriptlet class name. |
protected List<JRAbstractScriptlet> |
scriptlets
The scriptlets used by the dataset. |
protected TimeZone |
timeZone
The TimeZone to be used by the dataset. |
protected Set<JRFillDataset.VariableCalculationReq> |
variableCalculationReqs
Set of VariableCalculationReq objects. |
protected JRFillVariable[] |
variables
The dataset variables. |
protected Map<String,JRFillVariable> |
variablesMap
The dataset variables indexed by name. |
protected WhenResourceMissingTypeEnum |
whenResourceMissingType
The resource missing handle type. |
| Constructor Summary | |
|---|---|
JRFillDataset(JRBaseFiller filler,
JRDataset dataset,
JRFillObjectFactory factory)
Creates a fill dataset object. |
|
| Method Summary | |
|---|---|
protected void |
addCacheRecordIndexCallback(int recordIndex,
JRFillDataset.CacheRecordIndexCallback callback)
|
protected void |
addVariableCalculationReq(String variableName,
CalculationEnum calculation)
Adds a variable calculation requirement. |
protected void |
advanceCacheRecordIndexes()
|
protected boolean |
advanceDataSource(boolean limit)
|
protected void |
cacheEnd()
|
protected void |
cacheInit()
|
protected void |
cacheInitRecording()
|
protected void |
cacheInitSnapshot()
|
protected void |
cacheRecord()
|
protected void |
checkVariableCalculationReqs(JRFillObjectFactory factory)
Checks if there are variable calculation requirements and creates the required variables. |
Object |
clone()
|
void |
closeDatasource()
Closes the data source used by this dataset if this data source was obtained via a query executer. |
protected void |
closeQueryExecuter()
|
void |
contributeParameters(Map<String,Object> parameterValues)
|
void |
createCalculator(JasperReport jasperReport)
Creates the calculator |
protected static JRCalculator |
createCalculator(JasperReportsContext jasperReportsContext,
JasperReport jasperReport,
JRDataset dataset)
|
protected List<JRAbstractScriptlet> |
createScriptlets(Map<String,Object> parameterValues)
Creates the scriptlets. |
void |
disposeParameterContributors()
|
Object |
evaluateExpression(JRExpression expression,
byte evaluation)
Evaluates an expression |
protected void |
filterElementDatasets(JRFillElementDataset elementDataset)
Filters the element datasets, leaving only one. |
FillDatasetPosition |
getDatasetPosition()
|
JRField[] |
getFields()
Returns the dataset's fields. |
Object |
getFieldValue(String fieldName)
Returns the value of a field. |
Object |
getFieldValue(String fieldName,
EvaluationType evaluation)
Returns the value of a field. |
JRFillField |
getFillField(String fieldName)
|
JRFillVariable |
getFillVariable(String variableName)
|
JRExpression |
getFilterExpression()
Returns the dataset filter expression. |
JRGroup[] |
getGroups()
Returns the dataset's groups. |
protected JasperReportsContext |
getJasperReportsContext()
|
Locale |
getLocale()
Returns the locale used by the dataset. |
String |
getName()
Returns the dataset name. |
JRParameter[] |
getParameters()
Returns the dataset's parameters. |
Map<String,JRFillParameter> |
getParametersMap()
|
Object |
getParameterValue(String parameterName)
Returns the value of a parameter. |
Object |
getParameterValue(String parameterName,
boolean ignoreMissing)
Returns the value of a parameter. |
protected Map<String,Object> |
getParameterValuesMap()
Returns the map of parameter values. |
JRPropertiesHolder |
getParentProperties()
Returns the parent properties holder, whose properties are used as defaults for this object. |
JRPropertiesMap |
getPropertiesMap()
Returns this object's properties map. |
JRQuery |
getQuery()
Returns the query of the dataset. |
String |
getResourceBundle()
Returns the resource bundle base name. |
String |
getScriptletClass()
The name of the scriptlet class to be used when iterating this dataset. |
JRScriptlet[] |
getScriptlets()
Returns the dataset's scriptlets. |
JRSortField[] |
getSortFields()
Returns the dataset's sort fields. |
UUID |
getUUID()
|
JRVariable[] |
getVariables()
Returns the dataset's variables. |
Object |
getVariableValue(String variableName)
Returns the value of a variable. |
Object |
getVariableValue(String variableName,
EvaluationType evaluation)
Returns the value of a variable. |
WhenResourceMissingTypeEnum |
getWhenResourceMissingTypeValue()
Returns the resource missing handling type. |
boolean |
hasProperties()
Checks whether the object has any properties. |
protected void |
inheritFromMain()
Inherits properties from the report. |
void |
initCalculator()
Initializes the calculator. |
void |
initDatasource()
Initializes the data source which will be used by this dataset. |
protected void |
initElementDatasets(JRFillObjectFactory factory)
Initializes the element datasets. |
protected boolean |
isIncludedInDataCache(JRFillParameter parameter)
|
boolean |
isMainDataset()
Decides whether this dataset is the main report dataset or a sub dataset. |
protected ResourceBundle |
loadResourceBundle()
Loads the resource bundle corresponding to the resource bundle base name and locale. |
boolean |
next()
Moves to the next record in the data source. |
protected boolean |
next(boolean sorting)
Moves to the next record in the data source. |
protected void |
reset()
|
protected void |
resetVariables()
|
protected void |
restoreElementDatasets()
Restores the original element datasets. |
protected void |
revertToOldValues()
|
void |
setCacheRecordIndex(FillDatasetPosition position,
byte evaluationType)
|
void |
setCacheSkipped(boolean cacheSkipped)
|
protected void |
setCalculator(JRCalculator calculator)
|
void |
setConnectionParameterValue(Map<String,Object> parameterValues,
Connection conn)
Sets the JDBC connection to be used. |
void |
setDatasourceParameterValue(Map<String,Object> parameterValues,
JRDataSource ds)
Sets the data source to be used. |
void |
setFillPosition(FillDatasetPosition fillPosition)
|
void |
setJasperReportsContext(JasperReportsContext jasperReportsContext)
|
protected void |
setOldValues()
|
protected void |
setParameter(JRFillParameter parameter,
Object value)
Sets the value of the parameter. |
protected void |
setParameter(String parameterName,
Object value)
Sets the value of a parameter. |
void |
setParameterValues(Map<String,Object> parameterValues)
Reads built-in parameter values from the value map. |
void |
setWhenResourceMissingType(WhenResourceMissingTypeEnum whenResourceMissingType)
Sets the resource missing handling type. |
void |
start()
Starts the iteration on the data source. |
| Methods inherited from class java.lang.Object |
|---|
equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
| Field Detail |
|---|
protected JRQuery query
protected JRFillParameter[] parameters
protected Map<String,JRFillParameter> parametersMap
protected JRFillField[] fields
protected Map<String,JRFillField> fieldsMap
protected JRFillVariable[] variables
protected Map<String,JRFillVariable> variablesMap
protected Set<JRFillDataset.VariableCalculationReq> variableCalculationReqs
VariableCalculationReq objects.
protected JRFillElementDataset[] elementDatasets
protected JRFillElementDataset[] origElementDatasets
filterElementDatasets is called.
protected JRFillGroup[] groups
protected String resourceBundleBaseName
protected WhenResourceMissingTypeEnum whenResourceMissingType
protected String scriptletClassName
protected JRDataSource dataSource
protected Locale locale
Locale to be used by the dataset.
protected ResourceBundle resourceBundle
protected TimeZone timeZone
TimeZone to be used by the dataset.
protected int reportCount
protected JRCalculator calculator
protected List<JRAbstractScriptlet> scriptlets
protected JRAbstractScriptlet delegateScriptlet
protected Integer reportMaxCount
max count parameter.
protected DatasetFilter filter
protected FillDatasetPosition fillPosition
protected DatasetRecorder dataRecorder
| Constructor Detail |
|---|
public JRFillDataset(JRBaseFiller filler,
JRDataset dataset,
JRFillObjectFactory factory)
filler - the fillerdataset - the template datasetfactory - the fill object factory| Method Detail |
|---|
public void createCalculator(JasperReport jasperReport)
throws JRException
jasperReport - the report
JRExceptionprotected void setCalculator(JRCalculator calculator)
protected static JRCalculator createCalculator(JasperReportsContext jasperReportsContext,
JasperReport jasperReport,
JRDataset dataset)
throws JRException
JRException
public void initCalculator()
throws JRException
JRExceptionprotected void inheritFromMain()
protected List<JRAbstractScriptlet> createScriptlets(Map<String,Object> parameterValues)
throws JRException
JRExceptionprotected void initElementDatasets(JRFillObjectFactory factory)
factory - the fill object factory used by the fillerprotected void filterElementDatasets(JRFillElementDataset elementDataset)
This method is used when a dataset is instantiated by a chart or crosstab.
elementDataset - the element dataset that should remainprotected void restoreElementDatasets()
This method should be called after filterElementDatasets.
protected ResourceBundle loadResourceBundle()
public void setParameterValues(Map<String,Object> parameterValues)
throws JRException
parameterValues - the parameter values
JRException
public void initDatasource()
throws JRException
JRExceptionpublic void setFillPosition(FillDatasetPosition fillPosition)
public void setCacheSkipped(boolean cacheSkipped)
protected void cacheInit()
throws DataSnapshotException
DataSnapshotException
protected void cacheInitSnapshot()
throws DataSnapshotException
DataSnapshotExceptionprotected void cacheInitRecording()
protected boolean isIncludedInDataCache(JRFillParameter parameter)
protected void cacheRecord()
protected void cacheEnd()
public void contributeParameters(Map<String,Object> parameterValues)
throws JRException
JRExceptionpublic void setJasperReportsContext(JasperReportsContext jasperReportsContext)
protected JasperReportsContext getJasperReportsContext()
public void disposeParameterContributors()
protected Map<String,Object> getParameterValuesMap()
protected void reset()
public void setDatasourceParameterValue(Map<String,Object> parameterValues,
JRDataSource ds)
parameterValues - the parameter valuesds - the data source
public void setConnectionParameterValue(Map<String,Object> parameterValues,
Connection conn)
parameterValues - the parameter valuesconn - the connectionpublic void closeDatasource()
JRQueryExecuter.close()protected void closeQueryExecuter()
public void start()
protected void resetVariables()
public boolean next()
throws JRException
true if the data source was not exhausted
JRException
protected boolean next(boolean sorting)
throws JRException
sorting - whether the method is called as part of the data sorting phase
true if the data source was not exhausted
JRExceptionprotected void advanceCacheRecordIndexes()
protected void setOldValues()
throws JRException
JRExceptionprotected void revertToOldValues()
protected boolean advanceDataSource(boolean limit)
throws JRException
JRException
protected void setParameter(String parameterName,
Object value)
throws JRException
parameterName - the parameter namevalue - the value
JRException
protected void setParameter(JRFillParameter parameter,
Object value)
throws JRException
parameter - the parametervalue - the value
JRExceptionpublic Object getVariableValue(String variableName)
variableName - the variable name
public Object getVariableValue(String variableName,
EvaluationType evaluation)
DatasetFillContext
getVariableValue in interface DatasetFillContextvariableName - the variable nameevaluation - the evaluation type
public JRFillVariable getFillVariable(String variableName)
public Object getParameterValue(String parameterName)
getParameterValue in interface DatasetFillContextparameterName - the parameter name
public Object getParameterValue(String parameterName,
boolean ignoreMissing)
parameterName - the parameter nameignoreMissing - if set, null will be returned for inexisting parameters
public Object getFieldValue(String fieldName)
fieldName - the field name
public Object getFieldValue(String fieldName,
EvaluationType evaluation)
DatasetFillContext
getFieldValue in interface DatasetFillContextfieldName - the field nameevaluation - the evaluation type
public JRFillField getFillField(String fieldName)
protected void addVariableCalculationReq(String variableName,
CalculationEnum calculation)
variableName - the variable namecalculation - the required calculationprotected void checkVariableCalculationReqs(JRFillObjectFactory factory)
factory - the fill object factorypublic UUID getUUID()
getUUID in interface JRIdentifiablepublic String getName()
JRDataset
getName in interface JRDatasetpublic String getScriptletClass()
JRDataset
getScriptletClass in interface JRDatasetpublic JRScriptlet[] getScriptlets()
JRDataset
getScriptlets in interface JRDatasetpublic JRParameter[] getParameters()
JRDataset
getParameters in interface JRDatasetpublic Map<String,JRFillParameter> getParametersMap()
public JRQuery getQuery()
JRDatasetThe query is used by passing a connection is passed to the dataset when instantiating.
getQuery in interface JRDatasetpublic JRField[] getFields()
JRDataset
getFields in interface JRDatasetpublic JRSortField[] getSortFields()
JRDataset
getSortFields in interface JRDatasetpublic JRVariable[] getVariables()
JRDataset
getVariables in interface JRDatasetpublic JRGroup[] getGroups()
JRDataset
getGroups in interface JRDatasetpublic boolean isMainDataset()
JRDataset
isMainDataset in interface JRDatasettrue if and only if this dataset is the main report datasetpublic String getResourceBundle()
JRDatasetThe resource bundle is used when evaluating expressions.
getResourceBundle in interface JRDatasetpublic WhenResourceMissingTypeEnum getWhenResourceMissingTypeValue()
JRDataset
getWhenResourceMissingTypeValue in interface JRDatasetpublic void setWhenResourceMissingType(WhenResourceMissingTypeEnum whenResourceMissingType)
JRDataset
setWhenResourceMissingType in interface JRDatasetwhenResourceMissingType - the resource missing handling typepublic boolean hasProperties()
JRPropertiesHolder
hasProperties in interface JRPropertiesHolderpublic JRPropertiesMap getPropertiesMap()
JRPropertiesHolder
getPropertiesMap in interface JRPropertiesHolderpublic JRPropertiesHolder getParentProperties()
JRPropertiesHolder
getParentProperties in interface JRPropertiesHoldernull if no parentpublic JRExpression getFilterExpression()
JRDataset
This expression is used to filter the rows of the
data source that this dataset will iterate on.
This expression (if not null) is evaluated immediately after a new row is
produced by the data source.
The evaluation is performed using field and variable values corresponding to the new row.
When the result of the evaluation is Boolean.TRUE the row gets processed by the report
filling engine.
When the result is null or Boolean.FALSE, the current row will be skipped and the datasource will be asked for the next row.
getFilterExpression in interface JRDatasetpublic Object clone()
clone in interface JRCloneableclone in class Object
public Object evaluateExpression(JRExpression expression,
byte evaluation)
throws JRException
expression - the expressionevaluation - the evaluation type
JRExceptionpublic Locale getLocale()
DatasetFillContext
getLocale in interface DatasetFillContextpublic FillDatasetPosition getDatasetPosition()
protected void addCacheRecordIndexCallback(int recordIndex,
JRFillDataset.CacheRecordIndexCallback callback)
public void setCacheRecordIndex(FillDatasetPosition position,
byte evaluationType)
|
||||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | |||||||||