You are viewing a plain text version of this content. The canonical link for it is here.
Posted to slide-dev@jakarta.apache.org by lu...@apache.org on 2004/10/02 19:55:40 UTC

cvs commit: jakarta-slide/src/stores/org/apache/slide/store/impl/rdbms DB2RDBMSAdapter.java

luetzkendorf    2004/10/02 10:55:40

  Modified:    src/stores/org/apache/slide/store/impl/rdbms Tag:
                        SLIDE_2_1_RELEASE_BRANCH DB2RDBMSAdapter.java
  Log:
  patch by Warwick Burrows for bug 30907
  
  Revision  Changes    Path
  No                   revision
  No                   revision
  1.3.2.2   +23 -20    jakarta-slide/src/stores/org/apache/slide/store/impl/rdbms/DB2RDBMSAdapter.java
  
  Index: DB2RDBMSAdapter.java
  ===================================================================
  RCS file: /home/cvs/jakarta-slide/src/stores/org/apache/slide/store/impl/rdbms/DB2RDBMSAdapter.java,v
  retrieving revision 1.3.2.1
  retrieving revision 1.3.2.2
  diff -u -r1.3.2.1 -r1.3.2.2
  --- DB2RDBMSAdapter.java	28 Aug 2004 17:20:09 -0000	1.3.2.1
  +++ DB2RDBMSAdapter.java	2 Oct 2004 17:55:40 -0000	1.3.2.2
  @@ -32,13 +32,11 @@
   import org.apache.slide.structure.ObjectNotFoundException;
   import org.apache.slide.util.logger.Logger;
   
  -import java.io.*;
   import java.sql.Connection;
   import java.sql.PreparedStatement;
   import java.sql.ResultSet;
   import java.sql.SQLException;
  -//import java.sql.Statement;
  -import java.util.*;
  +import java.util.Enumeration;;
   
   /**
    * Adapter for DB2 8.
  @@ -50,8 +48,6 @@
   // The reason This adapter is needed is because DB2 does not like parameter markers in select columns. Ex from StandardRDBMSAdapter:
   // "insert into BINDING (URI_ID, NAME, CHILD_UURI_ID) select ?, ?, URI_ID from URI where URI_STRING = ?"
   
  -    private boolean bcompress;
  -
       public DB2RDBMSAdapter(Service service, Logger logger) {
           super(service, logger);
           bcompress = false;
  @@ -341,17 +337,19 @@
                       close(statement, res);
                   }
               }
  -            boolean versionHistoryExists;
  -            try {
  -                statement =
  -                    connection.prepareStatement(
  -                            "SELECT 1 FROM VERSION_HISTORY vh, URI u WHERE vh.URI_ID = u.URI_ID and u.URI_STRING = ? and REVISION_NO = ?");
  -                statement.setString(1, uri.toString());
  -                statement.setString(2, revisionDescriptors.getLatestRevision().toString());
  -                res = statement.executeQuery();
  -                versionHistoryExists = res.next();
  -            } finally {
  -                close(statement, res);
  +            boolean versionHistoryExists = false;
  +            if (revisionDescriptors.getLatestRevision() != null) {
  +                try {
  +                    statement =
  +                        connection.prepareStatement(
  +                                "SELECT 1 FROM VERSION_HISTORY vh, URI u WHERE vh.URI_ID = u.URI_ID and u.URI_STRING = ? and REVISION_NO = ?");
  +                    statement.setString(1, uri.toString());
  +                    statement.setString(2, revisionDescriptors.getLatestRevision().toString());
  +                    res = statement.executeQuery();
  +                    versionHistoryExists = res.next();
  +                } finally {
  +                    close(statement, res);
  +                }
               }
               if (!versionHistoryExists && revisionDescriptors.getLatestRevision() != null) {
                   try {
  @@ -532,5 +530,10 @@
   	 return ids;
     }
   
  +  protected String convertRevisionNumberToComparable(String revisioNumber) {
  +      return "integer(substr("+revisioNumber+",1,locate('.', "+
  +          revisioNumber+")-1)), integer(substr("+revisioNumber
  +          +",locate('.', "+revisioNumber+")+1))";
  +  }
   }
   
  
  
  

---------------------------------------------------------------------
To unsubscribe, e-mail: slide-dev-unsubscribe@jakarta.apache.org
For additional commands, e-mail: slide-dev-help@jakarta.apache.org