public interface SchemaFactory
Schema objects.
A schema factory allows you to include a custom schema in a model file. For example, here is a model that contains a custom schema whose tables read CSV files. (See the optiq-csv for more details about this particular adapter.)
{
version: '1.0',
defaultSchema: 'SALES',
schemas: [
{
name: 'SALES',
type: 'custom',
factory: 'org.apache.calcite.adapter.csv.CsvSchemaFactory',
mutable: true,
operand: {
directory: 'target/test-classes/sales'
},
tables: [
{
name: 'FEMALE_EMPS',
type: 'view',
sql: 'SELECT * FROM emps WHERE gender = \'F\''
}
]
}
]
}
If you do not wish to allow model authors to add additional tables (including views) to an instance of your schema, specify 'mutable: false'.
A class that implements SchemaFactory specified in a schema must have a public default constructor.
Copyright © 2012–2015 The Apache Software Foundation. All rights reserved.