|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Object net.sf.jasperreports.engine.query.JRAbstractQueryExecuter
public abstract class JRAbstractQueryExecuter
Base abstract query executer.
Nested Class Summary | |
---|---|
protected static class |
JRAbstractQueryExecuter.QueryParameter
A parameter present in the query. |
Field Summary | |
---|---|
protected static int |
CLAUSE_POSITION_ID
|
protected java.util.Map<java.lang.String,JRClauseFunction> |
clauseFunctions
Clause function registry. |
protected JRDataset |
dataset
|
Constructor Summary | |
---|---|
protected |
JRAbstractQueryExecuter(JasperReportsContext jasperReportsContext,
JRDataset dataset,
java.util.Map<java.lang.String,? extends JRValueParameter> parametersMap)
|
protected |
JRAbstractQueryExecuter(JRDataset dataset,
java.util.Map<java.lang.String,? extends JRValueParameter> parametersMap)
Deprecated. Replaced by JRAbstractQueryExecuter(JasperReportsContext, JRDataset, Map) . |
Method Summary | |
---|---|
protected void |
addQueryMultiParameters(java.lang.String parameterName,
int count)
Records a multi-valued query parameter. |
protected void |
addQueryMultiParameters(java.lang.String parameterName,
int count,
boolean ignoreNulls)
Records a multi-valued query parameter which ignore null values. |
protected void |
addQueryParameter(java.lang.String parameterName)
Records a query parameter. |
protected void |
appendClauseChunk(java.lang.StringBuffer sbuffer,
java.lang.String[] clauseTokens)
Handles a clause query chunk . |
protected void |
appendParameterChunk(java.lang.StringBuffer sbuffer,
java.lang.String chunkText)
|
protected void |
appendParameterClauseChunk(java.lang.StringBuffer sbuffer,
java.lang.String chunkText)
|
protected void |
appendQueryChunk(java.lang.StringBuffer sbuffer,
JRQueryChunk chunk)
|
protected void |
appendTextChunk(java.lang.StringBuffer sbuffer,
java.lang.String text)
|
protected void |
applyClause(JRClauseFunction function,
JRClauseTokens tokens,
java.lang.StringBuffer sbuffer)
|
protected void |
checkParameter(java.lang.String parameterName)
|
protected boolean |
getBooleanParameter(java.lang.String parameter,
java.lang.String property,
boolean defaultValue)
|
protected boolean |
getBooleanParameterOrProperty(java.lang.String name,
boolean defaultValue)
|
protected java.util.List<java.lang.String> |
getCollectedParameterNames()
Returns the list of parameter names in the order in which they appear in the query. |
protected java.util.List<JRAbstractQueryExecuter.QueryParameter> |
getCollectedParameters()
Returns the list of query parameters in the order in which they appear in the query. |
protected JasperReportsContext |
getJasperReportsContext()
|
protected JRFillParameter |
getParameter(java.lang.String parameterName)
Deprecated. getValueParameter(String) should be used instead |
protected abstract java.lang.String |
getParameterReplacement(java.lang.String parameterName)
Returns the replacement text for a query parameter. |
protected java.lang.Object |
getParameterValue(java.lang.String parameterName)
Returns the value of a fill parameter. |
protected java.lang.Object |
getParameterValue(java.lang.String parameterName,
boolean ignoreMissing)
Returns the value of a fill parameter. |
protected JRPropertiesUtil |
getPropertiesUtil()
|
protected java.lang.String |
getQueryString()
Returns the parsed query string with the parameter clauses replaced by the parameter values and the parameters replaced by getParameterReplacement . |
protected java.lang.String |
getStringParameter(java.lang.String parameter,
java.lang.String property)
|
protected java.lang.String |
getStringParameterOrProperty(java.lang.String name)
|
protected JRValueParameter |
getValueParameter(java.lang.String parameterName)
Return a value parameter from the parameters map. |
protected JRValueParameter |
getValueParameter(java.lang.String parameterName,
boolean ignoreMissing)
Return a value parameter from the parameters map. |
protected boolean |
parameterHasValue(java.lang.String parameter)
|
protected void |
parseQuery()
Parses the query and replaces the parameter clauses by the parameter values and the parameters by the return value of getParameterReplacement . |
protected void |
registerClauseFunction(java.lang.String id,
JRClauseFunction function)
Registers a clause function. |
protected JRClauseFunction |
resolveFunction(java.lang.String id)
Resolves a clause function ID to a function instance. |
protected void |
unregisterClauseFunction(java.lang.String id)
Unregisters a clause function. |
Methods inherited from class java.lang.Object |
---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
Methods inherited from interface net.sf.jasperreports.engine.query.JRQueryExecuter |
---|
cancelQuery, close, createDatasource |
Field Detail |
---|
protected static final int CLAUSE_POSITION_ID
protected final java.util.Map<java.lang.String,JRClauseFunction> clauseFunctions
protected final JRDataset dataset
Constructor Detail |
---|
protected JRAbstractQueryExecuter(JasperReportsContext jasperReportsContext, JRDataset dataset, java.util.Map<java.lang.String,? extends JRValueParameter> parametersMap)
protected JRAbstractQueryExecuter(JRDataset dataset, java.util.Map<java.lang.String,? extends JRValueParameter> parametersMap)
JRAbstractQueryExecuter(JasperReportsContext, JRDataset, Map)
.
Method Detail |
---|
protected JasperReportsContext getJasperReportsContext()
protected JRPropertiesUtil getPropertiesUtil()
protected void registerClauseFunction(java.lang.String id, JRClauseFunction function)
id
- the function IDfunction
- the functionprotected void unregisterClauseFunction(java.lang.String id)
id
- the function IDprotected JRClauseFunction resolveFunction(java.lang.String id)
id
- the function ID
JRRuntimeException
- if no function for the ID is foundprotected void parseQuery()
getParameterReplacement
.
protected void appendQueryChunk(java.lang.StringBuffer sbuffer, JRQueryChunk chunk)
protected void appendTextChunk(java.lang.StringBuffer sbuffer, java.lang.String text)
protected void appendParameterChunk(java.lang.StringBuffer sbuffer, java.lang.String chunkText)
protected void addQueryParameter(java.lang.String parameterName)
parameterName
- the parameter namegetCollectedParameters()
protected void addQueryMultiParameters(java.lang.String parameterName, int count)
parameterName
- the parameter namecount
- the value countgetCollectedParameters()
,
JRAbstractQueryExecuter.QueryParameter.isMulti()
protected void addQueryMultiParameters(java.lang.String parameterName, int count, boolean ignoreNulls)
parameterName
- the parameter namecount
- the value countgetCollectedParameters()
,
JRAbstractQueryExecuter.QueryParameter.isMulti()
protected void appendParameterClauseChunk(java.lang.StringBuffer sbuffer, java.lang.String chunkText)
protected void appendClauseChunk(java.lang.StringBuffer sbuffer, java.lang.String[] clauseTokens)
clause query chunk
.
The default implementation considers the first token as a
clause function
ID and delegates the call to the
function.
Extending query executers can override this to implement custom query clause handling.
sbuffer
- the query text bufferclauseTokens
- clause tokens
JRRuntimeException
- if there is no first token or no clause function is found for the IDregisterClauseFunction(String, JRClauseFunction)
protected void applyClause(JRClauseFunction function, JRClauseTokens tokens, java.lang.StringBuffer sbuffer)
protected java.lang.String getQueryString()
getParameterReplacement
.
protected java.util.List<java.lang.String> getCollectedParameterNames()
protected java.util.List<JRAbstractQueryExecuter.QueryParameter> getCollectedParameters()
query parameters
in the order in which they appear in the query.
protected java.lang.Object getParameterValue(java.lang.String parameterName, boolean ignoreMissing)
parameterName
- the parameter nameignoreMissing
- if true
, the method will return null for non existing parameters;
otherwise, an exception will be thrown if the parameter does not exist
protected java.lang.Object getParameterValue(java.lang.String parameterName)
parameterName
- the parameter name
protected boolean parameterHasValue(java.lang.String parameter)
protected java.lang.String getStringParameter(java.lang.String parameter, java.lang.String property)
protected java.lang.String getStringParameterOrProperty(java.lang.String name)
protected boolean getBooleanParameter(java.lang.String parameter, java.lang.String property, boolean defaultValue)
protected boolean getBooleanParameterOrProperty(java.lang.String name, boolean defaultValue)
protected JRFillParameter getParameter(java.lang.String parameterName)
getValueParameter(String)
should be used instead
parameterName
- the parameter name
protected void checkParameter(java.lang.String parameterName)
protected JRValueParameter getValueParameter(java.lang.String parameterName, boolean ignoreMissing)
parameterName
- the parameter nameignoreMissing
- if true
, the method will return null for non existing parameters;
otherwise, an exception will be thrown if the parameter does not exist
protected JRValueParameter getValueParameter(java.lang.String parameterName)
parameterName
- the parameter name
protected abstract java.lang.String getParameterReplacement(java.lang.String parameterName)
parameterName
- the parameter name
JRQueryChunk.TYPE_PARAMETER
|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |