## com.mysql.jdbc
Class CallableStatement.CallableStatementParamInfoJDBC3

    java.lang.Object
      com.mysql.jdbc.CallableStatement.CallableStatementParamInfo
          com.mysql.jdbc.CallableStatement.CallableStatementParamInfoJDBC3

All Implemented Interfaces:
  java.sql.ParameterMetaData, java.sql.Wrapper

Enclosing class:
  CallableStatement

    protected class CallableStatement.CallableStatementParamInfoJDBC3

extends CallableStatement.CallableStatementParamInfo
implements java.sql.ParameterMetaData

Can't implement this directly, as then you can't use callable statements on JDK-1.3.1, which unfortunately isn't EOL'd yet, and still present quite a bit out there in the wild (Websphere, FreeBSD, anyone?)

Field Summary

Fields inherited from class com.mysql.jdbc.CallableStatement.CallableStatementParamInfo
`catalogInUse, isFunctionCall, isReadOnlySafeChecked, isReadOnlySafeProcedure, nativeSql, numParameters, parameterList, parameterMap`

Fields inherited from interface java.sql.ParameterMetaData
`parameterModeIn, parameterModeInOut, parameterModeOut, parameterModeUnknown, parameterNoNulls, parameterNullable, parameterNullableUnknown`

Constructor Summary
`CallableStatement.CallableStatementParamInfoJDBC3(CallableStatement.CallableStatementParamInfo paramInfo)`
`CallableStatement.CallableStatementParamInfoJDBC3(java.sql.ResultSet paramTypesRs)`

Method Summary
`boolean` `isWrapperFor(java.lang.Class<?> iface)` Returns true if this either implements the interface argument or is directly or indirectly a wrapper for an object that does.
`java.lang.Object` `unwrap(java.lang.Class<?> iface)` Returns an object that implements the given interface to allow access to non-standard methods, or standard methods not exposed by the proxy.

Methods inherited from class com.mysql.jdbc.CallableStatement.CallableStatementParamInfo
`checkBounds, clone, getParameter, getParameter, getParameterClassName, getParameterCount, getParameterMode, getParameterType, getParameterTypeName, getPrecision, getScale, isNullable, isSigned, iterator, numberOfParameters`

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

Methods inherited from interface java.sql.ParameterMetaData
`getParameterClassName, getParameterCount, getParameterMode, getParameterType, getParameterTypeName, getPrecision, getScale, isNullable, isSigned`

Methods inherited from interface java.sql.Wrapper
`unwrap`

Constructor Detail

### CallableStatement.CallableStatementParamInfoJDBC3

    CallableStatement.CallableStatementParamInfoJDBC3(java.sql.ResultSet paramTypesRs)
                                                throws java.sql.SQLException

Throws:
  `java.sql.SQLException`

### CallableStatement.CallableStatementParamInfoJDBC3

    public CallableStatement.CallableStatementParamInfoJDBC3(CallableStatement.CallableStatementParamInfo paramInfo)

Method Detail

### isWrapperFor

    public boolean isWrapperFor(java.lang.Class<?> iface)
                         throws java.sql.SQLException

  Returns true if this either implements the interface argument or is directly or indirectly a wrapper for an object that does. Returns false otherwise. If this implements the interface then return true, else if this is a wrapper then return the result of recursively calling `isWrapperFor` on the wrapped object. If this does not implement the interface and is not a wrapper, return false. This method should be implemented as a low-cost operation compared to `unwrap` so that callers can use this method to avoid expensive `unwrap` calls that may fail. If this method returns true then calling `unwrap` with the same argument should succeed.

  Specified by:
    `isWrapperFor` in interface `java.sql.Wrapper`
  Parameters:
    `interfaces` - a Class defining an interface.
  Returns:
    true if this implements the interface or directly or indirectly wraps an object that does.
  Throws:
    `java.sql.SQLException` - if an error occurs while determining whether this is a wrapper for an object with the given interface.
  Since:
    1.6

### unwrap

    public java.lang.Object unwrap(java.lang.Class<?> iface)
                            throws java.sql.SQLException

  Returns an object that implements the given interface to allow access to non-standard methods, or standard methods not exposed by the proxy. The result may be either the object found to implement the interface or a proxy for that object. If the receiver implements the interface then that is the object. If the receiver is a wrapper and the wrapped object implements the interface then that is the object. Otherwise the object is the result of calling `unwrap` recursively on the wrapped object. If the receiver is not a wrapper and does not implement the interface, then an `SQLException` is thrown.

  Parameters:
    `iface` - A Class defining an interface that the result must implement.
  Returns:
    an object that implements the interface. May be a proxy for the actual implementing object.
  Throws:
    `java.sql.SQLException` - If no object found that implements the interface
  Since:
    1.6