[prev in list] [next in list] [prev in thread] [next in thread] 

List:       slide-dev
Subject:    cvs commit: jakarta-slide/src/stores/org/apache/slide/store/impl/rdbms StandardRDBMSAdapter.java
From:       cmlenz () apache ! org
Date:       2002-08-27 17:10:02
[Download RAW message or body]

cmlenz      2002/08/27 10:10:02

  Modified:    src/stores/org/apache/slide/store/impl/rdbms
                        StandardRDBMSAdapter.java
  Log:
  Actually perform the deletion of revision descriptors and descriptor.
  
  [There are still problems with violations of constraints that I haven't 
  found yet...]
  
  Revision  Changes    Path
  1.9       +35 -36    \
jakarta-slide/src/stores/org/apache/slide/store/impl/rdbms/StandardRDBMSAdapter.java  \
  Index: StandardRDBMSAdapter.java
  ===================================================================
  RCS file: /home/cvs/jakarta-slide/src/stores/org/apache/slide/store/impl/rdbms/StandardRDBMSAdapter.java,v
  retrieving revision 1.8
  retrieving revision 1.9
  diff -u -r1.8 -r1.9
  --- StandardRDBMSAdapter.java	27 Aug 2002 16:40:15 -0000	1.8
  +++ StandardRDBMSAdapter.java	27 Aug 2002 17:10:02 -0000	1.9
  @@ -359,7 +359,7 @@
   
               // store the class name
               sql.setLength(0);
  -            sql.append("INSERT INTO SLIDE_OBJECT (URI_ID,CLASS_NAME) ")
  +            sql.append("INSERT INTO SLIDE_OBJECT (URI_ID, CLASS_NAME) ")
                  .append("VALUES (").append(uriId).append(", '")
                  .append(object.getClass().getName()).append("')");
               stmt.executeUpdate(sql.toString());
  @@ -948,13 +948,19 @@
                   sql.setLength(0);
                   sql.append("DELETE FROM SLIDE_REVISION_PREDECESSOR ").
                       append("WHERE REVISION_ID = ").append(revisionId);
  -                stmt2.execute(sql.toString());
  +                stmt2.executeUpdate(sql.toString());
                   
                   sql.setLength(0);
                   sql.append("DELETE FROM SLIDE_REVISION_LATEST ").
                       append("WHERE REVISION_ID = ").append(revisionId);
  -                   
  -            }            
  +                stmt2.executeUpdate(sql.toString());
  +            }
  +            
  +            sql.setLength(0);
  +            sql.append("DELETE FROM SLIDE_REVISION_HISTORY ").
  +                append("WHERE URI_ID = ").append(uriId);
  +            stmt.executeUpdate(sql.toString());
  +            
           } catch (SQLException e) {
               throw new ServiceAccessException(service, e);
           } finally {
  @@ -1201,7 +1207,7 @@
               if (myRevisionDescriptor != null) {
                   branchStr = myRevisionDescriptor.getBranchName();
               } else {
  -                branchStr = "main";
  +                branchStr = NodeRevisionDescriptors.MAIN_BRANCH;
               }
               
               long versionId = getRevisionId(conn, uriId, branchStr, nrn);
  @@ -1210,14 +1216,19 @@
               sql.setLength(0);
               sql.append("DELETE FROM SLIDE_REVISION_LABEL WHERE REVISION_ID = ");
               sql.append(versionId);
  -            stmt.execute(sql.toString());
  +            stmt.executeUpdate(sql.toString());
   
               // remove associated properties
               sql.setLength(0);
               sql.append("DELETE FROM SLIDE_REVISION_PROPERTY ")
                  .append("WHERE REVISION_ID = ");
               sql.append(versionId);
  -            stmt.execute(sql.toString());
  +            stmt.executeUpdate(sql.toString());
  +            
  +            sql.setLength(0);
  +            sql.append("DELETE FROM SLIDE_REVISION ")
  +               .append("WHERE REVISION_ID = ").append(versionId);
  +            stmt.executeUpdate(sql.toString());
               
           } catch (SQLException e) {
               throw new ServiceAccessException(service, e);
  @@ -1395,15 +1406,26 @@
           (Connection conn, Uri uri, NodeRevisionDescriptor revisionDescriptor)
           throws ServiceAccessException {
           
  +        Statement stmt = null;
           try {
  +            stmt = conn.createStatement();
  +            
               long versionId =
                   getRevisionId(conn, getUriId(conn, uri.toString()),
                                 revisionDescriptor.getBranchName(),
                                 revisionDescriptor.getRevisionNumber());
  -            removeContent(conn, versionId);
  -
  +            StringBuffer sql = new StringBuffer();
  +            sql.append("DELETE FROM SLIDE_REVISION_CONTENT ")
  +               .append("WHERE REVISION_ID = ").append(versionId);
  +            stmt = conn.createStatement();
  +            stmt.executeUpdate(sql.toString());
  +            
           } catch (Exception e) {
               throw new ServiceAccessException(service, e.getMessage());
  +        } finally {
  +            try {
  +                stmt.close();
  +            } catch (SQLException e) { }
           }
   	}
       
  @@ -2072,29 +2094,6 @@
               if (pstmt != null) {
                   try {
                       pstmt.close();
  -                } catch (SQLException sqle) { }
  -            }
  -        }
  -    }
  -    
  -    
  -    /**
  -     * Remove content.
  -     */
  -    protected void removeContent(Connection conn, long versionId)
  -        throws SQLException {
  -
  -        Statement stmt = null;
  -        try {
  -            StringBuffer sql = new StringBuffer();
  -            sql.append("DELETE FROM SLIDE_REVISION_CONTENT ")
  -               .append("WHERE REVISION_ID = ").append(versionId);
  -            stmt = conn.createStatement();
  -            stmt.executeUpdate(sql.toString());
  -        } finally {
  -            if (stmt != null) {
  -                try {
  -                    stmt.close();
                   } catch (SQLException sqle) { }
               }
           }
  
  
  

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


[prev in list] [next in list] [prev in thread] [next in thread] 

Configure | About | News | Add a list | Sponsored by KoreLogic