Package de.businesscode.bcdui.wrs.load
Class WrqInfo
java.lang.Object
de.businesscode.bcdui.wrs.load.WrqInfo
Collects knowledge about the Wrq.
Initially taken from WrsSqlGenerator. For older change history see there
-
Field Summary
Fields -
Constructor Summary
ConstructorsConstructorDescriptionWrqInfo
(SqlFromSubSelect currentSelect, Element selectElem) Constructor from currentSelect as context and our wrq:Select element -
Method Summary
Modifier and TypeMethodDescriptionprotected String
Usually, the aggregation is defined in the Wrq Element e for the column.protected Element
protected Element
protected Element
Convenience methodint
protected LinkedHashSet<String>
getTopNs()
protected LinkedHashSet<String>
Return the virtual dimension members for a bRefprotected LinkedList<WrsBindingItem>
protected void
Initializes internal data structures for s single wrq:Selectprotected boolean
isEmpty()
boolean
boolean
protected void
No binding items are explicitly given in select clause, collect here all the BindingSet has to offervoid
setReqHasGroupingFunction
(Boolean reqHasGroupingFunction)
-
Field Details
-
currentSelect
-
-
Constructor Details
-
WrqInfo
Constructor from currentSelect as context and our wrq:Select element- Parameters:
currentSelect
-selectElem
-- Throws:
Exception
-
-
Method Details
-
isEmpty
protected boolean isEmpty() -
getOrderingBRefs
-
getFullSelectListBRefs
-
getUserSelectListBRefs
-
getWrsCOnlySelectListBRefs
-
getFilterNode
- Throws:
XPathExpressionException
-
getGroupingNode
- Throws:
XPathExpressionException
-
getHavingNode
- Throws:
XPathExpressionException
-
initMetaData
Initializes internal data structures for s single wrq:Select- Throws:
Exception
-
selectAllBindingItems
No binding items are explicitly given in select clause, collect here all the BindingSet has to offer- Throws:
BindingException
-
getDefaultAggr
Usually, the aggregation is defined in the Wrq Element e for the column. There are two cases where not: It is not given (select all, no explicit select list), or the attribute is simply not set. Then we have this mechanism for default-aggregator, the returned aggregator can be trusted (i.e. no SQL injection can happen within this fkt) 1) Wrq/Columns/C/@aggr 2) BindingSet/BindingItem/@aggr 3) MAX() or SUM() depending on the BindingItems data type- Parameters:
bi
-- Returns:
-
getOwnerDocument
-
getSelectNode
-
getAllBRefAggrs
-
getAllBRefs
-
getVirtualBRefs
-
getAllRawBRefs
-
getNoMetaDataBindingItem
- Throws:
BindingNotFoundException
-
getGroupingChildNode
- Throws:
XPathExpressionException
-
getTopNs
- Throws:
XPathExpressionException
-
getNextColumnNumber
public int getNextColumnNumber() -
getResultingBindingSet
-
getGroupingBRefs
-
getHavingBRefs
-
reqHasGroupingFunction
public boolean reqHasGroupingFunction() -
reqHasGroupBy
public boolean reqHasGroupBy() -
setReqHasGroupingFunction
-
getJdbcResourceName
Convenience method- Returns:
-
getCurrentSelect
-
getSQLSelectWithParams
-
getVdm
Return the virtual dimension members for a bRef- Parameters:
bRef
-- Returns:
-
getWrqGroupBy2Sql
-