Return-Path: Delivered-To: apmail-db-derby-commits-archive@www.apache.org Received: (qmail 23038 invoked from network); 28 Dec 2005 17:36:06 -0000 Received: from hermes.apache.org (HELO mail.apache.org) (209.237.227.199) by minotaur.apache.org with SMTP; 28 Dec 2005 17:36:06 -0000 Received: (qmail 34543 invoked by uid 500); 28 Dec 2005 17:36:05 -0000 Delivered-To: apmail-db-derby-commits-archive@db.apache.org Received: (qmail 34466 invoked by uid 500); 28 Dec 2005 17:36:03 -0000 Mailing-List: contact derby-commits-help@db.apache.org; run by ezmlm Precedence: bulk list-help: list-unsubscribe: List-Post: Reply-To: "Derby Development" List-Id: Delivered-To: mailing list derby-commits@db.apache.org Received: (qmail 34454 invoked by uid 99); 28 Dec 2005 17:36:02 -0000 Received: from asf.osuosl.org (HELO asf.osuosl.org) (140.211.166.49) by apache.org (qpsmtpd/0.29) with ESMTP; Wed, 28 Dec 2005 09:36:02 -0800 X-ASF-Spam-Status: No, hits=-9.4 required=10.0 tests=ALL_TRUSTED,NO_REAL_NAME X-Spam-Check-By: apache.org Received: from [209.237.227.194] (HELO minotaur.apache.org) (209.237.227.194) by apache.org (qpsmtpd/0.29) with SMTP; Wed, 28 Dec 2005 09:36:01 -0800 Received: (qmail 22904 invoked by uid 65534); 28 Dec 2005 17:35:41 -0000 Message-ID: <20051228173541.22902.qmail@minotaur.apache.org> Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit Subject: svn commit: r359572 - in /db/derby/code/trunk/java/engine/org/apache/derby: iapi/sql/ impl/jdbc/ impl/sql/ impl/sql/execute/ Date: Wed, 28 Dec 2005 17:35:38 -0000 To: derby-commits@db.apache.org From: djd@apache.org X-Mailer: svnmailer-1.0.5 X-Virus-Checked: Checked by ClamAV on apache.org X-Spam-Rating: minotaur.apache.org 1.6.2 0/1000/N Author: djd Date: Wed Dec 28 09:35:31 2005 New Revision: 359572 URL: http://svn.apache.org/viewcvs?rev=359572&view=rev Log: DERBY-776 ENsure some calls to DataValueDescriptor.setValue(Object) are made through the UserDataValue interface as a step towards removing the DataValueDescriptor.setValue(Object) method. Use the setBigDecimal methods in some cases for JDBC update/setBigDecimal methods. Modified: db/derby/code/trunk/java/engine/org/apache/derby/iapi/sql/ParameterValueSet.java db/derby/code/trunk/java/engine/org/apache/derby/impl/jdbc/EmbedCallableStatement.java db/derby/code/trunk/java/engine/org/apache/derby/impl/jdbc/EmbedCallableStatement20.java db/derby/code/trunk/java/engine/org/apache/derby/impl/jdbc/EmbedResultSet.java db/derby/code/trunk/java/engine/org/apache/derby/impl/jdbc/EmbedResultSet20.java db/derby/code/trunk/java/engine/org/apache/derby/impl/sql/GenericParameterValueSet.java db/derby/code/trunk/java/engine/org/apache/derby/impl/sql/execute/AggregateSortObserver.java db/derby/code/trunk/java/engine/org/apache/derby/impl/sql/execute/GenericAggregator.java Modified: db/derby/code/trunk/java/engine/org/apache/derby/iapi/sql/ParameterValueSet.java URL: http://svn.apache.org/viewcvs/db/derby/code/trunk/java/engine/org/apache/derby/iapi/sql/ParameterValueSet.java?rev=359572&r1=359571&r2=359572&view=diff ============================================================================== --- db/derby/code/trunk/java/engine/org/apache/derby/iapi/sql/ParameterValueSet.java (original) +++ db/derby/code/trunk/java/engine/org/apache/derby/iapi/sql/ParameterValueSet.java Wed Dec 28 09:35:31 2005 @@ -84,25 +84,6 @@ void registerOutParameter(int parameterIndex, int sqlType, int scale) throws StandardException; - - /** - * Get the value of a parameter as a Java object. - * - *

This method returns a Java object whose type coresponds to the SQL - * type that was registered for this parameter using registerOutParameter. - * - *

Note that this method may be used to read - * datatabase-specific, abstract data types. This is done by - * specifying a targetSqlType of java.sql.types.OTHER, which - * allows the driver to return a database-specific Java type. - * - * @param parameterIndex The first parameter is 1, the second is 2, ... - * @return A java.lang.Object holding the OUT parameter value. - * @exception StandardException if a database-access error occurs. - * @see java.sql.Types - */ - Object getObject(int parameterIndex) throws StandardException; - ////////////////////////////////////////////////////////////////// // // MISC STATEMENT @@ -147,7 +128,7 @@ public DataValueDescriptor getParameterForSet( int position ) throws StandardException; /** - Set the value of this parameter to the passed in Object. + Set the value of this user defined parameter to the passed in Object. @return The parameter at the given position. @exception StandardException Thrown on error Modified: db/derby/code/trunk/java/engine/org/apache/derby/impl/jdbc/EmbedCallableStatement.java URL: http://svn.apache.org/viewcvs/db/derby/code/trunk/java/engine/org/apache/derby/impl/jdbc/EmbedCallableStatement.java?rev=359572&r1=359571&r2=359572&view=diff ============================================================================== --- db/derby/code/trunk/java/engine/org/apache/derby/impl/jdbc/EmbedCallableStatement.java (original) +++ db/derby/code/trunk/java/engine/org/apache/derby/impl/jdbc/EmbedCallableStatement.java Wed Dec 28 09:35:31 2005 @@ -485,11 +485,11 @@ * @see CallableStatement#getObject * @exception SQLException NoOutputParameters thrown. */ - public Object getObject(int parameterIndex) throws SQLException + public final Object getObject(int parameterIndex) throws SQLException { checkStatus(); try { - Object v = getParms().getObject(parameterIndex-1); + Object v = getParms().getParameterForGet(parameterIndex-1).getObject(); wasNull = (v == null); return v; Modified: db/derby/code/trunk/java/engine/org/apache/derby/impl/jdbc/EmbedCallableStatement20.java URL: http://svn.apache.org/viewcvs/db/derby/code/trunk/java/engine/org/apache/derby/impl/jdbc/EmbedCallableStatement20.java?rev=359572&r1=359571&r2=359572&view=diff ============================================================================== --- db/derby/code/trunk/java/engine/org/apache/derby/impl/jdbc/EmbedCallableStatement20.java (original) +++ db/derby/code/trunk/java/engine/org/apache/derby/impl/jdbc/EmbedCallableStatement20.java Wed Dec 28 09:35:31 2005 @@ -1040,7 +1040,7 @@ checkStatus(); try { /* JDBC is one-based, DBMS is zero-based */ - getParms().getParameterForSet(parameterIndex - 1).setValue(x); + getParms().getParameterForSet(parameterIndex - 1).setBigDecimal(x); } catch (Throwable t) { throw EmbedResultSet.noStateChangeException(t); Modified: db/derby/code/trunk/java/engine/org/apache/derby/impl/jdbc/EmbedResultSet.java URL: http://svn.apache.org/viewcvs/db/derby/code/trunk/java/engine/org/apache/derby/impl/jdbc/EmbedResultSet.java?rev=359572&r1=359571&r2=359572&view=diff ============================================================================== --- db/derby/code/trunk/java/engine/org/apache/derby/impl/jdbc/EmbedResultSet.java (original) +++ db/derby/code/trunk/java/engine/org/apache/derby/impl/jdbc/EmbedResultSet.java Wed Dec 28 09:35:31 2005 @@ -41,6 +41,7 @@ import org.apache.derby.iapi.sql.execute.CursorActivation; import org.apache.derby.iapi.types.DataValueDescriptor; +import org.apache.derby.iapi.types.UserDataValue; import org.apache.derby.iapi.types.VariableSizeDataValue; import org.apache.derby.iapi.sql.ResultDescription; import org.apache.derby.iapi.services.io.StreamStorable; @@ -2718,7 +2719,7 @@ int colType = getColumnType(columnIndex); if (colType == org.apache.derby.iapi.reference.JDBC20Translation.SQL_TYPES_JAVA_OBJECT) { try { - getDVDforColumnToBeUpdated(columnIndex, "updateObject").setValue(x); + ((UserDataValue) getDVDforColumnToBeUpdated(columnIndex, "updateObject")).setValue(x); return; } catch (StandardException t) { throw noStateChangeException(t); Modified: db/derby/code/trunk/java/engine/org/apache/derby/impl/jdbc/EmbedResultSet20.java URL: http://svn.apache.org/viewcvs/db/derby/code/trunk/java/engine/org/apache/derby/impl/jdbc/EmbedResultSet20.java?rev=359572&r1=359571&r2=359572&view=diff ============================================================================== --- db/derby/code/trunk/java/engine/org/apache/derby/impl/jdbc/EmbedResultSet20.java (original) +++ db/derby/code/trunk/java/engine/org/apache/derby/impl/jdbc/EmbedResultSet20.java Wed Dec 28 09:35:31 2005 @@ -167,7 +167,7 @@ public void updateBigDecimal(int columnIndex, BigDecimal x) throws SQLException { try { - getDVDforColumnToBeUpdated(columnIndex, "updateBigDecimal").setValue(x); + getDVDforColumnToBeUpdated(columnIndex, "updateBigDecimal").setBigDecimal(x); } catch (StandardException t) { throw noStateChangeException(t); } Modified: db/derby/code/trunk/java/engine/org/apache/derby/impl/sql/GenericParameterValueSet.java URL: http://svn.apache.org/viewcvs/db/derby/code/trunk/java/engine/org/apache/derby/impl/sql/GenericParameterValueSet.java?rev=359572&r1=359571&r2=359572&view=diff ============================================================================== --- db/derby/code/trunk/java/engine/org/apache/derby/impl/sql/GenericParameterValueSet.java (original) +++ db/derby/code/trunk/java/engine/org/apache/derby/impl/sql/GenericParameterValueSet.java Wed Dec 28 09:35:31 2005 @@ -29,6 +29,7 @@ import org.apache.derby.iapi.types.DataTypeDescriptor; import org.apache.derby.iapi.types.DataValueFactory; import org.apache.derby.iapi.types.DataValueDescriptor; +import org.apache.derby.iapi.types.UserDataValue; import org.apache.derby.iapi.reference.SQLState; @@ -197,7 +198,7 @@ public void setParameterAsObject(int position, Object value) throws StandardException { - DataValueDescriptor dvd = getParameterForSet(position); + UserDataValue dvd = (UserDataValue) getParameterForSet(position); GenericParameter gp = parms[position]; if (value != null && (gp.jdbcTypeId == Types.OTHER || gp.jdbcTypeId == org.apache.derby.iapi.reference.JDBC20Translation.SQL_TYPES_JAVA_OBJECT)) { @@ -396,29 +397,6 @@ { checkPosition(parameterIndex); parms[parameterIndex].setOutParameter(sqlType, scale); - } - - /** - * Get the value of a parameter as a Java object. - * - *

This method returns a Java object whose type coresponds to the SQL - * type that was registered for this parameter using registerOutParameter. - * - *

Note that this method may be used to read - * datatabase-specific, abstract data types. This is done by - * specifying a targetSqlType of java.sql.types.OTHER, which - * allows the driver to return a database-specific Java type. - * - * @param parameterIndex The first parameter is 1, the second is 2, ... - * @return A java.lang.Object holding the OUT parameter value. - * @exception StandardException if a database-access error occurs. - * @see Types - */ - public Object getObject(int parameterIndex) throws StandardException - { - DataValueDescriptor dvd = getParameterForGet(parameterIndex); - - return dvd.getObject(); } /** Modified: db/derby/code/trunk/java/engine/org/apache/derby/impl/sql/execute/AggregateSortObserver.java URL: http://svn.apache.org/viewcvs/db/derby/code/trunk/java/engine/org/apache/derby/impl/sql/execute/AggregateSortObserver.java?rev=359572&r1=359571&r2=359572&view=diff ============================================================================== --- db/derby/code/trunk/java/engine/org/apache/derby/impl/sql/execute/AggregateSortObserver.java (original) +++ db/derby/code/trunk/java/engine/org/apache/derby/impl/sql/execute/AggregateSortObserver.java Wed Dec 28 09:35:31 2005 @@ -130,11 +130,10 @@ if (aggsToInitialize.length > 0 && ((Storable)returnRow[firstAggregatorColumn]).isNull()) { - UserDataValue wrapper; for (int i = 0; i < aggsToInitialize.length; i++) { GenericAggregator aggregator = aggsToInitialize[i]; - wrapper = ((UserDataValue)returnRow[aggregator.aggregatorColumnId]); + UserDataValue wrapper = ((UserDataValue)returnRow[aggregator.aggregatorColumnId]); if (SanityManager.DEBUG) { if (!wrapper.isNull()) Modified: db/derby/code/trunk/java/engine/org/apache/derby/impl/sql/execute/GenericAggregator.java URL: http://svn.apache.org/viewcvs/db/derby/code/trunk/java/engine/org/apache/derby/impl/sql/execute/GenericAggregator.java?rev=359572&r1=359571&r2=359572&view=diff ============================================================================== --- db/derby/code/trunk/java/engine/org/apache/derby/impl/sql/execute/GenericAggregator.java (original) +++ db/derby/code/trunk/java/engine/org/apache/derby/impl/sql/execute/GenericAggregator.java Wed Dec 28 09:35:31 2005 @@ -100,17 +100,14 @@ void initialize(ExecRow row) throws StandardException { - ExecAggregator ua; - UserDataValue aggregatorColumn; - if (SanityManager.DEBUG) { SanityManager.ASSERT(row != null, "row is null"); } - aggregatorColumn = (UserDataValue) row.getColumn(aggregatorColumnId + 1); + UserDataValue aggregatorColumn = (UserDataValue) row.getColumn(aggregatorColumnId + 1); - ua = (ExecAggregator) aggregatorColumn.getObject(); + ExecAggregator ua = (ExecAggregator) aggregatorColumn.getObject(); if (ua == null) { ua = getAggregatorInstance();