mondrian.rolap
Class RolapNative

java.lang.Object
  extended by mondrian.rolap.RolapNative
Direct Known Subclasses:
RolapNativeRegistry, RolapNativeSet

public abstract class RolapNative
extends Object

A factory for NativeEvaluator. If the instance returns null, then the interpreter must compute the result itself. If it returns a NativeEvaluator the interpreter may choose to let the NativeEvaluator compute the result.

There exist multiple RolapNative implementations, e.g. for CrossJoin, TopCount, Filter etc. If the arguments of these functions are simple enough to be evaluated in SQL then a NativeEvaluator will be returned that performs the computations in SQL. Otherwise null will be returned.

 

Nested Class Summary
(package private) static interface RolapNative.Listener
           
(package private) static class RolapNative.NativeEvent
           
(package private) static class RolapNative.TupleEvent
           
 
Field Summary
protected  RolapNative.Listener listener
           
 
Constructor Summary
RolapNative()
           
 
Method Summary
(package private) abstract  NativeEvaluator createEvaluator(RolapEvaluator evaluator, FunDef fun, Exp[] args)
          If function can be implemented in SQL, returns a NativeEvaluator that computes the result; otherwise returns null.
(package private)  RolapNative.Listener getListener()
           
(package private)  boolean isEnabled()
          if enabled == false, then createEvaluator will always return null
(package private)  void setEnabled(boolean enabled)
           
(package private)  void setListener(RolapNative.Listener listener)
           
(package private) abstract  void useHardCache(boolean hard)
          Sets whether to use hard caching for testing.
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

listener

protected RolapNative.Listener listener
Constructor Detail

RolapNative

public RolapNative()
Method Detail

createEvaluator

abstract NativeEvaluator createEvaluator(RolapEvaluator evaluator,
                                         FunDef fun,
                                         Exp[] args)
If function can be implemented in SQL, returns a NativeEvaluator that computes the result; otherwise returns null.


isEnabled

boolean isEnabled()
if enabled == false, then createEvaluator will always return null


setEnabled

void setEnabled(boolean enabled)

getListener

RolapNative.Listener getListener()

setListener

void setListener(RolapNative.Listener listener)

useHardCache

abstract void useHardCache(boolean hard)
Sets whether to use hard caching for testing. When using soft references, we can not test caching because things may be garbage collected during the tests.


SourceForge.net_Logo