net.sf.farrago.namespace.mock
Class MedMockDataServer
java.lang.Object
net.sf.farrago.plugin.FarragoAbstractPluginBase
net.sf.farrago.namespace.impl.MedAbstractBase
net.sf.farrago.namespace.impl.MedAbstractDataServer
net.sf.farrago.namespace.mock.MedMockDataServer
- All Implemented Interfaces:
- FarragoMedDataServer, FarragoAllocation, ClosableAllocation
- Direct Known Subclasses:
- MedMockLocalDataServer
class MedMockDataServer
- extends MedAbstractDataServer
MedMockDataServer provides a mock implementation of the FarragoMedDataServer
interface.
- Version:
- $Id: //open/dev/farrago/src/net/sf/farrago/namespace/mock/MedMockDataServer.java#20 $
- Author:
- John V. Sichi
Methods inherited from class java.lang.Object |
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
PROP_SIMULATE_BAD
public static final String PROP_SIMULATE_BAD
- See Also:
- Constant Field Values
PROP_SCHEMA_NAME
public static final String PROP_SCHEMA_NAME
- See Also:
- Constant Field Values
PROP_TABLE_NAME
public static final String PROP_TABLE_NAME
- See Also:
- Constant Field Values
PROP_ROW_COUNT
public static final String PROP_ROW_COUNT
- See Also:
- Constant Field Values
PROP_ROW_COUNT_SQL
public static final String PROP_ROW_COUNT_SQL
- See Also:
- Constant Field Values
PROP_UDX_SPECIFIC_NAME
public static final String PROP_UDX_SPECIFIC_NAME
- See Also:
- Constant Field Values
PROP_EXECUTOR_IMPL
public static final String PROP_EXECUTOR_IMPL
- See Also:
- Constant Field Values
PROPVAL_JAVA
public static final String PROPVAL_JAVA
- See Also:
- Constant Field Values
PROPVAL_FENNEL
public static final String PROPVAL_FENNEL
- See Also:
- Constant Field Values
PROP_EXTRACT_COLUMNS
public static final String PROP_EXTRACT_COLUMNS
- See Also:
- Constant Field Values
DEFAULT_EXTRACT_COLUMNS
public static final boolean DEFAULT_EXTRACT_COLUMNS
- See Also:
- Constant Field Values
wrapper
private MedAbstractDataWrapper wrapper
extractColumns
protected boolean extractColumns
MedMockDataServer
MedMockDataServer(MedAbstractDataWrapper wrapper,
String serverMofId,
Properties props)
initialize
void initialize()
throws SQLException
- Throws:
SQLException
getNameDirectory
public FarragoMedNameDirectory getNameDirectory()
throws SQLException
- Description copied from interface:
FarragoMedDataServer
- Gets a FarragoMedNameDirectory corresponding to this server.
- Specified by:
getNameDirectory
in interface FarragoMedDataServer
- Overrides:
getNameDirectory
in class MedAbstractDataServer
- Returns:
- directory, or null if this server does not have the required
metadata capability
- Throws:
SQLException
- if directory access is unsuccessful (but not if
directory access is unsupported)
newColumnSet
public FarragoMedColumnSet newColumnSet(String[] localName,
Properties tableProps,
FarragoTypeFactory typeFactory,
RelDataType rowType,
Map<String,Properties> columnPropMap)
throws SQLException
- Description copied from interface:
FarragoMedDataServer
- Creates an instance of a FarragoMedColumnSet corresponding to row data
identified by properties rather than container name. This supports the
SQL/MED CREATE FOREIGN TABLE statement. As much validation as possible
should be performed, including accessing representative data.
- Parameters:
localName
- the qualified name to assign to the column set within
Farrago; this should NOT be used for finding the actual data, since it
can be set arbitrarily by the caller; instead, it should be used to
implement the RelOptTable.getQualifiedName() method, and can be useful
for correlation during debuggingtableProps
- properties to use for data location and accesstypeFactory
- FarragoTypeFactory to use for defining typesrowType
- type to impose on the rows of this column set (including
column names and types), or null to infer row type; if this is non-null,
it must be saved for use by the getRowType() returned from
FarragoMedColumnSetcolumnPropMap
- map from column name to column-specific Properties;
this is optional and may only be specified when rowType is also specified
(the field names in rowType are used as the keys for columnPropMap)
- Returns:
- new FarragoMedColumnSet
- Throws:
SQLException
- if data access is unsuccessful
checkNameMatch
private void checkNameMatch(String expectedName,
String actualName)
getRuntimeSupport
public Object getRuntimeSupport(Object param)
throws SQLException
- Description copied from interface:
FarragoMedDataServer
- Gets an object needed for runtime support. Typically, this will be called
from code generated by this server. The meaning of this is entirely
dependent on the server implementation. If the returned object implements
FarragoAllocation, its closeAllocation() method will be called
automatically as soon as it is no longer needed.
- Specified by:
getRuntimeSupport
in interface FarragoMedDataServer
- Overrides:
getRuntimeSupport
in class MedAbstractDataServer
- Parameters:
param
- parameter supplied at runtime
- Returns:
- support object
- Throws:
SQLException
registerRules
public void registerRules(RelOptPlanner planner)
- Description copied from interface:
FarragoMedDataServer
- Gives this wrapper a chance to register any special optimization rules.
This method may be called more than once, each time with a different
planner instance.
- Specified by:
registerRules
in interface FarragoMedDataServer
- Overrides:
registerRules
in class MedAbstractDataServer
- Parameters:
planner
- the planner in which the rules should be registered
closeAllocation
public void closeAllocation()
- Description copied from interface:
ClosableAllocation
- Closes this object.
- Specified by:
closeAllocation
in interface ClosableAllocation
- Overrides:
closeAllocation
in class MedAbstractDataServer
getForeignSchemaName
String getForeignSchemaName()
getForeignTableName
String getForeignTableName()
getWrapper
MedAbstractDataWrapper getWrapper()
createMockRowType
RelDataType createMockRowType(FarragoTypeFactory typeFactory)
createMockColumnType
RelDataType createMockColumnType(FarragoTypeFactory typeFactory)