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 oz...@apache.org on 2004/08/04 13:45:59 UTC

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

ozeigermann    2004/08/04 04:45:59

  Modified:    src/stores/org/apache/slide/store/impl/rdbms
                        DB2RDBMSAdapter.java PostgresRDBMSAdapter.java
                        OracleRDBMSAdapter.java CommonRDBMSAdapter.java
                        StandardRDBMSAdapter.java
  Log:
  Removed weired getRevisionNumberAsWhereQueryFragement
  as revision number should not be null anyway.
  
  Revision  Changes    Path
  1.3       +10 -11    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.2
  retrieving revision 1.3
  diff -u -r1.2 -r1.3
  --- DB2RDBMSAdapter.java	28 Jul 2004 09:34:17 -0000	1.2
  +++ DB2RDBMSAdapter.java	4 Aug 2004 11:45:59 -0000	1.3
  @@ -345,9 +345,9 @@
               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"
  -                            + getRevisionNumberAsWhereQueryFragement(revisionDescriptors.getLatestRevision()));
  +                            "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 {
  @@ -450,9 +450,9 @@
           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"
  -                        + getRevisionNumberAsWhereQueryFragement(revisionDescriptor.getRevisionNumber()));
  +                    "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, revisionDescriptor.getRevisionNumber().toString());
               res = statement.executeQuery();
               versionHistoryExists = res.next();
           } finally {
  @@ -512,10 +512,9 @@
   
   			statement =
   				connection.prepareStatement(
  -					"select vh.VERSION_ID from VERSION_HISTORY vh, URI u where vh.URI_ID = u.URI_ID and u.URI_STRING = ? and vh.REVISION_NO"
  -				+ getRevisionNumberAsWhereQueryFragement(revisionDescriptor.getRevisionNumber()));
  -
  +					"select vh.VERSION_ID from VERSION_HISTORY vh, URI u where vh.URI_ID = u.URI_ID and u.URI_STRING = ? and vh.REVISION_NO = ?");
   			 statement.setString(1,uriString);
  +             statement.setString(2,revisionDescriptor.getRevisionNumber().toString());
   			 rs = statement.executeQuery();
   			 if(rs.next())
   			 	versionID= rs.getLong(1);
  
  
  
  1.10      +6 -6      jakarta-slide/src/stores/org/apache/slide/store/impl/rdbms/PostgresRDBMSAdapter.java
  
  Index: PostgresRDBMSAdapter.java
  ===================================================================
  RCS file: /home/cvs/jakarta-slide/src/stores/org/apache/slide/store/impl/rdbms/PostgresRDBMSAdapter.java,v
  retrieving revision 1.9
  retrieving revision 1.10
  diff -u -r1.9 -r1.10
  --- PostgresRDBMSAdapter.java	28 Jul 2004 09:34:16 -0000	1.9
  +++ PostgresRDBMSAdapter.java	4 Aug 2004 11:45:59 -0000	1.10
  @@ -243,11 +243,11 @@
   			NodeRevisionNumber revisionNumber = permission.getRevisionNumber();
   			statement =
   				connection.prepareStatement(
  -					"delete from PERMISSIONS, URI ou, URI su, URI au where OBJECT_ID = ou.URI_ID and ou.URI_STRING = ? and SUBJECT_ID = su.URI_ID and su.URI_STRING = ? and ACTION_ID = au.URI_ID and au.URI_STRING = ? and VERSION_NO"
  -						+ getRevisionNumberAsWhereQueryFragement(revisionNumber));
  +					"delete from PERMISSIONS, URI ou, URI su, URI au where OBJECT_ID = ou.URI_ID and ou.URI_STRING = ? and SUBJECT_ID = su.URI_ID and su.URI_STRING = ? and ACTION_ID = au.URI_ID and au.URI_STRING = ? and VERSION_NO = ?");
   			statement.setString(1, permission.getObjectUri());
   			statement.setString(2, permission.getSubjectUri());
   			statement.setString(3, permission.getActionUri());
  +            statement.setString(3, revisionNumber.toString());
   			statement.executeUpdate();
   		} catch (SQLException e) {
   			getLogger().log(e, LOG_CHANNEL, Logger.ERROR);
  
  
  
  1.8       +6 -6      jakarta-slide/src/stores/org/apache/slide/store/impl/rdbms/OracleRDBMSAdapter.java
  
  Index: OracleRDBMSAdapter.java
  ===================================================================
  RCS file: /home/cvs/jakarta-slide/src/stores/org/apache/slide/store/impl/rdbms/OracleRDBMSAdapter.java,v
  retrieving revision 1.7
  retrieving revision 1.8
  diff -u -r1.7 -r1.8
  --- OracleRDBMSAdapter.java	28 Jul 2004 09:34:16 -0000	1.7
  +++ OracleRDBMSAdapter.java	4 Aug 2004 11:45:59 -0000	1.8
  @@ -161,10 +161,10 @@
   	{
   		PreparedStatement statement = connection.prepareStatement(
   			"select vh.VERSION_ID from VERSION_HISTORY vh, URI u " +
  -			"where vh.URI_ID = u.URI_ID and u.URI_STRING = ? and vh.REVISION_NO"
  -			+ getRevisionNumberAsWhereQueryFragement(revisionDescriptor.getRevisionNumber()));
  +			"where vh.URI_ID = u.URI_ID and u.URI_STRING = ? and vh.REVISION_NO = ?");
   		try {
   			statement.setString(1, uri.toString());
  +            statement.setString(2, revisionDescriptor.getRevisionNumber().toString());
   			ResultSet res = statement.executeQuery();
   			try {
   				res.next();
  
  
  
  1.3       +5 -5      jakarta-slide/src/stores/org/apache/slide/store/impl/rdbms/CommonRDBMSAdapter.java
  
  Index: CommonRDBMSAdapter.java
  ===================================================================
  RCS file: /home/cvs/jakarta-slide/src/stores/org/apache/slide/store/impl/rdbms/CommonRDBMSAdapter.java,v
  retrieving revision 1.2
  retrieving revision 1.3
  diff -u -r1.2 -r1.3
  --- CommonRDBMSAdapter.java	25 Jul 2004 11:33:55 -0000	1.2
  +++ CommonRDBMSAdapter.java	4 Aug 2004 11:45:59 -0000	1.3
  @@ -228,11 +228,11 @@
               NodeRevisionNumber revisionNumber = permission.getRevisionNumber();
               statement =
                   connection.prepareStatement(
  -                    "delete from PERMISSIONS where PERMISSIONS.OBJECT_ID in (select ou.URI_ID from URI ou, URI su, URI au where ou.URI_STRING = ? and SUBJECT_ID = su.URI_ID and su.URI_STRING = ? and ACTION_ID = au.URI_ID and au.URI_STRING = ? and VERSION_NO"
  -                        + getRevisionNumberAsWhereQueryFragement(revisionNumber) + ")");
  +                    "delete from PERMISSIONS where PERMISSIONS.OBJECT_ID in (select ou.URI_ID from URI ou, URI su, URI au where ou.URI_STRING = ? and SUBJECT_ID = su.URI_ID and su.URI_STRING = ? and ACTION_ID = au.URI_ID and au.URI_STRING = ? and VERSION_NO = ?)");
               statement.setString(1, permission.getObjectUri());
               statement.setString(2, permission.getSubjectUri());
               statement.setString(3, permission.getActionUri());
  +            statement.setString(4, revisionNumber.toString());
               statement.executeUpdate();
           } catch (SQLException e) {
               throw createException(e, uri.toString());
  
  
  
  1.32      +26 -30    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.31
  retrieving revision 1.32
  diff -u -r1.31 -r1.32
  --- StandardRDBMSAdapter.java	4 Aug 2004 11:18:41 -0000	1.31
  +++ StandardRDBMSAdapter.java	4 Aug 2004 11:45:59 -0000	1.32
  @@ -577,11 +577,11 @@
               NodeRevisionNumber revisionNumber = permission.getRevisionNumber();
               statement =
                   connection.prepareStatement(
  -                    "delete PERMISSIONS from PERMISSIONS, URI ou, URI su, URI au where OBJECT_ID = ou.URI_ID and ou.URI_STRING = ? and SUBJECT_ID = su.URI_ID and su.URI_STRING = ? and ACTION_ID = au.URI_ID and au.URI_STRING = ? and VERSION_NO"
  -                        + getRevisionNumberAsWhereQueryFragement(revisionNumber));
  +                    "delete PERMISSIONS from PERMISSIONS, URI ou, URI su, URI au where OBJECT_ID = ou.URI_ID and ou.URI_STRING = ? and SUBJECT_ID = su.URI_ID and su.URI_STRING = ? and ACTION_ID = au.URI_ID and au.URI_STRING = ? and VERSION_NO = ?");
               statement.setString(1, permission.getObjectUri());
               statement.setString(2, permission.getSubjectUri());
               statement.setString(3, permission.getActionUri());
  +            statement.setString(4, revisionNumber.toString());
               statement.executeUpdate();
           } catch (SQLException e) {
               throw createException(e, uri.toString());
  @@ -618,10 +618,10 @@
                   try {
                       statement =
                           connection.prepareStatement(
  -                            "insert into VERSION_LABELS (VERSION_ID, LABEL_ID) select VERSION_ID, ? from VERSION_HISTORY vh, URI u where vh.URI_ID = u.URI_ID and u.URI_STRING = ? and vh.REVISION_NO"
  -                                + getRevisionNumberAsWhereQueryFragement(revisionDescriptor.getRevisionNumber()));
  +                            "insert into VERSION_LABELS (VERSION_ID, LABEL_ID) select VERSION_ID, ? from VERSION_HISTORY vh, URI u where vh.URI_ID = u.URI_ID and u.URI_STRING = ? and vh.REVISION_NO = ?");
                       statement.setLong(1, labelId);
                       statement.setString(2, uri.toString());
  +                    statement.setString(3, revisionDescriptor.getRevisionNumber().toString());
                       statement.executeUpdate();
                   } finally {
                       close(statement);
  @@ -632,8 +632,7 @@
                       NodeProperty property = (NodeProperty) properties.nextElement();
                       statement =
                           connection.prepareStatement(
  -                            "insert into PROPERTIES (VERSION_ID,PROPERTY_NAMESPACE,PROPERTY_NAME,PROPERTY_VALUE,PROPERTY_TYPE,IS_PROTECTED) select vh.VERSION_ID, ?, ?, ?, ?, ? from VERSION_HISTORY vh, URI u where vh.URI_ID = u.URI_ID and u.URI_STRING = ? and vh.REVISION_NO"
  -                                + getRevisionNumberAsWhereQueryFragement(revisionDescriptor.getRevisionNumber()));
  +                            "insert into PROPERTIES (VERSION_ID,PROPERTY_NAMESPACE,PROPERTY_NAME,PROPERTY_VALUE,PROPERTY_TYPE,IS_PROTECTED) select vh.VERSION_ID, ?, ?, ?, ?, ? from VERSION_HISTORY vh, URI u where vh.URI_ID = u.URI_ID and u.URI_STRING = ? and vh.REVISION_NO = ?");
                       int protectedProperty = property.isProtected() ? 1 : 0;
                       statement.setString(1, property.getNamespace());
                       statement.setString(2, property.getName());
  @@ -641,6 +640,7 @@
                       statement.setString(4, property.getType());
                       statement.setInt(5, protectedProperty);
                       statement.setString(6, uri.toString());
  +                    statement.setString(7, revisionDescriptor.getRevisionNumber().toString());
                       statement.executeUpdate();
                   } finally {
                       close(statement);
  @@ -727,9 +727,9 @@
               try {
                   statement =
                       connection.prepareStatement(
  -                        "select vc.CONTENT from VERSION_CONTENT vc, VERSION_HISTORY vh, URI u where vc.VERSION_ID = vh.VERSION_ID and vh.URI_ID = u.URI_ID and u.URI_STRING = ? and vh.REVISION_NO"
  -                            + getRevisionNumberAsWhereQueryFragement(revisionDescriptor.getRevisionNumber()));
  +                        "select vc.CONTENT from VERSION_CONTENT vc, VERSION_HISTORY vh, URI u where vc.VERSION_ID = vh.VERSION_ID and vh.URI_ID = u.URI_ID and u.URI_STRING = ? and vh.REVISION_NO = ?");
                   statement.setString(1, uri.toString());
  +                statement.setString(2, revisionDescriptor.getRevisionNumber().toString());
                   res = statement.executeQuery();
                   if (!res.next()) {
                       throw new RevisionNotFoundException(uri.toString(), revisionDescriptor.getRevisionNumber());
  @@ -809,9 +809,9 @@
               try {
                   statement =
                       connection.prepareStatement(
  -                        "select vh.VERSION_ID, b.BRANCH_STRING from VERSION_HISTORY vh, BRANCH b, URI u where vh.URI_ID = u.URI_ID and u.URI_STRING = ? and b.BRANCH_ID = vh.BRANCH_ID and vh.REVISION_NO"
  -                            + getRevisionNumberAsWhereQueryFragement(revisionNumber));
  +                        "select vh.VERSION_ID, b.BRANCH_STRING from VERSION_HISTORY vh, BRANCH b, URI u where vh.URI_ID = u.URI_ID and u.URI_STRING = ? and b.BRANCH_ID = vh.BRANCH_ID and vh.REVISION_NO = ?");
                   statement.setString(1, uri.toString());
  +                statement.setString(2, revisionNumber.toString());
                   res = statement.executeQuery();
                   if (res.next()) {
                       versionId = res.getLong(1);
  @@ -916,9 +916,9 @@
                   try {
                       statement =
                           connection.prepareStatement(
  -                            "select pvh.REVISION_NO from VERSION_HISTORY vh, VERSION_HISTORY pvh, VERSION_PREDS vp, URI u where pvh.VERSION_ID = vp.VERSION_ID and vp.VERSION_ID = vh.VERSION_ID and vh.URI_ID = u.URI_ID and u.URI_STRING = ? and vh.REVISION_NO"
  -                                + getRevisionNumberAsWhereQueryFragement(revisionNumber));
  +                            "select pvh.REVISION_NO from VERSION_HISTORY vh, VERSION_HISTORY pvh, VERSION_PREDS vp, URI u where pvh.VERSION_ID = vp.VERSION_ID and vp.VERSION_ID = vh.VERSION_ID and vh.URI_ID = u.URI_ID and u.URI_STRING = ? and vh.REVISION_NO = ?");
                       statement.setString(1, uri.toString());
  +                    statement.setString(2, revisionNumber.toString());
                       res = statement.executeQuery();
                       Vector predecessors = new Vector();
                       while (res.next()) {
  @@ -977,12 +977,13 @@
                   }
               }
               boolean versionHistoryExists;
  +            NodeRevisionNumber versionNumber = revisionDescriptors.hasRevisions() ? revisionDescriptors.getLatestRevision() : new NodeRevisionNumber(); 
               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"
  -                            + getRevisionNumberAsWhereQueryFragement(revisionDescriptors.getLatestRevision()));
  +                        "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, versionNumber.toString());
                   res = statement.executeQuery();
                   versionHistoryExists = res.next();
               } finally {
  @@ -993,7 +994,7 @@
                       statement =
                           connection.prepareStatement(
                               "insert into VERSION_HISTORY (URI_ID, BRANCH_ID, REVISION_NO) select u.URI_ID, b.BRANCH_ID, ? from URI u, BRANCH b where u.URI_STRING = ? and b.BRANCH_STRING = ?");
  -                    statement.setString(1, getRevisionNumberAsString(revisionDescriptors.getLatestRevision()));
  +                    statement.setString(1, getRevisionNumberAsString(versionNumber));
                       statement.setString(2, uri.toString());
                       statement.setString(3, NodeRevisionDescriptors.MAIN_BRANCH);
                       // FIXME: Create new revisions on the main branch???
  @@ -1080,9 +1081,9 @@
               try {
                   statement =
                       connection.prepareStatement(
  -                        "select 1 from VERSION_CONTENT vc, VERSION_HISTORY vh, URI u where vc.VERSION_ID = vh.VERSION_ID and vh.URI_ID = u.URI_ID and u.URI_STRING = ? and vh.REVISION_NO"
  -                            + getRevisionNumberAsWhereQueryFragement(revisionDescriptor.getRevisionNumber()));
  +                        "select 1 from VERSION_CONTENT vc, VERSION_HISTORY vh, URI u where vc.VERSION_ID = vh.VERSION_ID and vh.URI_ID = u.URI_ID and u.URI_STRING = ? and vh.REVISION_NO = ?");
                   statement.setString(1, uri.toString());
  +                statement.setString(2, revisionDescriptor.getRevisionNumber().toString());
                   res = statement.executeQuery();
                   if (res.next()) {
                       if (create)
  @@ -1139,9 +1140,9 @@
           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"
  -                        + getRevisionNumberAsWhereQueryFragement(revisionDescriptor.getRevisionNumber()));
  +                    "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, revisionDescriptor.getRevisionNumber().toString());
               res = statement.executeQuery();
               versionHistoryExists = res.next();
           } finally {
  @@ -1217,10 +1218,10 @@
               try {
                   statement =
                       connection.prepareStatement(
  -                        "insert into VERSION_CONTENT (VERSION_ID, CONTENT) select vh.VERSION_ID, ? from VERSION_HISTORY vh, URI u where vh.URI_ID = u.URI_ID and u.URI_STRING = ? and vh.REVISION_NO"
  -                            + getRevisionNumberAsWhereQueryFragement(revisionDescriptor.getRevisionNumber()));
  +                        "insert into VERSION_CONTENT (VERSION_ID, CONTENT) select vh.VERSION_ID, ? from VERSION_HISTORY vh, URI u where vh.URI_ID = u.URI_ID and u.URI_STRING = ? and vh.REVISION_NO = ?");
                   statement.setBinaryStream(1, is, (int) contentLength);
                   statement.setString(2, uri.toString());
  +                statement.setString(3, revisionDescriptor.getRevisionNumber().toString());
                   statement.executeUpdate();
                   if (tempFile != null) {
                       is.close();
  @@ -1360,11 +1361,6 @@
       // null means permission is valid for all revisions
       protected String getRevisionNumberAsString(NodeRevisionNumber revisionNumber) {
           return revisionNumber != null ? revisionNumber.toString() : null;
  -    }
  -
  -    // needed as some DBs do not accecpt 'x = NULL', but rather need 'x IS NULL'
  -    protected String getRevisionNumberAsWhereQueryFragement(NodeRevisionNumber revisionNumber) {
  -        return (revisionNumber == null ? " IS NULL" : " = '" + revisionNumber + "'");
       }
   
       protected String convertRevisionNumberToComparable(String revisioNumber) {
  
  
  

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