One more thing, version 2.3.1 or 2.4.0? The new jsf module is a big update?

F

On 30 July 2012 16:26, Rainer Döbele <[email protected]> wrote:

> Yes, indeed we are!
>
> Rainer
>
> > from: [email protected] [mailto:[email protected]] Im Auftrag von
> > Francis De Brabandere
> > to: [email protected]
> > Cc: [email protected]
> > Betreff: Re: Please review: svn commit: r1365599
> >
> > Great,
> >
> > then we're ready for a release...
> >
> > Cheers,
> > F
> >
> > On 30 July 2012 11:56, Rainer Döbele <[email protected]> wrote:
> >
> > > Hi Franics,
> > >
> > >
> > >
> > > sorry I missed that question.
> > >
> > >
> > >
> > > Oh, no I have absolutely no objections - it's straight forward and
> > > appealing.
> > >
> > > One could only argue that for Columns other than AUTOINC type columns,
> > > this method has no meaning.
> > >
> > > But I am absolutely happy with the solution.
> > >
> > >
> > >
> > > Thanks
> > >
> > > Rainer
> > >
> > >
> > >
> > >
> > >
> > > from: [email protected] [mailto:[email protected]] Im Auftrag von
> > > Francis De Brabandere
> > > to: Rainer Döbele
> > > re: Fwd: Please review: svn commit: r1365599
> > >
> > >
> > >
> > > Hi Rainer,
> > >
> > >
> > >
> > > A final comment on this one before I start the release?
> > >
> > >
> > >
> > > Cheers,
> > >
> > > F
> > >
> > > ---------- Forwarded message ----------
> > > From: Francis De Brabandere <[email protected]>
> > > Date: 25 July 2012 16:35
> > > Subject: Please review: svn commit: r1365599
> > > To: dev <[email protected]>
> > >
> > >
> > > Hi Rainer,
> > >
> > > Do you have any objections against that getSequenceName() method in
> > > DBTableColumn? Added it to avoid duplication between ddl and sequence
> > > code (which was broken)
> > >
> > > More info on why here:
> > > https://issues.apache.org/jira/browse/EMPIREDB-151
> > >
> > > commit added at the bottom of this mail
> > >
> > > Cheers,
> > > Francis
> > >
> > >
> > > ---------- Forwarded message ----------
> > > From:  <[email protected]>
> > > Date: 25 July 2012 16:24
> > > Subject: svn commit: r1365599 - in /empire-db/trunk/empire-db/src:
> > > main/java/org/apache/empire/db/
> > main/java/org/apache/empire/db/oracle/
> > > main/java/org/apache/empire/db/postgresql/
> > > test/java/org/apache/empire/db/hsql/
> > > To: [email protected]
> > >
> > >
> > > Author: francisdb
> > > Date: Wed Jul 25 14:24:23 2012
> > > New Revision: 1365599
> > >
> > > URL: http://svn.apache.org/viewvc?rev=1365599&view=rev
> > > Log:
> > > EMPIREDB-151 DBDatabaseDriverHSQL fails on selection of NEXT VALUE
> > >
> > > Modified:
> > >
> > > empire-db/trunk/empire-
> > db/src/main/java/org/apache/empire/db/DBDatabas
> > > eDriver.java
> > >
> > > empire-db/trunk/empire-
> > db/src/main/java/org/apache/empire/db/DBTableCo
> > > lumn.java
> > >
> > > empire-db/trunk/empire-
> > db/src/main/java/org/apache/empire/db/oracle/Or
> > > acleDDLGenerator.java
> > >
> > > empire-db/trunk/empire-
> > db/src/main/java/org/apache/empire/db/postgresq
> > > l/PostgreDDLGenerator.java
> > >
> > > empire-db/trunk/empire-
> > db/src/test/java/org/apache/empire/db/hsql/DBDa
> > > tabaseDriverHSqlTest.java
> > >
> > > Modified:
> > > empire-db/trunk/empire-
> > db/src/main/java/org/apache/empire/db/DBDatabas
> > > eDriver.java
> > > URL:
> > > http://svn.apache.org/viewvc/empire-db/trunk/empire-
> > db/src/main/java/o
> > >
> > rg/apache/empire/db/DBDatabaseDriver.java?rev=1365599&r1=1365598&r2
> > =13
> > > 65599&view=diff
> > >
> > >
> > ==========================================================
> > ============
> > > ========
> > > ---
> > > empire-db/trunk/empire-
> > db/src/main/java/org/apache/empire/db/DBDatabas
> > > eDriver.java
> > > (original)
> > > +++
> > > empire-db/trunk/empire-
> > db/src/main/java/org/apache/empire/db/DBDatabas
> > > eDriver.java
> > > Wed Jul 25 14:24:23 2012
> > > @@ -374,9 +374,7 @@ public abstract class DBDatabaseDriver i
> > >          {   // Use a numeric sequence
> > >              if (isSupported(DBDriverFeature.SEQUENCES)==false)
> > >                  return null; // Create Later
> > > -            // Detect the Sequence Name
> > > -            Object defValue= column.getDefaultValue();
> > > -            String SeqName = (defValue != null) ? defValue.toString()
> > > : this.toString();
> > > +            String SeqName = column.getSequenceName();
> > >              return db.getNextSequenceValue(SeqName, conn);
> > >          }
> > >          else if (type== DataType.UNIQUEID)
> > >
> > > Modified:
> > > empire-db/trunk/empire-
> > db/src/main/java/org/apache/empire/db/DBTableCo
> > > lumn.java
> > > URL:
> > > http://svn.apache.org/viewvc/empire-db/trunk/empire-
> > db/src/main/java/o
> > >
> > rg/apache/empire/db/DBTableColumn.java?rev=1365599&r1=1365598&r2=1
> > 3655
> > > 99&view=diff
> > >
> > >
> > ==========================================================
> > ============
> > > ========
> > > ---
> > > empire-db/trunk/empire-
> > db/src/main/java/org/apache/empire/db/DBTableCo
> > > lumn.java
> > > (original)
> > > +++
> > > empire-db/trunk/empire-
> > db/src/main/java/org/apache/empire/db/DBTableCo
> > > lumn.java
> > > Wed Jul 25 14:24:23 2012
> > > @@ -439,4 +439,31 @@ public class DBTableColumn extends DBCol
> > >          // done
> > >          return elem;
> > >      }
> > > +
> > > +    /**
> > > +     * Gets the sequence name for this table's sequence (if it has
> one)
> > > +     * This is derived form the default value or auto generated if no
> > > default value is set
> > > +     * @return the sequence name
> > > +     */
> > > +       public String getSequenceName()
> > > +       {
> > > +               String seqName;
> > > +               Object defValue = getDefaultValue();
> > > +               if(defValue != null)
> > > +               {
> > > +                       seqName = defValue.toString();
> > > +               }
> > > +               else
> > > +               {
> > > +                       if (rowset != null)
> > > +                       {
> > > +                               seqName = rowset.getName() + "." +
> name;
> > > +                       }
> > > +                       else
> > > +                       {
> > > +                               seqName = name;
> > > +                       }
> > > +               }
> > > +               return seqName;
> > > +       }
> > >  }
> > > \ No newline at end of file
> > >
> > > Modified:
> > > empire-db/trunk/empire-
> > db/src/main/java/org/apache/empire/db/oracle/Or
> > > acleDDLGenerator.java
> > > URL:
> > > http://svn.apache.org/viewvc/empire-db/trunk/empire-
> > db/src/main/java/o
> > >
> > rg/apache/empire/db/oracle/OracleDDLGenerator.java?rev=1365599&r1=13
> > 65
> > > 598&r2=1365599&view=diff
> > >
> > >
> > ==========================================================
> > ============
> > > ========
> > > ---
> > > empire-db/trunk/empire-
> > db/src/main/java/org/apache/empire/db/oracle/Or
> > > acleDDLGenerator.java
> > > (original)
> > > +++
> > > empire-db/trunk/empire-
> > db/src/main/java/org/apache/empire/db/oracle/Or
> > > acleDDLGenerator.java
> > > Wed Jul 25 14:24:23 2012
> > > @@ -123,8 +123,7 @@ public class OracleDDLGenerator extends
> > >       */
> > >      protected void createSequence(DBDatabase db, DBTableColumn c,
> > > DBSQLScript script)
> > >      {
> > > -        Object defValue = c.getDefaultValue();
> > > -        String seqName = (defValue != null) ? defValue.toString() :
> > > c.toString();
> > > +        String seqName = c.getSequenceName();
> > >          // createSQL
> > >          StringBuilder sql = new StringBuilder();
> > >          sql.append("-- creating sequence for column ");
> > >
> > > Modified:
> > > empire-db/trunk/empire-
> > db/src/main/java/org/apache/empire/db/postgresq
> > > l/PostgreDDLGenerator.java
> > > URL:
> > > http://svn.apache.org/viewvc/empire-db/trunk/empire-
> > db/src/main/java/o
> > >
> > rg/apache/empire/db/postgresql/PostgreDDLGenerator.java?rev=1365599&
> > r1
> > > =1365598&r2=1365599&view=diff
> > >
> > >
> > ==========================================================
> > ============
> > > ========
> > > ---
> > > empire-db/trunk/empire-
> > db/src/main/java/org/apache/empire/db/postgresq
> > > l/PostgreDDLGenerator.java
> > > (original)
> > > +++
> > > empire-db/trunk/empire-
> > db/src/main/java/org/apache/empire/db/postgresq
> > > l/PostgreDDLGenerator.java
> > > Wed Jul 25 14:24:23 2012
> > > @@ -108,8 +108,7 @@ public class PostgreDDLGenerator extends
> > >       */
> > >      protected void createSequence(DBDatabase db, DBTableColumn c,
> > > DBSQLScript script)
> > >      {
> > > -        Object defValue = c.getDefaultValue();
> > > -        String seqName = (defValue != null) ? defValue.toString() :
> > > c.toString();
> > > +       String seqName = c.getSequenceName();
> > >          // createSQL
> > >          StringBuilder sql = new StringBuilder();
> > >          sql.append("-- creating sequence for column ");
> > >
> > > Modified:
> > > empire-db/trunk/empire-
> > db/src/test/java/org/apache/empire/db/hsql/DBDa
> > > tabaseDriverHSqlTest.java
> > > URL:
> > > http://svn.apache.org/viewvc/empire-db/trunk/empire-
> > db/src/test/java/o
> > >
> > rg/apache/empire/db/hsql/DBDatabaseDriverHSqlTest.java?rev=1365599&r1
> > =
> > > 1365598&r2=1365599&view=diff
> > >
> > >
> > ==========================================================
> > ============
> > > ========
> > > ---
> > > empire-db/trunk/empire-
> > db/src/test/java/org/apache/empire/db/hsql/DBDa
> > > tabaseDriverHSqlTest.java
> > > (original)
> > > +++
> > > empire-db/trunk/empire-
> > db/src/test/java/org/apache/empire/db/hsql/DBDa
> > > tabaseDriverHSqlTest.java
> > > Wed Jul 25 14:24:23 2012
> > > @@ -27,11 +27,16 @@ import java.util.Date;
> > >
> > >  import org.apache.empire.DBResource;
> > >  import org.apache.empire.DBResource.DB;
> > > +import org.apache.empire.data.DataMode; import
> > > +org.apache.empire.data.DataType;
> > >  import org.apache.empire.db.CompanyDB;  import
> > > org.apache.empire.db.DBCmdType;
> > > +import org.apache.empire.db.DBDatabase;
> > >  import org.apache.empire.db.DBDatabaseDriver;
> > >  import org.apache.empire.db.DBRecord;  import
> > > org.apache.empire.db.DBSQLScript;
> > > +import org.apache.empire.db.DBTable;
> > > +import org.apache.empire.db.DBTableColumn;
> > >  import org.junit.Rule;
> > >  import org.junit.Test;
> > >
> > > @@ -90,9 +95,70 @@ public class DBDatabaseDriverHSqlTest{
> > >
> > >          assertEquals("123456",
> > > emp.getString(db.EMPLOYEE.PHONE_NUMBER));
> > >
> > > +
> > >          script = new DBSQLScript();
> > >          db.getDriver().getDDLScript(DBCmdType.DROP, db.EMPLOYEE,
> script);
> > >          db.getDriver().getDDLScript(DBCmdType.DROP, db.DEPARTMENT,
> > > script);
> > >          script.run(db.getDriver(), conn, true);
> > >      }
> > > +
> > > +
> > > +    /**
> > > +     * See https://issues.apache.org/jira/browse/EMPIREDB-151
> > > +     */
> > > +    @Test
> > > +    public void testSequence(){
> > > +       Connection conn = dbResource.getConnection();
> > > +
> > > +        DBDatabaseDriver driver = dbResource.newDriver();
> > > +        SeqDB db = new SeqDB();
> > > +        db.open(driver, dbResource.getConnection());
> > > +        DBSQLScript script = new DBSQLScript();
> > > +        db.getCreateDDLScript(db.getDriver(), script);
> > > +        script.run(db.getDriver(), dbResource.getConnection(),
> > > + false);
> > > +
> > > +        DBRecord data = new DBRecord();
> > > +        data.create(db.DATA);
> > > +        data.setValue(db.DATA.VALUE, "test");
> > > +        data.update(conn);
> > > +
> > > +        final Object id = data.getLong(db.DATA.ID);
> > > +
> > > +        DBRecord read = new DBRecord();
> > > +        read.read(db.DATA, id, conn);
> > > +
> > > +        assertEquals("test", read.getString(db.DATA.VALUE));
> > > +
> > > +        script = new DBSQLScript();
> > > +        db.getDriver().getDDLScript(DBCmdType.DROP, db.DATA, script);
> > > +        script.run(db.getDriver(), conn, true);
> > > +    }
> > > +
> > > +    /**
> > > +     * This is the basic database for testing
> > > +     *
> > > +     */
> > > +    private class SeqDB extends DBDatabase
> > > +    {
> > > +        private final static long serialVersionUID = 1L;
> > > +        public final Data DATA = new Data(this);
> > > +    }
> > > +
> > > +    /**
> > > +     * For testing SEQUENCE auto generation stuff
> > > +     */
> > > +    public static class Data extends DBTable
> > > +    {
> > > +        private final static long serialVersionUID = 1L;
> > > +        public final DBTableColumn ID;
> > > +        public final DBTableColumn VALUE;
> > > +
> > > +        public Data(DBDatabase db)
> > > +        {
> > > +            super("DATA", db);
> > > +            ID    = addColumn("DATA_ID",
> > > DataType.AUTOINC,       0, DataMode.AutoGenerated);
> > > +            VALUE = addColumn("VALUE",          DataType.TEXT,
> > >   256, DataMode.NotNull);
> > > +            setPrimaryKey(ID);
> > > +        }
> > > +    }
> > >  }
> > >
> > >
> > >
> > >
>

Reply via email to