net.sf.farrago.miniplan
Class FarragoMiniplanPersonalityFactory.FarragoMiniplanSessionPersonality

java.lang.Object
  extended by net.sf.farrago.defimpl.FarragoDefaultSessionPersonality
      extended by net.sf.farrago.miniplan.FarragoMiniplanPersonalityFactory.FarragoMiniplanSessionPersonality
All Implemented Interfaces:
FarragoSessionPersonality, FarragoStreamFactoryProvider
Enclosing class:
FarragoMiniplanPersonalityFactory

private static class FarragoMiniplanPersonalityFactory.FarragoMiniplanSessionPersonality
extends FarragoDefaultSessionPersonality


Nested Class Summary
 
Nested classes/interfaces inherited from class net.sf.farrago.defimpl.FarragoDefaultSessionPersonality
FarragoDefaultSessionPersonality.ParamValidator
 
Field Summary
private static String MINIPLAN_VOLCANO
           
 
Fields inherited from class net.sf.farrago.defimpl.FarragoDefaultSessionPersonality
CACHE_STATEMENTS, CACHE_STATEMENTS_DEFAULT, database, DEGREE_OF_PARALLELISM, DEGREE_OF_PARALLELISM_DEFAULT, LABEL, LABEL_DEFAULT, paramValidator, REDUCE_NON_CORRELATED_SUBQUERIES, REDUCE_NON_CORRELATED_SUBQUERIES_FARRAGO_DEFAULT, SQUEEZE_JDBC_NUMERIC, SQUEEZE_JDBC_NUMERIC_DEFAULT, VALIDATE_DDL_ON_PREPARE, VALIDATE_DDL_ON_PREPARE_DEFAULT
 
Constructor Summary
protected FarragoMiniplanPersonalityFactory.FarragoMiniplanSessionPersonality(FarragoDbSession session)
           
 
Method Summary
 void loadDefaultSessionVariables(FarragoSessionVariables variables)
          Loads variables from the session personality into a session variables object.
 FarragoSessionPlanner newPlanner(FarragoSessionPreparingStmt stmt, boolean init)
          Creates a new planner.
 
Methods inherited from class net.sf.farrago.defimpl.FarragoDefaultSessionPersonality
addRowCount, createInheritedSessionVariables, defineDdlHandlers, definePlannerListeners, definePrivileges, getDefaultLocalDataServerName, getOJRexImplementorTable, getRowCounts, getRuntimeContextClass, getSqlOperatorTable, initPreparingStmt, isAlterTableAddColumnIncremental, isJavaUdxRestartable, isSupportedType, newComponentImpl, newDdlValidator, newJmiQueryProcessor, newParser, newPreparingStmt, newPreparingStmt, newPreparingStmt, newRuntimeContext, newTypeFactory, registerRelMetadataProviders, registerStreamFactories, resetRowCounts, shouldReplacePreserveOriginalSql, supportsFeature, updateIndexRoot, updateRowCounts, validateSessionVariable
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

MINIPLAN_VOLCANO

private static final String MINIPLAN_VOLCANO
See Also:
Constant Field Values
Constructor Detail

FarragoMiniplanPersonalityFactory.FarragoMiniplanSessionPersonality

protected FarragoMiniplanPersonalityFactory.FarragoMiniplanSessionPersonality(FarragoDbSession session)
Method Detail

loadDefaultSessionVariables

public void loadDefaultSessionVariables(FarragoSessionVariables variables)
Description copied from interface: FarragoSessionPersonality
Loads variables from the session personality into a session variables object. Each personality uses on its own variables. This method allows the personality to declare its variables and set default values for them. If any variables already have values, then they will not be overwritten.

This method should be called when initializing a new session or when loading a new session personality for an existing session. This method "leaves a mark", as it has the side effect of permanently updating the session variables. Even if the session personality is swapped out, the changes will remain.

Specified by:
loadDefaultSessionVariables in interface FarragoSessionPersonality
Overrides:
loadDefaultSessionVariables in class FarragoDefaultSessionPersonality
Parameters:
variables - the session variables object

newPlanner

public FarragoSessionPlanner newPlanner(FarragoSessionPreparingStmt stmt,
                                        boolean init)
Description copied from interface: FarragoSessionPersonality
Creates a new planner.

Specified by:
newPlanner in interface FarragoSessionPersonality
Overrides:
newPlanner in class FarragoDefaultSessionPersonality
Parameters:
stmt - stmt on whose behalf planner will operate
init - whether to initialize default rules in new planner
Returns:
new planner