/*
 * Hibernate, Relational Persistence for Idiomatic Java
 *
 * License: GNU Lesser General Public License (LGPL), version 2.1 or later.
 * See the lgpl.txt file in the root directory or <http://www.gnu.org/licenses/lgpl-2.1.html>.
 */
package org.hibernate.engine.jdbc.dialect.spi;

Exposes information about the database and JDBC driver that can be used in resolving the appropriate Dialect to use.

The information here mimics part of the JDBC DatabaseMetaData contract, specifically the portions about database and driver names and versions.
Author:Steve Ebersole
/** * Exposes information about the database and JDBC driver that can be used in resolving the appropriate Dialect * to use. * <p/> * The information here mimics part of the JDBC {@link java.sql.DatabaseMetaData} contract, specifically the portions * about database and driver names and versions. * * @author Steve Ebersole */
public interface DialectResolutionInfo {
Constant used to indicate that no version is defined
/** * Constant used to indicate that no version is defined */
public static final int NO_VERSION = -9999;
Obtain access to the database name, as returned from DatabaseMetaData.getDatabaseProductName() for the target database
See Also:
Returns:The database name
/** * Obtain access to the database name, as returned from {@link java.sql.DatabaseMetaData#getDatabaseProductName()} * for the target database * * @return The database name * * @see java.sql.DatabaseMetaData#getDatabaseProductName() */
public String getDatabaseName();
Obtain access to the database major version, as returned from DatabaseMetaData.getDatabaseMajorVersion() for the target database.
See Also:
Returns:The database major version, or -9999 to indicate "no version information"
/** * Obtain access to the database major version, as returned from * {@link java.sql.DatabaseMetaData#getDatabaseMajorVersion()} for the target database. * * @return The database major version, or {@value #NO_VERSION} to indicate "no version information" * * @see java.sql.DatabaseMetaData#getDatabaseMajorVersion() */
public int getDatabaseMajorVersion();
Obtain access to the database minor version, as returned from DatabaseMetaData.getDatabaseMinorVersion() for the target database.
See Also:
Returns:The database minor version, or -9999 to indicate "no version information"
/** * Obtain access to the database minor version, as returned from * {@link java.sql.DatabaseMetaData#getDatabaseMinorVersion()} for the target database. * * @return The database minor version, or {@value #NO_VERSION} to indicate "no version information" * * @see java.sql.DatabaseMetaData#getDatabaseMinorVersion() */
public int getDatabaseMinorVersion();
Obtain access to the name of the JDBC driver, as returned from DatabaseMetaData.getDriverName() for the target database
See Also:
Returns:The JDBC driver name
/** * Obtain access to the name of the JDBC driver, as returned from {@link java.sql.DatabaseMetaData#getDriverName()} * for the target database * * @return The JDBC driver name * * @see java.sql.DatabaseMetaData#getDriverName() */
public String getDriverName();
Obtain access to the major version of the JDBC driver, as returned from DatabaseMetaData.getDriverMajorVersion() ()} for the target database.
See Also:
Returns:The JDBC driver major version, or -9999 to indicate "no version information"
/** * Obtain access to the major version of the JDBC driver, as returned from * {@link java.sql.DatabaseMetaData#getDriverMajorVersion()} ()} for the target database. * * @return The JDBC driver major version, or {@value #NO_VERSION} to indicate "no version information" * * @see java.sql.DatabaseMetaData#getDriverMajorVersion() */
public int getDriverMajorVersion();
Obtain access to the minor version of the JDBC driver, as returned from DatabaseMetaData.getDriverMinorVersion() for the target database.
See Also:
Returns:The JDBC driver minor version, or -9999 to indicate "no version information"
/** * Obtain access to the minor version of the JDBC driver, as returned from * {@link java.sql.DatabaseMetaData#getDriverMinorVersion()} for the target database. * * @return The JDBC driver minor version, or {@value #NO_VERSION} to indicate "no version information" * * @see java.sql.DatabaseMetaData#getDriverMinorVersion() */
public int getDriverMinorVersion(); }