Module org.firebirdsql.jaybird
Package org.firebirdsql.jdbc

# Class DbMetadataMediator

java.lang.Object
org.firebirdsql.jdbc.DbMetadataMediator

@InternalApi public abstract class DbMetadataMediator extends Object
Provides access to the database connection for executing database metadata queries.

This class is internal API of Jaybird. Future versions may radically change, move, or make inaccessible this type.

Since:
  4.0
Author:
  Mark Rotteveel

- ## Nested Class Summary

  Nested Classes
  Modifier and Type
  Class
  Description
  `static final class`
  `DbMetadataMediator.MetadataQuery`
  Holder class for query text and parameters.

- ## Constructor Summary

  Constructors
  Constructor
  Description
  `DbMetadataMediator()`

- ## Method Summary

  Modifier and Type
  Method
  Description
  `abstract Collection<String>`
  `getClientInfoPropertyNames()`
  `abstract FirebirdSupportInfo`
  `getFirebirdSupportInfo()`
  Provides the `FirebirdSupportInfo` for the connection of the associated database metadata.
  `abstract GDSType`
  `getGDSType()`
  `abstract FBDatabaseMetaData`
  `getMetaData()`
  A `FBDatabaseMetaData` instance of the connection that created this mediator.
  `abstract OdsVersion`
  `getOdsVersion()`
  `abstract boolean`
  `isUseCatalogAsPackage()`
  `static RowDescriptorBuilder`
  `newRowDescriptorBuilder(int size)`
  `abstract ResultSet`
  `performMetaDataQuery(DbMetadataMediator.MetadataQuery metadataQuery)`
  Executes the provided metadata query on the connection of the associated database metadata.

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

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

- ## Constructor Details

  - ### DbMetadataMediator

    public DbMetadataMediator()

- ## Method Details

  - ### newRowDescriptorBuilder

    public static RowDescriptorBuilder newRowDescriptorBuilder(int size)

  - ### getFirebirdSupportInfo

    public abstract FirebirdSupportInfo getFirebirdSupportInfo()
    Provides the `FirebirdSupportInfo` for the connection of the associated database metadata.
    Returns:
      Firebird support info object.

  - ### performMetaDataQuery

    public abstract ResultSet performMetaDataQuery(DbMetadataMediator.MetadataQuery metadataQuery) throws SQLException
    Executes the provided metadata query on the connection of the associated database metadata.
    Parameters:
      `metadataQuery` - Result set producing query to execute
    Returns:
      Result set of the query
    Throws:
      `SQLException` - For failures to execute the query

  - ### getMetaData

    public abstract FBDatabaseMetaData getMetaData()
    A `FBDatabaseMetaData` instance of the connection that created this mediator.
    Returns:
      metadata instance

  - ### getGDSType

    public abstract GDSType getGDSType()
    Returns:
      GDSType of the current connection

  - ### isUseCatalogAsPackage

    public abstract boolean isUseCatalogAsPackage()
    Returns:
      value of the `useCatalogAsPackage` connection property if packages are supported, otherwise `false`
    Since:
      6

  - ### getClientInfoPropertyNames

    public abstract Collection<String> getClientInfoPropertyNames()
    Returns:
      the client info properties to report for `FBDatabaseMetaData.getClientInfoProperties()`.
    Since:
      6

  - ### getOdsVersion

    public abstract OdsVersion getOdsVersion()
    Returns:
      the ODS version of the database
    Since:
      6