org.apache.kylin.jdbc

## Class KylinMetaImpl

- java.lang.Object
- - org.apache.kylin.jdbc.KylinMetaImpl

All Implemented Interfaces:
  net.hydromatic.avatica.Meta

    public class KylinMetaImpl
    extends Object
    implements net.hydromatic.avatica.Meta

Implementation of avatica interface

Author:
  xduo

### Nested Class Summary

Nested Classes
`static class` `KylinMetaImpl.AbstractNode` Abstract of the tree-like structure
`static class` `KylinMetaImpl.MetaCatalog` Metadata describing a catalog.
`static class` `KylinMetaImpl.MetaColumn` Metadata describing a column.
`static class` `KylinMetaImpl.MetaProject`
`static class` `KylinMetaImpl.MetaSchema` Metadata describing a schema.
`static class` `KylinMetaImpl.MetaTable` Metadata describing a table.
`static class` `KylinMetaImpl.MetaTableType` Metadata describing a table type.

### Nested classes/interfaces inherited from interface net.hydromatic.avatica.Meta

`net.hydromatic.avatica.Meta.Pat`

### Constructor Summary

Constructors
Constructor and Description
`KylinMetaImpl(KylinConnectionImpl conn, KylinJdbc41Factory factory)`

### Method Summary

Methods
`net.hydromatic.avatica.Cursor` `createCursor(net.hydromatic.avatica.AvaticaResultSet resultSet)`
`ResultSet` `getAttributes(String catalog, net.hydromatic.avatica.Meta.Pat schemaPattern, net.hydromatic.avatica.Meta.Pat typeNamePattern, net.hydromatic.avatica.Meta.Pat attributeNamePattern)`
`ResultSet` `getBestRowIdentifier(String catalog, String schema, String table, int scope, boolean nullable)`
`ResultSet` `getCatalogs()`
`ResultSet` `getClientInfoProperties()`
`ResultSet` `getColumnPrivileges(String catalog, String schema, String table, net.hydromatic.avatica.Meta.Pat columnNamePattern)`
`ResultSet` `getColumns(String catalog, net.hydromatic.avatica.Meta.Pat schemaPattern, net.hydromatic.avatica.Meta.Pat tableNamePattern, net.hydromatic.avatica.Meta.Pat columnNamePattern)`
`ResultSet` `getCrossReference(String parentCatalog, String parentSchema, String parentTable, String foreignCatalog, String foreignSchema, String foreignTable)`
`ResultSet` `getExportedKeys(String catalog, String schema, String table)`
`ResultSet` `getFunctionColumns(String catalog, net.hydromatic.avatica.Meta.Pat schemaPattern, net.hydromatic.avatica.Meta.Pat functionNamePattern, net.hydromatic.avatica.Meta.Pat columnNamePattern)`
`ResultSet` `getFunctions(String catalog, net.hydromatic.avatica.Meta.Pat schemaPattern, net.hydromatic.avatica.Meta.Pat functionNamePattern)`
`ResultSet` `getImportedKeys(String catalog, String schema, String table)`
`ResultSet` `getIndexInfo(String catalog, String schema, String table, boolean unique, boolean approximate)`
`String` `getNumericFunctions()`
`ResultSet` `getPrimaryKeys(String catalog, String schema, String table)`
`ResultSet` `getProcedureColumns(String catalog, net.hydromatic.avatica.Meta.Pat schemaPattern, net.hydromatic.avatica.Meta.Pat procedureNamePattern, net.hydromatic.avatica.Meta.Pat columnNamePattern)`
`ResultSet` `getProcedures(String catalog, net.hydromatic.avatica.Meta.Pat schemaPattern, net.hydromatic.avatica.Meta.Pat procedureNamePattern)`
`ResultSet` `getPseudoColumns(String catalog, net.hydromatic.avatica.Meta.Pat schemaPattern, net.hydromatic.avatica.Meta.Pat tableNamePattern, net.hydromatic.avatica.Meta.Pat columnNamePattern)`
`ResultSet` `getSchemas(String catalog, net.hydromatic.avatica.Meta.Pat schemaPattern)`
`String` `getSqlKeywords()`
`String` `getStringFunctions()`
`ResultSet` `getSuperTables(String catalog, net.hydromatic.avatica.Meta.Pat schemaPattern, net.hydromatic.avatica.Meta.Pat tableNamePattern)`
`ResultSet` `getSuperTypes(String catalog, net.hydromatic.avatica.Meta.Pat schemaPattern, net.hydromatic.avatica.Meta.Pat typeNamePattern)`
`String` `getSystemFunctions()`
`ResultSet` `getTablePrivileges(String catalog, net.hydromatic.avatica.Meta.Pat schemaPattern, net.hydromatic.avatica.Meta.Pat tableNamePattern)`
`ResultSet` `getTables(String catalog, net.hydromatic.avatica.Meta.Pat schemaPattern, net.hydromatic.avatica.Meta.Pat tableNamePattern, List<String> typeList)`
`ResultSet` `getTableTypes()`
`String` `getTimeDateFunctions()`
`ResultSet` `getTypeInfo()`
`ResultSet` `getUDTs(String catalog, net.hydromatic.avatica.Meta.Pat schemaPattern, net.hydromatic.avatica.Meta.Pat typeNamePattern, int[] types)`
`ResultSet` `getVersionColumns(String catalog, String schema, String table)`
`net.hydromatic.avatica.AvaticaPrepareResult` `prepare(net.hydromatic.avatica.AvaticaStatement statement, String sql)`

### Methods inherited from class java.lang.Object

`clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

### Constructor Detail

#### KylinMetaImpl

    public KylinMetaImpl(KylinConnectionImpl conn,
                 KylinJdbc41Factory factory)

Parameters:
  `conn` -

### Method Detail

#### getSqlKeywords

    public String getSqlKeywords()

Specified by:
  `getSqlKeywords` in interface `net.hydromatic.avatica.Meta`

#### getNumericFunctions

    public String getNumericFunctions()

Specified by:
  `getNumericFunctions` in interface `net.hydromatic.avatica.Meta`

#### getStringFunctions

    public String getStringFunctions()

Specified by:
  `getStringFunctions` in interface `net.hydromatic.avatica.Meta`

#### getSystemFunctions

    public String getSystemFunctions()

Specified by:
  `getSystemFunctions` in interface `net.hydromatic.avatica.Meta`

#### getTimeDateFunctions

    public String getTimeDateFunctions()

Specified by:
  `getTimeDateFunctions` in interface `net.hydromatic.avatica.Meta`

#### getTables

    public ResultSet getTables(String catalog,
                      net.hydromatic.avatica.Meta.Pat schemaPattern,
                      net.hydromatic.avatica.Meta.Pat tableNamePattern,
                      List<String> typeList)

Specified by:
  `getTables` in interface `net.hydromatic.avatica.Meta`

#### getColumns

    public ResultSet getColumns(String catalog,
                       net.hydromatic.avatica.Meta.Pat schemaPattern,
                       net.hydromatic.avatica.Meta.Pat tableNamePattern,
                       net.hydromatic.avatica.Meta.Pat columnNamePattern)

Specified by:
  `getColumns` in interface `net.hydromatic.avatica.Meta`

#### getSchemas

    public ResultSet getSchemas(String catalog,
                       net.hydromatic.avatica.Meta.Pat schemaPattern)

Specified by:
  `getSchemas` in interface `net.hydromatic.avatica.Meta`

#### getCatalogs

    public ResultSet getCatalogs()

Specified by:
  `getCatalogs` in interface `net.hydromatic.avatica.Meta`

#### getTableTypes

    public ResultSet getTableTypes()

Specified by:
  `getTableTypes` in interface `net.hydromatic.avatica.Meta`

#### getProcedures

    public ResultSet getProcedures(String catalog,
                          net.hydromatic.avatica.Meta.Pat schemaPattern,
                          net.hydromatic.avatica.Meta.Pat procedureNamePattern)

Specified by:
  `getProcedures` in interface `net.hydromatic.avatica.Meta`

#### getProcedureColumns

    public ResultSet getProcedureColumns(String catalog,
                                net.hydromatic.avatica.Meta.Pat schemaPattern,
                                net.hydromatic.avatica.Meta.Pat procedureNamePattern,
                                net.hydromatic.avatica.Meta.Pat columnNamePattern)

Specified by:
  `getProcedureColumns` in interface `net.hydromatic.avatica.Meta`

#### getColumnPrivileges

    public ResultSet getColumnPrivileges(String catalog,
                                String schema,
                                String table,
                                net.hydromatic.avatica.Meta.Pat columnNamePattern)

Specified by:
  `getColumnPrivileges` in interface `net.hydromatic.avatica.Meta`

#### getTablePrivileges

    public ResultSet getTablePrivileges(String catalog,
                               net.hydromatic.avatica.Meta.Pat schemaPattern,
                               net.hydromatic.avatica.Meta.Pat tableNamePattern)

Specified by:
  `getTablePrivileges` in interface `net.hydromatic.avatica.Meta`

#### getBestRowIdentifier

    public ResultSet getBestRowIdentifier(String catalog,
                                 String schema,
                                 String table,
                                 int scope,
                                 boolean nullable)

Specified by:
  `getBestRowIdentifier` in interface `net.hydromatic.avatica.Meta`

#### getVersionColumns

    public ResultSet getVersionColumns(String catalog,
                              String schema,
                              String table)

Specified by:
  `getVersionColumns` in interface `net.hydromatic.avatica.Meta`

#### getPrimaryKeys

    public ResultSet getPrimaryKeys(String catalog,
                           String schema,
                           String table)

Specified by:
  `getPrimaryKeys` in interface `net.hydromatic.avatica.Meta`

#### getImportedKeys

    public ResultSet getImportedKeys(String catalog,
                            String schema,
                            String table)

Specified by:
  `getImportedKeys` in interface `net.hydromatic.avatica.Meta`

#### getExportedKeys

    public ResultSet getExportedKeys(String catalog,
                            String schema,
                            String table)

Specified by:
  `getExportedKeys` in interface `net.hydromatic.avatica.Meta`

#### getCrossReference

    public ResultSet getCrossReference(String parentCatalog,
                              String parentSchema,
                              String parentTable,
                              String foreignCatalog,
                              String foreignSchema,
                              String foreignTable)

Specified by:
  `getCrossReference` in interface `net.hydromatic.avatica.Meta`

#### getTypeInfo

    public ResultSet getTypeInfo()

Specified by:
  `getTypeInfo` in interface `net.hydromatic.avatica.Meta`

#### getIndexInfo

    public ResultSet getIndexInfo(String catalog,
                         String schema,
                         String table,
                         boolean unique,
                         boolean approximate)

Specified by:
  `getIndexInfo` in interface `net.hydromatic.avatica.Meta`

#### getUDTs

    public ResultSet getUDTs(String catalog,
                    net.hydromatic.avatica.Meta.Pat schemaPattern,
                    net.hydromatic.avatica.Meta.Pat typeNamePattern,
                    int[] types)

Specified by:
  `getUDTs` in interface `net.hydromatic.avatica.Meta`

#### getSuperTypes

    public ResultSet getSuperTypes(String catalog,
                          net.hydromatic.avatica.Meta.Pat schemaPattern,
                          net.hydromatic.avatica.Meta.Pat typeNamePattern)

Specified by:
  `getSuperTypes` in interface `net.hydromatic.avatica.Meta`

#### getSuperTables

    public ResultSet getSuperTables(String catalog,
                           net.hydromatic.avatica.Meta.Pat schemaPattern,
                           net.hydromatic.avatica.Meta.Pat tableNamePattern)

Specified by:
  `getSuperTables` in interface `net.hydromatic.avatica.Meta`

#### getAttributes

    public ResultSet getAttributes(String catalog,
                          net.hydromatic.avatica.Meta.Pat schemaPattern,
                          net.hydromatic.avatica.Meta.Pat typeNamePattern,
                          net.hydromatic.avatica.Meta.Pat attributeNamePattern)

Specified by:
  `getAttributes` in interface `net.hydromatic.avatica.Meta`

#### getClientInfoProperties

    public ResultSet getClientInfoProperties()

Specified by:
  `getClientInfoProperties` in interface `net.hydromatic.avatica.Meta`

#### getFunctions

    public ResultSet getFunctions(String catalog,
                         net.hydromatic.avatica.Meta.Pat schemaPattern,
                         net.hydromatic.avatica.Meta.Pat functionNamePattern)

Specified by:
  `getFunctions` in interface `net.hydromatic.avatica.Meta`

#### getFunctionColumns

    public ResultSet getFunctionColumns(String catalog,
                               net.hydromatic.avatica.Meta.Pat schemaPattern,
                               net.hydromatic.avatica.Meta.Pat functionNamePattern,
                               net.hydromatic.avatica.Meta.Pat columnNamePattern)

Specified by:
  `getFunctionColumns` in interface `net.hydromatic.avatica.Meta`

#### getPseudoColumns

    public ResultSet getPseudoColumns(String catalog,
                             net.hydromatic.avatica.Meta.Pat schemaPattern,
                             net.hydromatic.avatica.Meta.Pat tableNamePattern,
                             net.hydromatic.avatica.Meta.Pat columnNamePattern)

Specified by:
  `getPseudoColumns` in interface `net.hydromatic.avatica.Meta`

#### createCursor

    public net.hydromatic.avatica.Cursor createCursor(net.hydromatic.avatica.AvaticaResultSet resultSet)

Specified by:
  `createCursor` in interface `net.hydromatic.avatica.Meta`

#### prepare

    public net.hydromatic.avatica.AvaticaPrepareResult prepare(net.hydromatic.avatica.AvaticaStatement statement,
                                                      String sql)

Specified by:
  `prepare` in interface `net.hydromatic.avatica.Meta`