db-derby-commits mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From davi...@apache.org
Subject svn commit: r421460 - in /db/derby/code/trunk/java/engine/org/apache/derby/iapi/jdbc: EngineParameterMetaData.java EnginePreparedStatement.java
Date Wed, 12 Jul 2006 23:29:15 GMT
Author: davidvc
Date: Wed Jul 12 16:29:15 2006
New Revision: 421460

URL: http://svn.apache.org/viewvc?rev=421460&view=rev
Log:
DERBY-1015: Added new interfaces

Added:
    db/derby/code/trunk/java/engine/org/apache/derby/iapi/jdbc/EngineParameterMetaData.java
  (with props)
    db/derby/code/trunk/java/engine/org/apache/derby/iapi/jdbc/EnginePreparedStatement.java
  (with props)

Added: db/derby/code/trunk/java/engine/org/apache/derby/iapi/jdbc/EngineParameterMetaData.java
URL: http://svn.apache.org/viewvc/db/derby/code/trunk/java/engine/org/apache/derby/iapi/jdbc/EngineParameterMetaData.java?rev=421460&view=auto
==============================================================================
--- db/derby/code/trunk/java/engine/org/apache/derby/iapi/jdbc/EngineParameterMetaData.java
(added)
+++ db/derby/code/trunk/java/engine/org/apache/derby/iapi/jdbc/EngineParameterMetaData.java
Wed Jul 12 16:29:15 2006
@@ -0,0 +1,127 @@
+/*
+ 
+ Derby - Class org.apache.derby.iapi.jdbc.EngineParameterMetaData
+ 
+ Copyright 2006 The Apache Software Foundation or its licensors, as applicable.
+ 
+ Licensed under the Apache License, Version 2.0 (the "License");
+ you may not use this file except in compliance with the License.
+ You may obtain a copy of the License at
+ 
+ http://www.apache.org/licenses/LICENSE-2.0
+ 
+ Unless required by applicable law or agreed to in writing, software
+ distributed under the License is distributed on an "AS IS" BASIS,
+ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ See the License for the specific language governing permissions and
+ limitations under the License.
+ 
+ */
+package org.apache.derby.iapi.jdbc;
+
+import java.sql.SQLException;
+import java.sql.PreparedStatement;
+
+
+/**
+ * An internal api only, mainly for use in the network server. 
+ * 
+ * This interface imitates the ParameterMetaData interface from JDBC3.0
+ * We want to provide the ParameterMetaData functionality to JDKs before JDBC3.0. 
+ * org.apache.derby.iapi.jdbc.EnginePreparedStatement interface returns an object 
+ * of this type on a getEmbedParameterSetMetaData
+ * Once,JDK1.3 stops being supported, this interface can be removed and 
+ * instead the JDBC 3.0 Class ParameterMetaData can be used
+ */
+public interface EngineParameterMetaData  {
+    
+    /**
+     * Retrieves the number of parameters in the PreparedStatement object for which
+     * this ParameterMetaData object contains information.
+     *
+     * @return the number of parameters
+     */
+    public int getParameterCount();
+    
+    /**
+     * Retrieves whether null values are allowed in the designated parameter.
+     *
+     * @param param - the first parameter is 1, the second is 2, ...
+     * @return the nullability status of the given parameter; one of
+     * ParameterMetaData.parameterNoNulls, ParameterMetaData.parameterNullable, or
+     * ParameterMetaData.parameterNullableUnknown
+     * @exception SQLException if a database access error occurs
+     */
+    public int isNullable(int param) throws SQLException;
+    
+    /**
+     * Retrieves whether values for the designated parameter can be signed numbers.
+     *
+     * @param param - the first parameter is 1, the second is 2, ...
+     * @return true if it can be signed numbers
+     * @exception SQLException if a database access error occurs
+     */
+    public boolean isSigned(int param) throws SQLException;
+    
+    /**
+     * Retrieves the designated parameter's number of decimal digits.
+     *
+     * @param param - the first parameter is 1, the second is 2, ...
+     * @return precision
+     * @exception SQLException if a database access error occurs
+     */
+    public int getPrecision(int param) throws SQLException;        
+    
+    /**
+     * Retrieves the designated parameter's number of digits to right of the decimal point.
+     *
+     * @param param - the first parameter is 1, the second is 2, ...
+     * @return scale
+     * @exception SQLException if a database access error occurs
+     */
+    public int getScale(int param) throws SQLException;
+    /**
+     *
+     * Retrieves the designated parameter's SQL type.
+     *
+     * @param param - the first parameter is 1, the second is 2, ...
+     * @return SQL type from java.sql.Types
+     * @exception SQLException if a database access error occurs
+     */
+    public int getParameterType(int param) throws SQLException;
+    /**
+     *
+     * Retrieves the designated parameter's database-specific type name.
+     *
+     * @param param - the first parameter is 1, the second is 2, ...
+     * @return type the name used by the database. If the parameter
+     * type is a user-defined type, then a fully-qualified type name is returned.
+     * @exception SQLException if a database access error occurs
+     */
+    public String getParameterTypeName(int param) throws SQLException;
+    
+    /**
+     * Retrieves the fully-qualified name of the Java class whose instances should be
+     * passed to the method PreparedStatement.setObject.
+     *
+     * @param param - the first parameter is 1, the second is 2, ...
+     * @return the fully-qualified name of the class in the Java
+     * programming language that would be used by the method
+     * PreparedStatement.setObject to set the value in the specified parameter.
+     * This is the class name used for custom mapping.
+     * @exception SQLException if a database access error occurs
+     */
+    public String getParameterClassName(int param) throws SQLException;
+    
+    /**
+     * Retrieves the designated parameter's mode.
+     *
+     * @param param - the first parameter is 1, the second is 2, ...
+     * @return mode of the parameter; one of ParameterMetaData.parameterModeIn,
+     * ParameterMetaData.parameterModeOut, or ParameterMetaData.parameterModeInOut
+     * ParameterMetaData.parameterModeUnknown.
+     * @exception SQLException if a database access error occurs
+     */
+    public int getParameterMode(int param) throws SQLException;
+    
+}

Propchange: db/derby/code/trunk/java/engine/org/apache/derby/iapi/jdbc/EngineParameterMetaData.java
------------------------------------------------------------------------------
    svn:eol-style = native

Added: db/derby/code/trunk/java/engine/org/apache/derby/iapi/jdbc/EnginePreparedStatement.java
URL: http://svn.apache.org/viewvc/db/derby/code/trunk/java/engine/org/apache/derby/iapi/jdbc/EnginePreparedStatement.java?rev=421460&view=auto
==============================================================================
--- db/derby/code/trunk/java/engine/org/apache/derby/iapi/jdbc/EnginePreparedStatement.java
(added)
+++ db/derby/code/trunk/java/engine/org/apache/derby/iapi/jdbc/EnginePreparedStatement.java
Wed Jul 12 16:29:15 2006
@@ -0,0 +1,49 @@
+/*
+ 
+ Derby - Class org.apache.derby.iapi.jdbc.EnginePreparedStatement
+ 
+ Copyright 2006 The Apache Software Foundation or its licensors, as applicable.
+ 
+ Licensed under the Apache License, Version 2.0 (the "License");
+ you may not use this file except in compliance with the License.
+ You may obtain a copy of the License at
+ 
+ http://www.apache.org/licenses/LICENSE-2.0
+ 
+ Unless required by applicable law or agreed to in writing, software
+ distributed under the License is distributed on an "AS IS" BASIS,
+ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ See the License for the specific language governing permissions and
+ limitations under the License.
+ 
+ */
+package org.apache.derby.iapi.jdbc;
+
+import java.sql.SQLException;
+import java.sql.PreparedStatement;
+
+/**
+ * Additional methods the embedded engine exposes on its 
+ * PreparedStatement object implementations. An internal api only, mainly 
+ * for the network server. Allows consistent interaction between embedded 
+ * PreparedStatement and Brokered PreparedStatements.
+ * (DERBY-1015)
+ */
+public interface EnginePreparedStatement extends PreparedStatement {
+    
+    /**
+     * Imitate the getParameterMetaData() that is in JDBC 3.0
+     * Once,JDK1.3 stops being supported, instead of returning EngineParameterMetaData
+     * the JDBC 3.0 class - ParameterMetaData can be used.
+     *
+     * Retrieves the number, types and properties of this PreparedStatement
+     * object's parameters.
+     *
+     * @return a EngineParameterMetaData object that contains information about the
+     * number, types and properties of this PreparedStatement object's parameters.
+     * @exception SQLException if a database access error occurs
+     */
+    public EngineParameterMetaData getEmbedParameterSetMetaData()
+        throws SQLException;
+    
+}

Propchange: db/derby/code/trunk/java/engine/org/apache/derby/iapi/jdbc/EnginePreparedStatement.java
------------------------------------------------------------------------------
    svn:eol-style = native



Mime
View raw message