hammant     01/12/01 09:50:27

  Modified:    apps/db/src/java/org/apache/avalon/db/basic/actions
                        BasicCreateAggregateView.java BasicCriteria.java
                        BasicSelectSimple.java
               apps/db/src/java/org/apache/avalon/db/basic/data
                        BasicAggregateView.java
               apps/db/src/java/org/apache/avalon/db/data
                        AggregateKeyColumn.java Queryable.java
               apps/db/src/java/org/apache/avalon/db/data/impl
                        AbstractColumn.java AbstractDelegatedQueryable.java
                        AbstractQueryable.java
                        DefaultAggregateVarcharKeyColumn.java
                        DefaultBigIntColumn.java DefaultDateColumn.java
                        DefaultDecimalColumn.java DefaultIntegerColumn.java
                        DefaultRealColumn.java DefaultSmallIntColumn.java
                        DefaultTimeColumn.java DefaultTimestampColumn.java
                        DefaultVarCharColumn.java
               apps/db/src/scripts/lxsql Test1.script
  Log:
  Aggregates soooo close now.
  
  Revision  Changes    Path
  1.5       +9 -7      
jakarta-avalon-cornerstone/apps/db/src/java/org/apache/avalon/db/basic/actions/BasicCreateAggregateView.java
  
  Index: BasicCreateAggregateView.java
  ===================================================================
  RCS file: 
/home/cvs/jakarta-avalon-cornerstone/apps/db/src/java/org/apache/avalon/db/basic/actions/BasicCreateAggregateView.java,v
  retrieving revision 1.4
  retrieving revision 1.5
  diff -u -r1.4 -r1.5
  --- BasicCreateAggregateView.java     2001/12/01 15:30:41     1.4
  +++ BasicCreateAggregateView.java     2001/12/01 17:50:26     1.5
  @@ -12,6 +12,7 @@
   import org.apache.avalon.db.actions.ActionException;
   import org.apache.avalon.db.data.Queryable;
   import org.apache.avalon.db.data.Column;
  +import org.apache.avalon.db.data.DataException;
   import org.apache.avalon.db.basic.data.BasicAggregateView;
   import org.apache.avalon.db.services.DatabasePersistor;
   
  @@ -21,7 +22,7 @@
    *
    *
    * @author Paul Hammant <a href="mailto:[EMAIL PROTECTED]">[EMAIL 
PROTECTED]</a>
  - * @version $Revision: 1.4 $
  + * @version $Revision: 1.5 $
    */
   public class BasicCreateAggregateView extends BasicCreateQueryable 
implements CreateAggregateView {
   
  @@ -54,12 +55,13 @@
   
           System.out.println("cav execute");
   
  -        BasicAggregateView view = new BasicAggregateView(mViewName, 
mKeyColumns, mFunctionColumns, mSrcQueryable ,mBasicCriteria);
  -        view.enableLogging(this.getLogger());
  -
  -
  -
  -        mDatabasePersistor.addQueryable(mViewName, view);
  +        try {
  +          BasicAggregateView view = new BasicAggregateView(mViewName, 
mKeyColumns, mFunctionColumns, mSrcQueryable ,mBasicCriteria);
  +          view.enableLogging(this.getLogger());
  +          mDatabasePersistor.addQueryable(mViewName, view);
  +        } catch (DataException de) {
  +            throw new ActionException("Data Exception : " + de.getMessage());
  +        }
   
       }
   
  
  
  
  1.2       +4 -3      
jakarta-avalon-cornerstone/apps/db/src/java/org/apache/avalon/db/basic/actions/BasicCriteria.java
  
  Index: BasicCriteria.java
  ===================================================================
  RCS file: 
/home/cvs/jakarta-avalon-cornerstone/apps/db/src/java/org/apache/avalon/db/basic/actions/BasicCriteria.java,v
  retrieving revision 1.1
  retrieving revision 1.2
  diff -u -r1.1 -r1.2
  --- BasicCriteria.java        2001/11/29 10:35:26     1.1
  +++ BasicCriteria.java        2001/12/01 17:50:26     1.2
  @@ -13,6 +13,7 @@
   import org.apache.avalon.db.utils.RhinoException;
   import org.apache.avalon.db.data.Column;
   import org.apache.avalon.db.data.DataException;
  +import org.apache.avalon.db.data.Row;
   import org.apache.avalon.db.data.impl.DefaultStringConstantColumn;
   
   import org.apache.avalon.framework.logger.AbstractLogEnabled;
  @@ -95,7 +96,7 @@
           rh.executeScript(js);
       }
   
  -    public boolean testDataRow(BasicRow row) throws DataException {
  +    public boolean testDataRow(Row row) throws DataException {
           try {
               return testRow(row);
           } catch (RhinoException re) {
  @@ -103,7 +104,7 @@
           }
       }
   
  -    public boolean testActionRow(BasicRow row) throws ActionException {
  +    public boolean testActionRow(Row row) throws ActionException {
           try {
               return testRow(row);
           } catch (RhinoException re) {
  @@ -111,7 +112,7 @@
           }
       }
   
  -    private boolean testRow(BasicRow row) throws RhinoException {
  +    private boolean testRow(Row row) throws RhinoException {
           if(!mWhereClause.toString().equals("")) {
               RhinoHelper rh = new RhinoHelper();
               MatchingHelper mh = new MatchingHelper();
  
  
  
  1.3       +3 -2      
jakarta-avalon-cornerstone/apps/db/src/java/org/apache/avalon/db/basic/actions/BasicSelectSimple.java
  
  Index: BasicSelectSimple.java
  ===================================================================
  RCS file: 
/home/cvs/jakarta-avalon-cornerstone/apps/db/src/java/org/apache/avalon/db/basic/actions/BasicSelectSimple.java,v
  retrieving revision 1.2
  retrieving revision 1.3
  diff -u -r1.2 -r1.3
  --- BasicSelectSimple.java    2001/11/29 10:35:26     1.2
  +++ BasicSelectSimple.java    2001/12/01 17:50:26     1.3
  @@ -18,6 +18,7 @@
   import org.apache.avalon.db.basic.results.BasicRowSet;
   import org.apache.avalon.db.basic.results.BasicColumns;
   import org.apache.avalon.db.data.Column;
  +import org.apache.avalon.db.data.Row;
   import org.apache.avalon.db.data.impl.AbstractQueryable;
   import org.apache.avalon.framework.logger.LogEnabled;
   
  @@ -29,7 +30,7 @@
    * @author Gerhard Froehlich <a href="mailto:[EMAIL PROTECTED]">[EMAIL 
PROTECTED]</a>
    * @author Paul Hammant <a href="mailto:[EMAIL PROTECTED]">[EMAIL 
PROTECTED]</a>
    *
  - * @version $Revision: 1.2 $
  + * @version $Revision: 1.3 $
    */
   public class BasicSelectSimple extends AbstractAction implements 
Select,ParameterAdaptable,LogEnabled {
   
  @@ -70,7 +71,7 @@
               Iterator it = mQueryable.getRows().iterator();
               while(it.hasNext()) {
                   /** iterate rows and select only the needed cols */
  -                BasicRow row = (BasicRow)it.next();
  +                Row row = (Row) it.next();
                   if (mBasicCriteria.testActionRow(row)) {
                       getLogger().debug("specific select=" + mCols);
                       selectedRow = new Object[mCols.length];
  
  
  
  1.5       +11 -3     
jakarta-avalon-cornerstone/apps/db/src/java/org/apache/avalon/db/basic/data/BasicAggregateView.java
  
  Index: BasicAggregateView.java
  ===================================================================
  RCS file: 
/home/cvs/jakarta-avalon-cornerstone/apps/db/src/java/org/apache/avalon/db/basic/data/BasicAggregateView.java,v
  retrieving revision 1.4
  retrieving revision 1.5
  diff -u -r1.4 -r1.5
  --- BasicAggregateView.java   2001/12/01 15:30:42     1.4
  +++ BasicAggregateView.java   2001/12/01 17:50:26     1.5
  @@ -31,7 +31,7 @@
    *
    *
    * @author Paul Hammant <a href="mailto:[EMAIL PROTECTED]">[EMAIL 
PROTECTED]</a>
  - * @version $Revision: 1.4 $
  + * @version $Revision: 1.5 $
    */
   public class BasicAggregateView extends AbstractAggregateQueryable {
   
  @@ -41,7 +41,7 @@
       protected Column[] mKeyColumns;
       protected Column[] mFunctionColumns;
   
  -    public BasicAggregateView(String name, Column[] keyColumns, Column[] 
functionColumns, Queryable srcQueryable, BasicCriteria basicCriteria) {
  +    public BasicAggregateView(String name, Column[] keyColumns, Column[] 
functionColumns, Queryable srcQueryable, BasicCriteria basicCriteria) throws 
DataException {
           super(name, makeAllColumns(keyColumns, functionColumns));
           mKeyColumns = keyColumns;
           mFunctionColumns = functionColumns;
  @@ -139,6 +139,13 @@
               }
           };
           srcQueryable.addRowListener(mRowListener);
  +        Iterator it = srcQueryable.getRows().iterator();
  +        while (it.hasNext()) {
  +            Row row = (Row) it.next();
  +            if(mBasicCriteria.testDataRow((BasicRow) row)) {
  +                addRow(row);
  +            }
  +        }
       }
   
       public static Column[] makeAllColumns(Column[] keyColumns, Column[] 
functColumns) {
  @@ -169,7 +176,8 @@
           for (int i =0; i < mColumns.length; i++) {
               Column col = mColumns[i];
               if (col instanceof AggregateKeyColumn) {
  -                aggRow[i] = col.getValue(srcRow);
  +                AggregateKeyColumn akc = (AggregateKeyColumn) col;
  +                aggRow[i] = akc.getUnderlyingValue(srcRow);
               } else if (col instanceof AggregateFunctionColumn) {
                   AggregateFunctionColumn afc = (AggregateFunctionColumn) col;
                   aggRow[i] = afc.getDefaultValue();
  
  
  
  1.2       +1 -1      
jakarta-avalon-cornerstone/apps/db/src/java/org/apache/avalon/db/data/AggregateKeyColumn.java
  
  Index: AggregateKeyColumn.java
  ===================================================================
  RCS file: 
/home/cvs/jakarta-avalon-cornerstone/apps/db/src/java/org/apache/avalon/db/data/AggregateKeyColumn.java,v
  retrieving revision 1.1
  retrieving revision 1.2
  diff -u -r1.1 -r1.2
  --- AggregateKeyColumn.java   2001/11/28 23:09:58     1.1
  +++ AggregateKeyColumn.java   2001/12/01 17:50:26     1.2
  @@ -13,8 +13,8 @@
    *
    *
    * @author Paul Hammant <a href="mailto:[EMAIL PROTECTED]">[EMAIL 
PROTECTED]</a>
  - * @version * $Revision: 1.1 $
  + * @version * $Revision: 1.2 $
    */
   public interface AggregateKeyColumn extends Column {
  -
  +    Object getUnderlyingValue(Row row);
   }
  
  
  
  1.4       +2 -1      
jakarta-avalon-cornerstone/apps/db/src/java/org/apache/avalon/db/data/Queryable.java
  
  Index: Queryable.java
  ===================================================================
  RCS file: 
/home/cvs/jakarta-avalon-cornerstone/apps/db/src/java/org/apache/avalon/db/data/Queryable.java,v
  retrieving revision 1.3
  retrieving revision 1.4
  diff -u -r1.3 -r1.4
  --- Queryable.java    2001/11/17 17:04:27     1.3
  +++ Queryable.java    2001/12/01 17:50:26     1.4
  @@ -16,7 +16,7 @@
    *
    *
    * @author Paul Hammant <a href="mailto:[EMAIL PROTECTED]">[EMAIL 
PROTECTED]</a>
  - * @version * $Revision: 1.3 $
  + * @version * $Revision: 1.4 $
    */
   public interface Queryable extends Nameable, Cataloged {
       Column[] getColumns();
  @@ -24,5 +24,6 @@
       void addRow(Row row);
       void addRowListener(RowListener rowListener);
       void removeRowListener(RowListener rowListener);
  +    Collection getRows();
   
   }
  
  
  
  1.4       +2 -4      
jakarta-avalon-cornerstone/apps/db/src/java/org/apache/avalon/db/data/impl/AbstractColumn.java
  
  Index: AbstractColumn.java
  ===================================================================
  RCS file: 
/home/cvs/jakarta-avalon-cornerstone/apps/db/src/java/org/apache/avalon/db/data/impl/AbstractColumn.java,v
  retrieving revision 1.3
  retrieving revision 1.4
  diff -u -r1.3 -r1.4
  --- AbstractColumn.java       2001/11/17 17:31:31     1.3
  +++ AbstractColumn.java       2001/12/01 17:50:27     1.4
  @@ -22,7 +22,7 @@
    *
    * @author Paul Hammant <a href="mailto:[EMAIL PROTECTED]">[EMAIL 
PROTECTED]</a>
    * @author Gerhard Froehlich <a href="mailto:[EMAIL PROTECTED]">[EMAIL 
PROTECTED]</a>*
  - * @version $Revision: 1.3 $
  + * @version $Revision: 1.4 $
    */
   public abstract class AbstractColumn implements Column {
   
  @@ -48,9 +48,7 @@
       }
   
       // TODO can be overriden, or should be overridden
  -    public Object getValue(Row row) {
  -        return row.getValue(mIndex);
  -    }
  +    public abstract Object getValue(Row row);
   
       public void setIndex(int ix) {
           mIndex = ix;
  
  
  
  1.4       +6 -1      
jakarta-avalon-cornerstone/apps/db/src/java/org/apache/avalon/db/data/impl/AbstractDelegatedQueryable.java
  
  Index: AbstractDelegatedQueryable.java
  ===================================================================
  RCS file: 
/home/cvs/jakarta-avalon-cornerstone/apps/db/src/java/org/apache/avalon/db/data/impl/AbstractDelegatedQueryable.java,v
  retrieving revision 1.3
  retrieving revision 1.4
  diff -u -r1.3 -r1.4
  --- AbstractDelegatedQueryable.java   2001/11/19 10:20:25     1.3
  +++ AbstractDelegatedQueryable.java   2001/12/01 17:50:27     1.4
  @@ -18,6 +18,7 @@
   
   import java.util.Vector;
   import java.util.Iterator;
  +import java.util.Collection;
   import java.lang.ref.WeakReference;
   
   
  @@ -26,7 +27,7 @@
    *
    *
    * @author Paul Hammant <a href="mailto:[EMAIL PROTECTED]">[EMAIL 
PROTECTED]</a>
  - * @version $Revision: 1.3 $
  + * @version $Revision: 1.4 $
    */
   public abstract class AbstractDelegatedQueryable extends AbstractNameable 
implements Queryable {
   
  @@ -84,4 +85,8 @@
           mAbstractQueryable.removeRowListener(rowListener);
       }
   
  +    public Collection getRows() {
  +        // TODO
  +        return null;
  +    }
   }
  
  
  
  1.11      +1 -2      
jakarta-avalon-cornerstone/apps/db/src/java/org/apache/avalon/db/data/impl/AbstractQueryable.java
  
  Index: AbstractQueryable.java
  ===================================================================
  RCS file: 
/home/cvs/jakarta-avalon-cornerstone/apps/db/src/java/org/apache/avalon/db/data/impl/AbstractQueryable.java,v
  retrieving revision 1.10
  retrieving revision 1.11
  diff -u -r1.10 -r1.11
  --- AbstractQueryable.java    2001/12/01 15:30:42     1.10
  +++ AbstractQueryable.java    2001/12/01 17:50:27     1.11
  @@ -25,7 +25,7 @@
    *
    *
    * @author Paul Hammant <a href="mailto:[EMAIL PROTECTED]">[EMAIL 
PROTECTED]</a>
  - * @version $Revision: 1.10 $
  + * @version $Revision: 1.11 $
    */
   public abstract class AbstractQueryable extends AbstractNameable implements 
Queryable {
   
  @@ -54,7 +54,6 @@
           mCatalog = catalog;
       }
   
  -    public abstract Collection getRows();
   
   
       /**
  
  
  
  1.5       +9 -1      
jakarta-avalon-cornerstone/apps/db/src/java/org/apache/avalon/db/data/impl/DefaultAggregateVarcharKeyColumn.java
  
  Index: DefaultAggregateVarcharKeyColumn.java
  ===================================================================
  RCS file: 
/home/cvs/jakarta-avalon-cornerstone/apps/db/src/java/org/apache/avalon/db/data/impl/DefaultAggregateVarcharKeyColumn.java,v
  retrieving revision 1.4
  retrieving revision 1.5
  diff -u -r1.4 -r1.5
  --- DefaultAggregateVarcharKeyColumn.java     2001/12/01 11:49:25     1.4
  +++ DefaultAggregateVarcharKeyColumn.java     2001/12/01 17:50:27     1.5
  @@ -22,7 +22,7 @@
    *
    *
    * @author Paul Hammant <a href="mailto:[EMAIL PROTECTED]">[EMAIL 
PROTECTED]</a>
  - * @version $Revision: 1.4 $
  + * @version $Revision: 1.5 $
    */
   public class DefaultAggregateVarcharKeyColumn extends AbstractColumn 
implements AggregateKeyColumn, StringColumn {
   
  @@ -40,6 +40,14 @@
           super(stringColumn.getName(), "varchar", String.class.getName());
           mAlias = alias;
           mStringColumn = stringColumn;
  +    }
  +
  +    public Object getValue(Row row) {
  +        return row.getValue(mIndex);
  +    }
  +
  +    public Object getUnderlyingValue(Row row) {
  +        return mStringColumn.getValue(row);
       }
   
       public Integer toInteger(Row row) {
  
  
  
  1.3       +5 -1      
jakarta-avalon-cornerstone/apps/db/src/java/org/apache/avalon/db/data/impl/DefaultBigIntColumn.java
  
  Index: DefaultBigIntColumn.java
  ===================================================================
  RCS file: 
/home/cvs/jakarta-avalon-cornerstone/apps/db/src/java/org/apache/avalon/db/data/impl/DefaultBigIntColumn.java,v
  retrieving revision 1.2
  retrieving revision 1.3
  diff -u -r1.2 -r1.3
  --- DefaultBigIntColumn.java  2001/12/01 10:49:43     1.2
  +++ DefaultBigIntColumn.java  2001/12/01 17:50:27     1.3
  @@ -18,7 +18,7 @@
    * Class DefaultBigIntColumn
    *
    * @author Gerhard Froehlich <a href="mailto:[EMAIL PROTECTED]">[EMAIL 
PROTECTED]</a>
  - * @version $Revision: 1.2 $
  + * @version $Revision: 1.3 $
    */
   public class DefaultBigIntColumn extends AbstractWritableColumn implements 
NumericColumn {
   
  @@ -42,6 +42,10 @@
           } catch (NumberFormatException nfe) {
               throw new ValidationException("Bigint " + mName + " is not a 
valid number (" + obj + ")");
           }
  +    }
  +
  +    public Object getValue(Row row) {
  +        return row.getValue(mIndex);
       }
   
       public Integer toInteger(Row row) {
  
  
  
  1.3       +5 -1      
jakarta-avalon-cornerstone/apps/db/src/java/org/apache/avalon/db/data/impl/DefaultDateColumn.java
  
  Index: DefaultDateColumn.java
  ===================================================================
  RCS file: 
/home/cvs/jakarta-avalon-cornerstone/apps/db/src/java/org/apache/avalon/db/data/impl/DefaultDateColumn.java,v
  retrieving revision 1.2
  retrieving revision 1.3
  diff -u -r1.2 -r1.3
  --- DefaultDateColumn.java    2001/12/01 10:49:43     1.2
  +++ DefaultDateColumn.java    2001/12/01 17:50:27     1.3
  @@ -20,7 +20,7 @@
    * Class DefaultDateColumn
    *
    * @author Paul Hammant <a href="mailto:[EMAIL PROTECTED]">[EMAIL 
PROTECTED]</a>
  - * @version $Revision: 1.2 $
  + * @version $Revision: 1.3 $
    */
   public class DefaultDateColumn extends AbstractWritableColumn implements 
TemporalColumn {
   
  @@ -44,6 +44,10 @@
           } catch (IllegalArgumentException iae) {
               throw new ValidationException("Date " + mName + " is not a valid 
format (" + obj + ")");
           }
  +    }
  +
  +    public Object getValue(Row row) {
  +          return row.getValue(mIndex);
       }
   
       public int getPrecesion() {
  
  
  
  1.3       +5 -1      
jakarta-avalon-cornerstone/apps/db/src/java/org/apache/avalon/db/data/impl/DefaultDecimalColumn.java
  
  Index: DefaultDecimalColumn.java
  ===================================================================
  RCS file: 
/home/cvs/jakarta-avalon-cornerstone/apps/db/src/java/org/apache/avalon/db/data/impl/DefaultDecimalColumn.java,v
  retrieving revision 1.2
  retrieving revision 1.3
  diff -u -r1.2 -r1.3
  --- DefaultDecimalColumn.java 2001/12/01 10:49:43     1.2
  +++ DefaultDecimalColumn.java 2001/12/01 17:50:27     1.3
  @@ -18,7 +18,7 @@
    * Class DefaultDecimalColumn
    *
    * @author Gerhard Froehlich <a href="mailto:[EMAIL PROTECTED]">[EMAIL 
PROTECTED]</a>
  - * @version $Revision: 1.2 $
  + * @version $Revision: 1.3 $
    */
   public class DefaultDecimalColumn extends AbstractWritableColumn implements 
NumericColumn {
   
  @@ -42,6 +42,10 @@
           } catch (NumberFormatException nfe) {
               throw new ValidationException("Decimal " + mName + " is not a 
valid number (" + obj + ")");
           }
  +    }
  +
  +    public Object getValue(Row row) {
  +          return row.getValue(mIndex);
       }
   
       public Integer toInteger(Row row) {
  
  
  
  1.3       +5 -1      
jakarta-avalon-cornerstone/apps/db/src/java/org/apache/avalon/db/data/impl/DefaultIntegerColumn.java
  
  Index: DefaultIntegerColumn.java
  ===================================================================
  RCS file: 
/home/cvs/jakarta-avalon-cornerstone/apps/db/src/java/org/apache/avalon/db/data/impl/DefaultIntegerColumn.java,v
  retrieving revision 1.2
  retrieving revision 1.3
  diff -u -r1.2 -r1.3
  --- DefaultIntegerColumn.java 2001/12/01 10:49:43     1.2
  +++ DefaultIntegerColumn.java 2001/12/01 17:50:27     1.3
  @@ -21,7 +21,7 @@
    *
    *
    * @author Paul Hammant <a href="mailto:[EMAIL PROTECTED]">[EMAIL 
PROTECTED]</a>
  - * @version $Revision: 1.2 $
  + * @version $Revision: 1.3 $
    */
   public class DefaultIntegerColumn extends AbstractWritableColumn implements 
NumericColumn {
   
  @@ -48,6 +48,10 @@
           } catch (NumberFormatException nfe) {
               throw new ValidationException("Integer " + mName + " is not a 
valid number (" + obj + ")");
           }
  +    }
  +
  +    public Object getValue(Row row) {
  +          return row.getValue(mIndex);
       }
   
       public Integer toInteger(Row row) {
  
  
  
  1.3       +5 -1      
jakarta-avalon-cornerstone/apps/db/src/java/org/apache/avalon/db/data/impl/DefaultRealColumn.java
  
  Index: DefaultRealColumn.java
  ===================================================================
  RCS file: 
/home/cvs/jakarta-avalon-cornerstone/apps/db/src/java/org/apache/avalon/db/data/impl/DefaultRealColumn.java,v
  retrieving revision 1.2
  retrieving revision 1.3
  diff -u -r1.2 -r1.3
  --- DefaultRealColumn.java    2001/12/01 10:49:43     1.2
  +++ DefaultRealColumn.java    2001/12/01 17:50:27     1.3
  @@ -18,7 +18,7 @@
    * Class DefaultRealColumn
    *
    * @author Gerhard Froehlich <a href="mailto:[EMAIL PROTECTED]">[EMAIL 
PROTECTED]</a>
  - * @version $Revision: 1.2 $
  + * @version $Revision: 1.3 $
    */
   public class DefaultRealColumn extends AbstractWritableColumn implements 
NumericColumn {
   
  @@ -42,6 +42,10 @@
           } catch (NumberFormatException nfe) {
               throw new ValidationException("Real " + mName + " is not a valid 
number (" + obj + ")");
           }
  +    }
  +
  +    public Object getValue(Row row) {
  +          return row.getValue(mIndex);
       }
   
       public Integer toInteger(Row row) {
  
  
  
  1.3       +5 -1      
jakarta-avalon-cornerstone/apps/db/src/java/org/apache/avalon/db/data/impl/DefaultSmallIntColumn.java
  
  Index: DefaultSmallIntColumn.java
  ===================================================================
  RCS file: 
/home/cvs/jakarta-avalon-cornerstone/apps/db/src/java/org/apache/avalon/db/data/impl/DefaultSmallIntColumn.java,v
  retrieving revision 1.2
  retrieving revision 1.3
  diff -u -r1.2 -r1.3
  --- DefaultSmallIntColumn.java        2001/12/01 10:49:43     1.2
  +++ DefaultSmallIntColumn.java        2001/12/01 17:50:27     1.3
  @@ -18,7 +18,7 @@
    * Class DefaultSmallIntColumn
    *
    * @author Gerhard Froehlich <a href="mailto:[EMAIL PROTECTED]">[EMAIL 
PROTECTED]</a>
  - * @version $Revision: 1.2 $
  + * @version $Revision: 1.3 $
    */
   public class DefaultSmallIntColumn extends AbstractWritableColumn implements 
NumericColumn {
   
  @@ -42,6 +42,10 @@
           } catch (NumberFormatException nfe) {
               throw new ValidationException("SmallInt " + mName + " is not a 
valid number (" + obj + ")");
           }
  +    }
  +
  +    public Object getValue(Row row) {
  +          return row.getValue(mIndex);
       }
   
       public Integer toInteger(Row row) {
  
  
  
  1.3       +5 -1      
jakarta-avalon-cornerstone/apps/db/src/java/org/apache/avalon/db/data/impl/DefaultTimeColumn.java
  
  Index: DefaultTimeColumn.java
  ===================================================================
  RCS file: 
/home/cvs/jakarta-avalon-cornerstone/apps/db/src/java/org/apache/avalon/db/data/impl/DefaultTimeColumn.java,v
  retrieving revision 1.2
  retrieving revision 1.3
  diff -u -r1.2 -r1.3
  --- DefaultTimeColumn.java    2001/12/01 10:49:43     1.2
  +++ DefaultTimeColumn.java    2001/12/01 17:50:27     1.3
  @@ -18,7 +18,7 @@
    * Class DefaultTimeColumn
    *
    * @author Paul Hammant <a href="mailto:[EMAIL PROTECTED]">[EMAIL 
PROTECTED]</a>
  - * @version $Revision: 1.2 $
  + * @version $Revision: 1.3 $
    */
   public class DefaultTimeColumn extends AbstractWritableColumn implements 
TemporalColumn {
   
  @@ -42,6 +42,10 @@
           } catch (IllegalArgumentException iae) {
               throw new ValidationException("Time " + mName + " is not a valid 
format (" + obj + ")");
           }
  +    }
  +
  +    public Object getValue(Row row) {
  +          return row.getValue(mIndex);
       }
   
       public int getPrecesion() {
  
  
  
  1.3       +7 -1      
jakarta-avalon-cornerstone/apps/db/src/java/org/apache/avalon/db/data/impl/DefaultTimestampColumn.java
  
  Index: DefaultTimestampColumn.java
  ===================================================================
  RCS file: 
/home/cvs/jakarta-avalon-cornerstone/apps/db/src/java/org/apache/avalon/db/data/impl/DefaultTimestampColumn.java,v
  retrieving revision 1.2
  retrieving revision 1.3
  diff -u -r1.2 -r1.3
  --- DefaultTimestampColumn.java       2001/12/01 10:49:43     1.2
  +++ DefaultTimestampColumn.java       2001/12/01 17:50:27     1.3
  @@ -18,7 +18,7 @@
    * Class DefaultTimestampColumn
    *
    * @author Paul Hammant <a href="mailto:[EMAIL PROTECTED]">[EMAIL 
PROTECTED]</a>
  - * @version $Revision: 1.2 $
  + * @version $Revision: 1.3 $
    */
   public class DefaultTimestampColumn extends AbstractWritableColumn 
implements TemporalColumn {
   
  @@ -43,6 +43,12 @@
               throw new ValidationException("Timestamp " + mName + " is not a 
valid format (" + obj + ")");
           }
       }
  +
  +    public Object getValue(Row row) {
  +          return row.getValue(mIndex);
  +    }
  +
  +
   
       public int getPrecesion() {
           return Column.PREC_TIMESTAMP;
  
  
  
  1.3       +5 -1      
jakarta-avalon-cornerstone/apps/db/src/java/org/apache/avalon/db/data/impl/DefaultVarCharColumn.java
  
  Index: DefaultVarCharColumn.java
  ===================================================================
  RCS file: 
/home/cvs/jakarta-avalon-cornerstone/apps/db/src/java/org/apache/avalon/db/data/impl/DefaultVarCharColumn.java,v
  retrieving revision 1.2
  retrieving revision 1.3
  diff -u -r1.2 -r1.3
  --- DefaultVarCharColumn.java 2001/12/01 10:49:43     1.2
  +++ DefaultVarCharColumn.java 2001/12/01 17:50:27     1.3
  @@ -21,7 +21,7 @@
    *
    * @author Paul Hammant <a href="mailto:[EMAIL PROTECTED]">[EMAIL 
PROTECTED]</a>
    * @author Gerhard Froehlich <a href="mailto:[EMAIL PROTECTED]">[EMAIL 
PROTECTED]</a>*
  - * @version $Revision: 1.2 $
  + * @version $Revision: 1.3 $
    */
   public class DefaultVarCharColumn extends AbstractWritableColumn implements 
StringColumn {
   
  @@ -46,6 +46,10 @@
               throw new ValidationException("String " + mName + " is too long 
at " + str.length());
           }
           return str;
  +    }
  +
  +    public Object getValue(Row row) {
  +          return row.getValue(mIndex);
       }
   
       public String toString(Row row) {
  
  
  
  1.3       +15 -1     
jakarta-avalon-cornerstone/apps/db/src/scripts/lxsql/Test1.script
  
  Index: Test1.script
  ===================================================================
  RCS file: 
/home/cvs/jakarta-avalon-cornerstone/apps/db/src/scripts/lxsql/Test1.script,v
  retrieving revision 1.2
  retrieving revision 1.3
  diff -u -r1.2 -r1.3
  --- Test1.script      2001/12/01 15:30:42     1.2
  +++ Test1.script      2001/12/01 17:50:27     1.3
  @@ -83,7 +83,8 @@
   
   <simple-select>
     <columns>
  -    <column name="*"/>
  +    <column name="forename"/>
  +    <column name="surname"/>
     </columns>
     <from>
       <table name="FlintstonesView"/>
  @@ -155,5 +156,18 @@
       <sum as="sumAge" on="age"/>
     </group-function-columns>
   </create-aggregate-view>
  +
  +### SELECT 5 (all from aggregate view) ##!
  +
  +<simple-select>
  +  <columns>
  +    <column name="surname"/>
  +    <column name="surCount"/>
  +    <column name="maxAge"/>
  +  </columns>
  +  <from>
  +    <table name="FlintstonesAggView"/>
  +  </from>
  +</simple-select>
   
   ###
  
  
  

--
To unsubscribe, e-mail:   <mailto:[EMAIL PROTECTED]>
For additional commands, e-mail: <mailto:[EMAIL PROTECTED]>

Reply via email to