|
|||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | ||||||||
java.lang.Objectmondrian.rolap.RolapNative
mondrian.rolap.RolapNativeSet
public abstract class RolapNativeSet
Analyses set expressions and executes them in SQL if possible. Supports crossjoin, member.children, level.members and member.descendants - all in non empty mode, i.e. there is a join to the fact table.
TODO: the order of the result is different from the order of the enumeration. Should sort.
| Nested Class Summary | |
|---|---|
static interface |
RolapNativeSet.SchemaReaderWithMemberReaderAvailable
|
protected static class |
RolapNativeSet.SetConstraint
Constraint for non empty {crossjoin, member.children, member.descendants, level.members} |
protected class |
RolapNativeSet.SetEvaluator
|
| Nested classes/interfaces inherited from class mondrian.rolap.RolapNative |
|---|
RolapNative.Listener, RolapNative.NativeEvent, RolapNative.TupleEvent |
| Field Summary | |
|---|---|
protected static org.apache.log4j.Logger |
LOGGER
|
| Fields inherited from class mondrian.rolap.RolapNative |
|---|
listener |
| Constructor Summary | |
|---|---|
RolapNativeSet()
|
|
| Method Summary | |
|---|---|
protected CrossJoinArgFactory |
crossJoinArgFactory()
|
protected boolean |
isPreferInterpreter(CrossJoinArg[] args,
boolean joinArg)
Tests whether non-native evaluation is preferred for the given arguments. |
protected void |
overrideContext(RolapEvaluator evaluator,
CrossJoinArg[] cargs,
RolapStoredMeasure storedMeasure)
Overrides current members in position by default members in hierarchies which are involved in this filter/topcount. |
protected abstract boolean |
restrictMemberTypes()
Returns whether certain member types (e.g. |
(package private) void |
useHardCache(boolean hard)
disable garbage collection for test |
| Methods inherited from class mondrian.rolap.RolapNative |
|---|
createEvaluator, getListener, isEnabled, setEnabled, setListener |
| Methods inherited from class java.lang.Object |
|---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
| Field Detail |
|---|
protected static final org.apache.log4j.Logger LOGGER
| Constructor Detail |
|---|
public RolapNativeSet()
| Method Detail |
|---|
protected abstract boolean restrictMemberTypes()
If true, expressions containing calculated members will be evaluated by the interpreter, instead of using SQL.
If false, calc members will be ignored and the computation will be done in SQL, returning more members than requested. This is ok, if the superflous members are filtered out in java code afterwards.
protected CrossJoinArgFactory crossJoinArgFactory()
protected boolean isPreferInterpreter(CrossJoinArg[] args,
boolean joinArg)
joinArg - true if evaluating a cross-join; false if
evaluating a single-input expression such as filter
void useHardCache(boolean hard)
useHardCache in class RolapNative
protected void overrideContext(RolapEvaluator evaluator,
CrossJoinArg[] cargs,
RolapStoredMeasure storedMeasure)
The current context may contain a calculated measure, this measure was translated into an sql condition (filter/topcount). The measure is not used to constrain the result but only to access the star.
evaluator - Evaluation context to modifycargs - Cross join argumentsstoredMeasure - Stored measureRolapAggregationManager.makeRequest(RolapEvaluator)
|
|
||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | ||||||||