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]>