db-derby-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Philip Wilder (JIRA)" <derby-...@db.apache.org>
Subject [jira] Updated: (DERBY-343) Clean up related DRDA classes
Date Tue, 07 Jun 2005 16:16:42 GMT
     [ http://issues.apache.org/jira/browse/DERBY-343?page=all ]

Philip Wilder updated DERBY-343:
--------------------------------

    Attachment: Derby213.diff

My first potential patch. The patch in question is designed to addressed the problems mentioned
in the description for this issue.
Could one or more people please review this to insure that everything is done properly.

> Clean up related DRDA classes
> -----------------------------
>
>          Key: DERBY-343
>          URL: http://issues.apache.org/jira/browse/DERBY-343
>      Project: Derby
>         Type: Sub-task
>   Components: Network Server
>     Versions: 10.0.2.1, 10.0.2.0
>     Reporter: Philip Wilder
>     Assignee: Philip Wilder
>     Priority: Minor
>      Fix For: 10.0.2.1, 10.0.2.0
>  Attachments: Derby213.diff
>
> The follow is a list of changes to be implemented in the DRDAConnThread, DRDAStatement
and DRDAResultSet. It is hoped that these changes will clean up code related to DERBY-213
and make the fix easier to implement.
> ###################################
> Step 1:
> In org.apache.derby.impl.drda.DRDAResultSet add
> public static final int QRYCLSIMP_DEFAULT = CodePoint.QRYCLSIMP_NO;
> ############################
> Step 2:
> Copy the org.apache.derby.impl.drda.DRDAStatement.setOPNQRYOptions() method to the org.apache.derby.impl.drda.DRDAResultSet
class and 
> change the logic of set setOPNQRYOptions() to remove the setting of the qryclsimp value
to QRYCLSIMP_SERVER_CHOICE. Only the values of YES or NO will ever be stored internally.
> e.g.
> DRDAResultSet.setOPNQRYOptions(int blksize, int qryblkctl, int maxblkext, int outovropt,
int qryrowset, 
>     int qryclsimpl) {
> 	this.blksize = blksize;
> 	setQryprctyp(qryblkctl);
> 	this.maxblkext = maxblkext;
> 	this.outovropt = outovropt;
> 	this.qryrowset = qryrowset;
> 	this.qryclsimp = (qryclsimpl == CodePoint.QRYCLSIMP_SERVER_CHOICE)
> 			? DRDAResultSet.QRYCLSIMP_DEFAULT : qryclsimpl;
> }
> Thereafter change to the DRDAStatement.setOPNQRYOptions() to a delegation method which
calls the method in DRDAResultSet
> e.g.
> DRDAStatement.setOPNQRYOptions(int blksize, int qryblkctl, 								  int maxblkext, int
outovropt,int qryrowset,int qryclsimpl)
> {
>     currentDrdaRs.setOPNQRYOptions(blksize, qryblkctl, maxblkext, 
>         outovropt, qryrowset, qryclsimpl);
> }
> ###################################
> Step 3:
> Add org.apache.derby.impl.drda.DRDAResultSet.isRSCloseImplicit() which will test to see
if the resultset should close implicitly
> e.g.
> boolean DRDAResultSet.isRSCloseImplicit() {
> 	return currentDrdaRs.qryclsimp == CodePoint.QRYCLSIMP_YES && 
> 		stmt.getQryprctyp() != CodePoint.LMTBLKPRC
> }
> Then add a corresponding delegation method in org.apache.derby.impl.drda.DRDAStatement()
> boolean DRDAStatement.isRSCloseImplicit() {
> 	return currentDrdaRs.isRSCloseImplicit();
> }
> ###################################
> Step 4:
> Remove org.apache.derby.impl.drda.DRDAStatment.setQryclsimp(int value)
> ###################################
> Step 5: 
> Remove all references to 
> if (qryclsimp == CodePoint.QRYCLSIMP_YES &&
> 	stmt.getQryprctyp() != CodePoint.LMTBLKPRC)  { ...
> logic and replace with 
> if (drdaStatement.isRSCloseImplicit()) { ...
> This should remove all references to org.apache.derby.impl.drda.DRDAStatment.getQryclsimp()
which can in turn be removed.
> ###################################
> Step 6: 
> In org.apache.derby.drda.impl.DRDAResultSet change:
> protected int qryclsimp
> to
> private int qryclsimp;
> ###################################
> Step 7:
> In org.apache.derby.drda.impl.DRDAConnThread.parseOPNQRY() change the line
> int qryclsimp = CodePoint.QRYCLSIMP_DEFAULT;
> to 
> int qryclsimp = DRDAResultSet.QRYCLSIMP_DEFAULT
> ###################################
> Step 8:
> In org.apache.derby.drda.impl.CodePoint remove
> static final int QRYCLSIMP_DEFAULT = QRYCLSIMP_SERVER_CHOICE;
> ###################################
> Step 9: Insure that the new methods and changed methods have appropriate java documentation.
> ###################################
> Step 10: Organize the import for the DRDAConnThread, DRDAStatement and DRDAResultSet
classes found in the org.apache.derby.drda.impl package.

-- 
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators:
   http://issues.apache.org/jira/secure/Administrators.jspa
-
For more information on JIRA, see:
   http://www.atlassian.com/software/jira


Mime
View raw message