public class BasicJDBCMetadataProvider extends java.lang.Object implements JDBCMetadataProvider
A basic implementation of the JDBCMetadataProvider
interface.
Constructor and Description |
---|
BasicJDBCMetadataProvider()
Creates a new
BasicJDBCMetadataProvider instance. |
Modifier and Type | Method and Description |
---|---|
MetadataItem |
createCatalogItem(java.lang.String name)
Creates a catalog item.
|
MetadataItem |
createColumnItem(java.lang.String name,
java.lang.Class type,
java.lang.String typeName,
java.lang.String description)
Creates a column item.
|
MetadataItem |
createColumnItem(java.lang.String name,
int jdbcType,
java.lang.String typeName,
int precision,
int scale,
java.lang.String description)
Creates a column item.
|
MetadataItem |
createSchemaItem(java.lang.String name)
Creates a schema item.
|
MetadataItem |
createTableItem(java.lang.String name)
Creates a table item.
|
protected MetadataItem[] |
getCatalogs()
Returns a list of catalog items.
|
protected MetadataItem[] |
getColumns(java.lang.String catalog,
java.lang.String schema,
java.lang.String table)
Returns a list of column items.
|
JDBCContext |
getContext()
Returns the
JDBCContext . |
MetadataItem[] |
getMetadata(MetadataItem[] path)
Returns a list of
MetadataItem objects that corresponds to the
given path. |
protected ProcedureMetadata |
getProcedureMetadata(java.lang.String catalog,
java.lang.String schema,
java.lang.String procedure) |
protected MetadataItem[] |
getProcedures(java.lang.String catalog,
java.lang.String schema) |
protected MetadataItem[] |
getSchemas(java.lang.String catalog)
Returns a list of schema items.
|
protected MetadataItem[] |
getTableAliases(java.lang.String catalog,
java.lang.String schema) |
protected MetadataItem[] |
getTables(java.lang.String catalog,
java.lang.String schema)
Returns a list of table items.
|
void |
setContext(JDBCContext context)
Sets the
JDBCContext . |
static MetadataItem[] |
sortMetadataItemsByName(MetadataItem[] items) |
java.lang.Class |
toJavaType(int jdbcType,
java.lang.String typeName,
int precision,
int scale)
Converts a JDBC type to a Java type.
|
int |
toJDBCType(java.lang.Class c)
Converts a Java type to a JDBC type.
|
protected void |
verifyCatalog(java.sql.DatabaseMetaData dbmd,
java.lang.String catalog) |
protected void |
verifySchema(java.sql.DatabaseMetaData dbmd,
java.lang.String catalog,
java.lang.String schema) |
protected void |
verifyTable(java.sql.DatabaseMetaData dbmd,
java.lang.String catalog,
java.lang.String schema,
java.lang.String table) |
public BasicJDBCMetadataProvider()
BasicJDBCMetadataProvider
instance.public void setContext(JDBCContext context)
JDBCMetadataProvider
JDBCContext
.setContext
in interface JDBCMetadataProvider
context
- JDBCContextpublic JDBCContext getContext()
JDBCContext
.JDBCContext
instancepublic MetadataItem[] getMetadata(MetadataItem[] path) throws InvalidMetadataPath, java.sql.SQLException
JDBCMetadataProvider
MetadataItem
objects that corresponds to the
given path.getMetadata
in interface JDBCMetadataProvider
path
- a path of MetadataItem
objects.MetadataItem
objects.InvalidMetadataPath
- if the given path is invalidjava.sql.SQLException
- if a database error occursprotected MetadataItem[] getCatalogs() throws InvalidMetadataPath, java.sql.SQLException
InvalidMetadataPath
- if the catalog level is not supportedjava.sql.SQLException
- if a database error occursprotected MetadataItem[] getSchemas(java.lang.String catalog) throws InvalidMetadataPath, java.sql.SQLException
catalog
- a catalog name, may be ""InvalidMetadataPath
- if the catalog is invalid or if the schema
level is not supportedjava.sql.SQLException
- if a database error occursprotected MetadataItem[] getTables(java.lang.String catalog, java.lang.String schema) throws InvalidMetadataPath, java.sql.SQLException
catalog
- a catalog name, may be ""schema
- a schema name, may be ""InvalidMetadataPath
- if the given catalog or schema is invalidjava.sql.SQLException
- if a database error occursprotected MetadataItem[] getTableAliases(java.lang.String catalog, java.lang.String schema)
catalog
- catalogschema
- schemaprotected MetadataItem[] getColumns(java.lang.String catalog, java.lang.String schema, java.lang.String table) throws InvalidMetadataPath, java.sql.SQLException
catalog
- a catalog name, may be ""schema
- a schema name, may be ""table
- a table name, may be ""InvalidMetadataPath
- if the given catalog, schema or table is
invalidjava.sql.SQLException
- if a database error occursprotected MetadataItem[] getProcedures(java.lang.String catalog, java.lang.String schema) throws java.sql.SQLException
catalog
- catalogschema
- schemajava.sql.SQLException
- SQLExceptionprotected ProcedureMetadata getProcedureMetadata(java.lang.String catalog, java.lang.String schema, java.lang.String procedure) throws java.sql.SQLException
catalog
- catalogschema
- schemaprocedure
- procedurejava.sql.SQLException
- SQLExceptionprotected void verifyCatalog(java.sql.DatabaseMetaData dbmd, java.lang.String catalog) throws InvalidMetadataPath, java.sql.SQLException
dbmd
- dbmdcatalog
- catalogjava.sql.SQLException
- SQLExeceptionInvalidMetadataPath
- InvalidMetadataPathprotected void verifySchema(java.sql.DatabaseMetaData dbmd, java.lang.String catalog, java.lang.String schema) throws InvalidMetadataPath, java.sql.SQLException
dbmd
- dbmdcatalog
- catalogschema
- schemajava.sql.SQLException
- SQLExeceptionInvalidMetadataPath
- InvalidMetadataPathprotected void verifyTable(java.sql.DatabaseMetaData dbmd, java.lang.String catalog, java.lang.String schema, java.lang.String table) throws InvalidMetadataPath, java.sql.SQLException
dbmd
- dbmdcatalog
- catalogschema
- schematable
- tablejava.sql.SQLException
- SQLExeceptionInvalidMetadataPath
- InvalidMetadataPathpublic MetadataItem createCatalogItem(java.lang.String name)
name
- a catalog namepublic MetadataItem createSchemaItem(java.lang.String name)
name
- a schema namepublic MetadataItem createTableItem(java.lang.String name)
name
- a table namepublic MetadataItem createColumnItem(java.lang.String name, java.lang.Class type, java.lang.String typeName, java.lang.String description)
name
- a column nametype
- a column typetypeName
- data source dependent type namedescription
- comment describing columnBasicJDBCMetadataProvider.toJavaType(int, java.lang.String, int, int)
public MetadataItem createColumnItem(java.lang.String name, int jdbcType, java.lang.String typeName, int precision, int scale, java.lang.String description)
name
- a column namejdbcType
- a JDBC typetypeName
- data source dependent type nameprecision
- a precision, used for numeric typesscale
- a scale, used for numeric typesdescription
- comment describing columnBasicJDBCMetadataProvider.toJavaType(int, java.lang.String, int, int)
public java.lang.Class toJavaType(int jdbcType, java.lang.String typeName, int precision, int scale)
JDBCMetadataProvider
The following Java types are supported:
String
Integer
Long
Float
Double
com.spotfire.ws.dat.Date
com.spotfire.ws.dat.Time
com.spotfire.ws.dat.DateTime
com.spotfire.ws.dat.Clob
com.spotfire.ws.dat.Blob
toJavaType
in interface JDBCMetadataProvider
jdbcType
- jdbcTypetypeName
- typeNameprecision
- precisionscale
- scaleTypes
public int toJDBCType(java.lang.Class c)
JDBCMetadataProvider
The following Java types must be supported:
String
Integer
Long
Float
Double
com.spotfire.ws.dat.Date
com.spotfire.ws.dat.Time
com.spotfire.ws.dat.DateTime
com.spotfire.ws.dat.Clob
com.spotfire.ws.dat.Blob
toJDBCType
in interface JDBCMetadataProvider
c
- a Java typeTypes
public static MetadataItem[] sortMetadataItemsByName(MetadataItem[] items)
items
- itemsCopyright © 2000-2020 TIBCO Software Inc. All Rights Reserved.