## org.springframework.jdbc.core.metadata
Class PostgresCallMetaDataProvider

    java.lang.Object
      org.springframework.jdbc.core.metadata.GenericCallMetaDataProvider
          org.springframework.jdbc.core.metadata.PostgresCallMetaDataProvider

All Implemented Interfaces:
  CallMetaDataProvider

    public class PostgresCallMetaDataProvider

extends GenericCallMetaDataProvider

Oracle specific implementation for the `CallMetaDataProvider` interface. This class is intended for internal use by the Simple JDBC classes.

Since:
  2.5
Author:
  Thomas Risberg

Field Summary

Fields inherited from class org.springframework.jdbc.core.metadata.GenericCallMetaDataProvider
`logger`

Constructor Summary
`PostgresCallMetaDataProvider(DatabaseMetaData databaseMetaData)`

Method Summary
`boolean` `byPassReturnParameter(String parameterName)` Should we bypass the return parameter with the specified name.
`SqlParameter` `createDefaultOutParameter(String parameterName, CallParameterMetaData meta)` Create a default out parameter based on the provided meta data.
`int` `getRefCursorSqlType()` Get the `Types` type for columns that return resultsets as ref cursors if this feature is supported.
`boolean` `isRefCursorSupported()` Does this database support returning resultsets as ref cursors to be retrieved with `CallableStatement.getObject(int)` for the specified column.
`boolean` `isReturnResultSetSupported()` Does this database support returning resultsets that should be retrieved with the JDBC call `Statement.getResultSet()`
`String` `metaDataSchemaNameToUse(String schemaName)` Provide any modification of the schema name passed in to match the meta data currently used.

Methods inherited from class org.springframework.jdbc.core.metadata.GenericCallMetaDataProvider

`catalogNameToUse, createDefaultInOutParameter, createDefaultInParameter, getCallParameterMetaData, getUserName, initializeWithMetaData, initializeWithProcedureColumnMetaData, isProcedureColumnMetaDataUsed, isStoresLowerCaseIdentifiers, isStoresUpperCaseIdentifiers, isSupportsCatalogsInProcedureCalls, isSupportsSchemasInProcedureCalls, metaDataCatalogNameToUse, parameterNameToUse, procedureNameToUse, schemaNameToUse, setStoresLowerCaseIdentifiers, setStoresUpperCaseIdentifiers, setSupportsCatalogsInProcedureCalls, setSupportsSchemasInProcedureCalls`

Methods inherited from class java.lang.Object
`clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

Constructor Detail

### PostgresCallMetaDataProvider

    public PostgresCallMetaDataProvider(DatabaseMetaData databaseMetaData)
                                 throws SQLException

Throws:
  `SQLException`

Method Detail

### isReturnResultSetSupported

    public boolean isReturnResultSetSupported()

  Description copied from interface: `CallMetaDataProvider`
  Does this database support returning resultsets that should be retrieved with the JDBC call `Statement.getResultSet()`

  Specified by:
    `isReturnResultSetSupported` in interface `CallMetaDataProvider`
  Overrides:
    `isReturnResultSetSupported` in class `GenericCallMetaDataProvider`

### isRefCursorSupported

    public boolean isRefCursorSupported()

  Description copied from interface: `CallMetaDataProvider`
  Does this database support returning resultsets as ref cursors to be retrieved with `CallableStatement.getObject(int)` for the specified column.

  Specified by:
    `isRefCursorSupported` in interface `CallMetaDataProvider`
  Overrides:
    `isRefCursorSupported` in class `GenericCallMetaDataProvider`

### getRefCursorSqlType

    public int getRefCursorSqlType()

  Description copied from interface: `CallMetaDataProvider`
  Get the `Types` type for columns that return resultsets as ref cursors if this feature is supported.

  Specified by:
    `getRefCursorSqlType` in interface `CallMetaDataProvider`
  Overrides:
    `getRefCursorSqlType` in class `GenericCallMetaDataProvider`

### metaDataSchemaNameToUse

    public String metaDataSchemaNameToUse(String schemaName)

  Description copied from interface: `CallMetaDataProvider`
  Provide any modification of the schema name passed in to match the meta data currently used. The reyurned value will be used for meta data lookups. This could include alterig the case used or providing a base schema if mone provided.

  Specified by:
    `metaDataSchemaNameToUse` in interface `CallMetaDataProvider`
  Overrides:
    `metaDataSchemaNameToUse` in class `GenericCallMetaDataProvider`

### createDefaultOutParameter

    public SqlParameter createDefaultOutParameter(String parameterName,
                                                  CallParameterMetaData meta)

  Description copied from interface: `CallMetaDataProvider`
  Create a default out parameter based on the provided meta data. This is used when no explicit parameter declaration has been made.

  Specified by:
    `createDefaultOutParameter` in interface `CallMetaDataProvider`
  Overrides:
    `createDefaultOutParameter` in class `GenericCallMetaDataProvider`
  Parameters:
    `parameterName` - the name of the parameter
    `meta` - meta data used for this call
  Returns:
    the configured SqlOutParameter

### byPassReturnParameter

    public boolean byPassReturnParameter(String parameterName)

  Description copied from interface: `CallMetaDataProvider`
  Should we bypass the return parameter with the specified name. This allows the database specific implementation to skip the processing for specific results returned by the database call.

  Specified by:
    `byPassReturnParameter` in interface `CallMetaDataProvider`
  Overrides:
    `byPassReturnParameter` in class `GenericCallMetaDataProvider`