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

List:       slide-dev
Subject:    cvs commit: jakarta-slide/src/stores/slidestore/reference JDBCDescriptorsStore.java
From:       dirkv () apache ! org
Date:       2001-08-31 21:53:12
[Download RAW message or body]

dirkv       01/08/31 14:53:12

  Modified:    src/stores/slidestore/reference JDBCDescriptorsStore.java
  Log:
  - action is a reserved word in Cloudscape
  bug report and solution by Jacob Lund
  - put database creation statements in array for easier subclassing
  
  Revision  Changes    Path
  1.25      +45 -63    \
jakarta-slide/src/stores/slidestore/reference/JDBCDescriptorsStore.java  
  Index: JDBCDescriptorsStore.java
  ===================================================================
  RCS file: /home/cvs/jakarta-slide/src/stores/slidestore/reference/JDBCDescriptorsStore.java,v
  retrieving revision 1.24
  retrieving revision 1.25
  diff -u -r1.24 -r1.25
  --- JDBCDescriptorsStore.java	2001/08/18 13:11:39	1.24
  +++ JDBCDescriptorsStore.java	2001/08/31 21:53:12	1.25
  @@ -1,7 +1,7 @@
   /*
  - * $Header: /home/cvs/jakarta-slide/src/stores/slidestore/reference/JDBCDescriptorsStore.java,v \
                1.24 2001/08/18 13:11:39 dirkv Exp $
  - * $Revision: 1.24 $
  - * $Date: 2001/08/18 13:11:39 $
  + * $Header: /home/cvs/jakarta-slide/src/stores/slidestore/reference/JDBCDescriptorsStore.java,v \
1.25 2001/08/31 21:53:12 dirkv Exp $  + * $Revision: 1.25 $
  + * $Date: 2001/08/31 21:53:12 $
    *
    * ====================================================================
    *
  @@ -86,7 +86,7 @@
    * 
    * @author <a href="mailto:remm@apache.org">Remy Maucherat</a>
    * @author Dirk Verbeeck
  - * @version $Revision: 1.24 $
  + * @version $Revision: 1.25 $
    */
   
   public class JDBCDescriptorsStore
  @@ -163,7 +163,42 @@
       protected static final int PROPERTY_NAMESPACE = 5;
       protected static final int PROPERTY_TYPE = 6;
       protected static final int PROPERTY_PROTECTED = 7;
  +
  +    /**
  +     * Statements to create the database objects.
  +     */
  +    protected static String[] DB_CREATE_STATEMENTS = {
  +        "create table objects(uri varchar(65536) primary key," +
  +        "    classname varchar(4096))",
  +        "create table children(uri varchar(65536), " +
  +        "    childuri varchar(65536))",
  +        "create table links(link varchar(65536), " +
  +        "    linkto varchar(65536))",
  +        "create table permissions(object varchar(65536)," +
  +        "    revisionnumber varchar(20), " +
  +        "    subject varchar(65536), action varchar(65536), " +
  +        "    inheritable int, negative int)",
  +        "create table locks(id varchar(65536), object varchar(4096)," +
  +        "    subject varchar(4096), type varchar(4096), " +
  +        "    expirationdate varchar(15), inheritable int, " +
  +        "    xexclusive int)",
  +        "create table revisions(uri varchar(65536) primary key, " +
  +        "    isversioned int, initialrevision varchar(10))",
  +        "create table workingrevision(uri varchar(65536), " +
  +        "    baserevision varchar(20), xnumber varchar(20))",
  +        "create table latestrevisions(uri varchar(65536), " +
  +        "    branchname varchar(4096), xnumber varchar(20))",
  +        "create table branches(uri varchar(65536), xnumber varchar(20)," +
  +        "    childnumber varchar(20))",
  +        "create table revision(uri varchar(65536), xnumber varchar(20)," +
  +        "    branchname varchar(4096))",
  +        "create table label(uri varchar(65536), xnumber varchar(20)," +
  +        "    label varchar(4096))",
  +        "create table property(uri varchar(65536), xnumber varchar(20)," +
  +        "    name varchar(4096), value varchar(65536), " +
  +        "    namespace varchar(4096), type varchar(100), protected int)"};
       
  +        
       
       // ----------------------------------------------------- Instance Variables
       
  @@ -273,65 +308,12 @@
           }
           
           Statement statement = null;
  -        
           try {
  -            
               statement = connection.createStatement();
  -            
  -            String s = "create table objects(uri varchar(65536) " 
  -                + " primary key, classname varchar(4096))";
  -            statement.execute(s);
  -            
  -            s = "create table children(uri varchar(65536), childuri " 
  -                + "varchar(65536))";
  -            statement.execute(s);
  -            
  -            s = "create table links(link varchar(65536), linkto " 
  -                + "varchar(65536))";
  -            statement.execute(s);
  -            
  -            s = "create table permissions(object varchar(65536)," 
  -                + " revisionnumber varchar(20), "
  -                + " subject varchar(65536), action varchar(65536), " 
  -                + "inheritable int, negative int)";
  -            statement.execute(s);
  -            
  -            s = "create table locks(id varchar(65536), object varchar(4096),"
  -                + " subject varchar(4096), type varchar(4096), " 
  -                + "expirationdate varchar(15), inheritable int, " 
  -                + "xexclusive int)";
  -            statement.execute(s);
  -            
  -            s = "create table revisions(uri varchar(65536) primary key, " 
  -                + "isversioned int, initialrevision varchar(10))";
  -            statement.execute(s);
  -            
  -            s = "create table workingrevision(uri varchar(65536), " 
  -                + "baserevision varchar(20), xnumber varchar(20))";
  -            statement.execute(s);
  -            
  -            s = "create table latestrevisions(uri varchar(65536), " 
  -                + "branchname varchar(4096), xnumber varchar(20))";
  -            statement.execute(s);
  -            
  -            s = "create table branches(uri varchar(65536), xnumber " 
  -                + "varchar(20), childnumber varchar(20))";
  -            statement.execute(s);
  -            
  -            s = "create table revision(uri varchar(65536), xnumber " 
  -                + "varchar(20), branchname varchar(4096))";
  -            statement.execute(s);
  -            
  -            s = "create table label(uri varchar(65536), xnumber varchar(20)," 
  -                + " label varchar(4096))";
  -            statement.execute(s);
  -            
  -            s = "create table property(uri varchar(65536), xnumber" 
  -                + " varchar(20), name varchar(4096), value varchar(65536), " 
  -                + "namespace varchar(4096), type varchar(100), protected int)";
  -            statement.execute(s);
  -            
  -            statement.close();
  +            for (int i=0; i<DB_CREATE_STATEMENTS.length ; i++ ) {
  +                statement.execute(DB_CREATE_STATEMENTS[i]);
  +            }
  +            closeStatement(statement);
               
           } catch (SQLException e) {
           } finally {
  @@ -934,12 +916,12 @@
               NodeRevisionNumber revisionNumber = permission.getRevisionNumber();
               if(revisionNumber != null) {
                   statement = connection.prepareStatement
  -                    ("delete from permissions where object= ? and subject = ? and \
action = ?  and revisionnumber = ? ");  +                    ("delete from \
permissions where object= ? and subject = ? and \"ACTION\" = ?  and revisionnumber = \
? ");  statement.setString(4, revisionNumber.toString());
               }
               else {
                   statement = connection.prepareStatement
  -                    ("delete from permissions where object = ? and subject = ? and \
action = ? and revisionnumber is NULL");  +                    ("delete from \
permissions where object = ? and subject = ? and \"ACTION\" = ? and revisionnumber is \
NULL");  }
   
               statement.setString(1, permission.getObjectUri());
  
  
  


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

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