froehlich 01/11/17 09:31:49
Modified: apps/db/src/java/org/apache/avalon/db/data/impl
ConcatVarCharColumn.java
ContrivedStringFunctionColumn.java DateColumn.java
DecimalColumn.java IntegerColumn.java
RealColumn.java SmallIntColumn.java
StringConstantColumn.java TimeColumn.java
TimestampColumn.java VarCharColumn.java
Log:
added operator handling
Revision Changes Path
1.4 +32 -1
jakarta-avalon-cornerstone/apps/db/src/java/org/apache/avalon/db/data/impl/Attic/ConcatVarCharColumn.java
1.3 +32 -1
jakarta-avalon-cornerstone/apps/db/src/java/org/apache/avalon/db/data/impl/ContrivedStringFunctionColumn.java
Index: ContrivedStringFunctionColumn.java
===================================================================
RCS file:
/home/cvs/jakarta-avalon-cornerstone/apps/db/src/java/org/apache/avalon/db/data/impl/ContrivedStringFunctionColumn.java,v
retrieving revision 1.2
retrieving revision 1.3
diff -u -r1.2 -r1.3
--- ContrivedStringFunctionColumn.java 2001/11/17 13:46:50 1.2
+++ ContrivedStringFunctionColumn.java 2001/11/17 17:31:49 1.3
@@ -9,18 +9,21 @@
package org.apache.avalon.db.data.impl;
import org.apache.avalon.db.data.types.StringType;
+import org.apache.avalon.db.data.types.Type;
import org.apache.avalon.db.data.ValidationException;
import org.apache.avalon.db.data.Row;
import org.apache.avalon.db.functions.StringFunction;
import org.apache.avalon.db.actions.ActionException;
+import java.math.BigDecimal;
+
/**
* Class ContrivedStringFunctionColumn
*
*
* @author Paul Hammant <a href="mailto:[EMAIL PROTECTED]">[EMAIL
PROTECTED]</a>
- * @version $Revision: 1.2 $
+ * @version $Revision: 1.3 $
*/
public class ContrivedStringFunctionColumn extends AbstractContrivedColumn
implements StringType {
@@ -41,5 +44,33 @@
public Object getValue(Row row) {
return mStringFunction.getValue(row);
+ }
+
+ public String toString(Row row) {
+ return (String)row.getValue(mIndex);
+ }
+
+ public int getPrecesion() {
+ return Type.PREC_STRING;
+ }
+
+ public Integer toInteger(Row row) {
+ return null;
+ }
+
+ public Long toLong(Row row) {
+ return null;
+ }
+
+ public BigDecimal toBigDecimal(Row row) {
+ return null;
+ }
+
+ public Float toFloat(Row row) {
+ return null;
+ }
+
+ public Short toShort(Row row) {
+ return null;
}
}
1.4 +32 -1
jakarta-avalon-cornerstone/apps/db/src/java/org/apache/avalon/db/data/impl/DateColumn.java
Index: DateColumn.java
===================================================================
RCS file:
/home/cvs/jakarta-avalon-cornerstone/apps/db/src/java/org/apache/avalon/db/data/impl/DateColumn.java,v
retrieving revision 1.3
retrieving revision 1.4
diff -u -r1.3 -r1.4
--- DateColumn.java 2001/11/17 10:12:09 1.3
+++ DateColumn.java 2001/11/17 17:31:49 1.4
@@ -8,16 +8,19 @@
package org.apache.avalon.db.data.impl;
import org.apache.avalon.db.data.ValidationException;
+import org.apache.avalon.db.data.Row;
import org.apache.avalon.db.data.types.TemporalType;
+import org.apache.avalon.db.data.types.Type;
import java.sql.Date;
+import java.math.BigDecimal;
/**
* Class DateColumn
*
* @author Paul Hammant <a href="mailto:[EMAIL PROTECTED]">[EMAIL
PROTECTED]</a>
- * @version $Revision: 1.3 $
+ * @version $Revision: 1.4 $
*/
public class DateColumn extends AbstractWritableColumn implements
TemporalType {
@@ -41,5 +44,33 @@
} catch (IllegalArgumentException iae) {
throw new ValidationException("Date " + mName + " is not a valid
format (" + obj + ")");
}
+ }
+
+ public int getPrecesion() {
+ return Type.PREC_DATE;
+ }
+
+ public Integer toInteger(Row row) {
+ return null;
+ }
+
+ public Long toLong(Row row) {
+ return null;
+ }
+
+ public BigDecimal toBigDecimal(Row row) {
+ return null;
+ }
+
+ public Float toFloat(Row row) {
+ return null;
+ }
+
+ public Short toShort(Row row) {
+ return null;
+ }
+
+ public String toString(Row row) {
+ return null;
}
}
1.5 +31 -1
jakarta-avalon-cornerstone/apps/db/src/java/org/apache/avalon/db/data/impl/DecimalColumn.java
Index: DecimalColumn.java
===================================================================
RCS file:
/home/cvs/jakarta-avalon-cornerstone/apps/db/src/java/org/apache/avalon/db/data/impl/DecimalColumn.java,v
retrieving revision 1.4
retrieving revision 1.5
diff -u -r1.4 -r1.5
--- DecimalColumn.java 2001/11/17 10:12:09 1.4
+++ DecimalColumn.java 2001/11/17 17:31:49 1.5
@@ -9,6 +9,8 @@
import org.apache.avalon.db.data.ValidationException;
import org.apache.avalon.db.data.types.NumericType;
+import org.apache.avalon.db.data.types.Type;
+import org.apache.avalon.db.data.Row;
import java.math.BigDecimal;
@@ -16,7 +18,7 @@
* Class DecimalColumn
*
* @author Gerhard Froehlich <a href="mailto:[EMAIL PROTECTED]">[EMAIL
PROTECTED]</a>
- * @version $Revision: 1.4 $
+ * @version $Revision: 1.5 $
*/
public class DecimalColumn extends AbstractWritableColumn implements
NumericType {
@@ -40,5 +42,33 @@
} catch (NumberFormatException nfe) {
throw new ValidationException("Decimal " + mName + " is not a
valid number (" + obj + ")");
}
+ }
+
+ public Integer toInteger(Row row) {
+ return new Integer(((BigDecimal)row.getValue(mIndex)).intValue());
+ }
+
+ public Long toLong(Row row) {
+ return new Long(((BigDecimal)row.getValue(mIndex)).longValue());
+ }
+
+ public BigDecimal toBigDecimal(Row row) {
+ return (BigDecimal)row.getValue(mIndex);
+ }
+
+ public Float toFloat(Row row) {
+ return new Float(((BigDecimal)row.getValue(mIndex)).floatValue());
+ }
+
+ public Short toShort(Row row) {
+ return new Short(((BigDecimal)row.getValue(mIndex)).shortValue());
+ }
+
+ public int getPrecesion() {
+ return Type.PREC_BIGDEC;
+ }
+
+ public String toString(Row row) {
+ return ((BigDecimal)row.getValue(mIndex)).toString();
}
}
1.5 +33 -1
jakarta-avalon-cornerstone/apps/db/src/java/org/apache/avalon/db/data/impl/IntegerColumn.java
Index: IntegerColumn.java
===================================================================
RCS file:
/home/cvs/jakarta-avalon-cornerstone/apps/db/src/java/org/apache/avalon/db/data/impl/IntegerColumn.java,v
retrieving revision 1.4
retrieving revision 1.5
diff -u -r1.4 -r1.5
--- IntegerColumn.java 2001/11/17 10:12:09 1.4
+++ IntegerColumn.java 2001/11/17 17:31:49 1.5
@@ -10,14 +10,18 @@
import org.apache.avalon.db.data.ValidationException;
import org.apache.avalon.db.data.types.NumericType;
+import org.apache.avalon.db.data.types.Type;
+import org.apache.avalon.db.data.Row;
+import java.math.BigDecimal;
+
/**
* Class IntegerColumn
*
*
* @author Paul Hammant <a href="mailto:[EMAIL PROTECTED]">[EMAIL
PROTECTED]</a>
- * @version $Revision: 1.4 $
+ * @version $Revision: 1.5 $
*/
public class IntegerColumn extends AbstractWritableColumn implements
NumericType {
@@ -44,5 +48,33 @@
} catch (NumberFormatException nfe) {
throw new ValidationException("Integer " + mName + " is not a
valid number (" + obj + ")");
}
+ }
+
+ public Integer toInteger(Row row) {
+ return (Integer)row.getValue(mIndex);
+ }
+
+ public Long toLong(Row row) {
+ return new Long(((Integer)row.getValue(mIndex)).longValue());
+ }
+
+ public BigDecimal toBigDecimal(Row row) {
+ return new BigDecimal(((Integer)row.getValue(mIndex)).doubleValue());
+ }
+
+ public Float toFloat(Row row) {
+ return new Float(((Integer)row.getValue(mIndex)).floatValue());
+ }
+
+ public Short toShort(Row row) {
+ return new Short(((Integer)row.getValue(mIndex)).shortValue());
+ }
+
+ public int getPrecesion() {
+ return Type.PREC_INT;
+ }
+
+ public String toString(Row row) {
+ return ((Integer)row.getValue(mIndex)).toString();
}
}
1.5 +33 -1
jakarta-avalon-cornerstone/apps/db/src/java/org/apache/avalon/db/data/impl/RealColumn.java
Index: RealColumn.java
===================================================================
RCS file:
/home/cvs/jakarta-avalon-cornerstone/apps/db/src/java/org/apache/avalon/db/data/impl/RealColumn.java,v
retrieving revision 1.4
retrieving revision 1.5
diff -u -r1.4 -r1.5
--- RealColumn.java 2001/11/17 10:12:09 1.4
+++ RealColumn.java 2001/11/17 17:31:49 1.5
@@ -9,12 +9,16 @@
import org.apache.avalon.db.data.ValidationException;
import org.apache.avalon.db.data.types.NumericType;
+import org.apache.avalon.db.data.types.Type;
+import org.apache.avalon.db.data.Row;
+import java.math.BigDecimal;
+
/**
* Class RealColumn
*
* @author Gerhard Froehlich <a href="mailto:[EMAIL PROTECTED]">[EMAIL
PROTECTED]</a>
- * @version $Revision: 1.4 $
+ * @version $Revision: 1.5 $
*/
public class RealColumn extends AbstractWritableColumn implements
NumericType {
@@ -38,5 +42,33 @@
} catch (NumberFormatException nfe) {
throw new ValidationException("Real " + mName + " is not a valid
number (" + obj + ")");
}
+ }
+
+ public Integer toInteger(Row row) {
+ return new Integer(((Float)row.getValue(mIndex)).intValue());
+ }
+
+ public Long toLong(Row row) {
+ return new Long(((Float)row.getValue(mIndex)).longValue());
+ }
+
+ public BigDecimal toBigDecimal(Row row) {
+ return new BigDecimal(((Float)row.getValue(mIndex)).doubleValue());
+ }
+
+ public Float toFloat(Row row) {
+ return (Float)row.getValue(mIndex);
+ }
+
+ public Short toShort(Row row) {
+ return new Short(((Float)row.getValue(mIndex)).shortValue());
+ }
+
+ public int getPrecesion() {
+ return Type.PREC_FLOAT;
+ }
+
+ public String toString(Row row) {
+ return ((Float)row.getValue(mIndex)).toString();
}
}
1.6 +33 -1
jakarta-avalon-cornerstone/apps/db/src/java/org/apache/avalon/db/data/impl/SmallIntColumn.java
Index: SmallIntColumn.java
===================================================================
RCS file:
/home/cvs/jakarta-avalon-cornerstone/apps/db/src/java/org/apache/avalon/db/data/impl/SmallIntColumn.java,v
retrieving revision 1.5
retrieving revision 1.6
diff -u -r1.5 -r1.6
--- SmallIntColumn.java 2001/11/17 10:12:09 1.5
+++ SmallIntColumn.java 2001/11/17 17:31:49 1.6
@@ -9,12 +9,16 @@
import org.apache.avalon.db.data.ValidationException;
import org.apache.avalon.db.data.types.NumericType;
+import org.apache.avalon.db.data.types.Type;
+import org.apache.avalon.db.data.Row;
+import java.math.BigDecimal;
+
/**
* Class SmallIntColumn
*
* @author Gerhard Froehlich <a href="mailto:[EMAIL PROTECTED]">[EMAIL
PROTECTED]</a>
- * @version $Revision: 1.5 $
+ * @version $Revision: 1.6 $
*/
public class SmallIntColumn extends AbstractWritableColumn implements
NumericType {
@@ -38,5 +42,33 @@
} catch (NumberFormatException nfe) {
throw new ValidationException("SmallInt " + mName + " is not a
valid number (" + obj + ")");
}
+ }
+
+ public Integer toInteger(Row row) {
+ return new Integer(((Short)row.getValue(mIndex)).intValue());
+ }
+
+ public Long toLong(Row row) {
+ return new Long(((Short)row.getValue(mIndex)).longValue());
+ }
+
+ public BigDecimal toBigDecimal(Row row) {
+ return new BigDecimal(((Short)row.getValue(mIndex)).doubleValue());
+ }
+
+ public Float toFloat(Row row) {
+ return new Float(((Short)row.getValue(mIndex)).floatValue());
+ }
+
+ public Short toShort(Row row) {
+ return (Short)row.getValue(mIndex);
+ }
+
+ public int getPrecesion() {
+ return Type.PREC_SHORT;
+ }
+
+ public String toString(Row row) {
+ return ((Short)row.getValue(mIndex)).toString();
}
}
1.3 +33 -3
jakarta-avalon-cornerstone/apps/db/src/java/org/apache/avalon/db/data/impl/StringConstantColumn.java
Index: StringConstantColumn.java
===================================================================
RCS file:
/home/cvs/jakarta-avalon-cornerstone/apps/db/src/java/org/apache/avalon/db/data/impl/StringConstantColumn.java,v
retrieving revision 1.2
retrieving revision 1.3
diff -u -r1.2 -r1.3
--- StringConstantColumn.java 2001/11/17 13:46:50 1.2
+++ StringConstantColumn.java 2001/11/17 17:31:49 1.3
@@ -10,8 +10,10 @@
import org.apache.avalon.db.data.ValidationException;
import org.apache.avalon.db.data.Row;
-import org.apache.avalon.db.data.types.StringType;
+import org.apache.avalon.db.data.types.StringConstantType;
+import org.apache.avalon.db.data.types.Type;
+import java.math.BigDecimal;
/**
* Class StringConstantColumn
@@ -19,9 +21,9 @@
*
* @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 StringConstantColumn extends AbstractColumn implements
StringType {
+public class StringConstantColumn extends AbstractColumn implements
StringConstantType {
private String mStrConstant;
@@ -40,5 +42,33 @@
public Object getValue(Row row) {
return mStrConstant;
+ }
+
+ public String toString(Row row) {
+ return mStrConstant;
+ }
+
+ public Integer toInteger(Row row) {
+ return new Integer(mStrConstant);
+ }
+
+ public Long toLong(Row row) {
+ return new Long(mStrConstant);
+ }
+
+ public BigDecimal toBigDecimal(Row row) {
+ return new BigDecimal(mStrConstant);
+ }
+
+ public Float toFloat(Row row) {
+ return new Float(mStrConstant);
+ }
+
+ public Short toShort(Row row) {
+ return new Short(mStrConstant);
+ }
+
+ public int getPrecesion() {
+ return Type.PREC_CONST;
}
}
1.4 +32 -1
jakarta-avalon-cornerstone/apps/db/src/java/org/apache/avalon/db/data/impl/TimeColumn.java
Index: TimeColumn.java
===================================================================
RCS file:
/home/cvs/jakarta-avalon-cornerstone/apps/db/src/java/org/apache/avalon/db/data/impl/TimeColumn.java,v
retrieving revision 1.3
retrieving revision 1.4
diff -u -r1.3 -r1.4
--- TimeColumn.java 2001/11/17 10:12:09 1.3
+++ TimeColumn.java 2001/11/17 17:31:49 1.4
@@ -8,15 +8,18 @@
package org.apache.avalon.db.data.impl;
import org.apache.avalon.db.data.ValidationException;
+import org.apache.avalon.db.data.Row;
import org.apache.avalon.db.data.types.TemporalType;
+import org.apache.avalon.db.data.types.Type;
import java.sql.Time;
+import java.math.BigDecimal;
/**
* Class TimeColumn
*
* @author Paul Hammant <a href="mailto:[EMAIL PROTECTED]">[EMAIL
PROTECTED]</a>
- * @version $Revision: 1.3 $
+ * @version $Revision: 1.4 $
*/
public class TimeColumn extends AbstractWritableColumn implements
TemporalType {
@@ -40,5 +43,33 @@
} catch (IllegalArgumentException iae) {
throw new ValidationException("Time " + mName + " is not a valid
format (" + obj + ")");
}
+ }
+
+ public int getPrecesion() {
+ return Type.PREC_TIME;
+ }
+
+ public Integer toInteger(Row row) {
+ return null;
+ }
+
+ public Long toLong(Row row) {
+ return null;
+ }
+
+ public BigDecimal toBigDecimal(Row row) {
+ return null;
+ }
+
+ public Float toFloat(Row row) {
+ return null;
+ }
+
+ public Short toShort(Row row) {
+ return null;
+ }
+
+ public String toString(Row row) {
+ return null;
}
}
1.4 +32 -1
jakarta-avalon-cornerstone/apps/db/src/java/org/apache/avalon/db/data/impl/TimestampColumn.java
Index: TimestampColumn.java
===================================================================
RCS file:
/home/cvs/jakarta-avalon-cornerstone/apps/db/src/java/org/apache/avalon/db/data/impl/TimestampColumn.java,v
retrieving revision 1.3
retrieving revision 1.4
diff -u -r1.3 -r1.4
--- TimestampColumn.java 2001/11/17 10:12:09 1.3
+++ TimestampColumn.java 2001/11/17 17:31:49 1.4
@@ -8,15 +8,18 @@
package org.apache.avalon.db.data.impl;
import org.apache.avalon.db.data.ValidationException;
+import org.apache.avalon.db.data.Row;
import org.apache.avalon.db.data.types.TemporalType;
+import org.apache.avalon.db.data.types.Type;
import java.sql.Timestamp;
+import java.math.BigDecimal;
/**
* Class TimestampColumn
*
* @author Paul Hammant <a href="mailto:[EMAIL PROTECTED]">[EMAIL
PROTECTED]</a>
- * @version $Revision: 1.3 $
+ * @version $Revision: 1.4 $
*/
public class TimestampColumn extends AbstractWritableColumn implements
TemporalType {
@@ -40,5 +43,33 @@
} catch (IllegalArgumentException iae) {
throw new ValidationException("Timestamp " + mName + " is not a
valid format (" + obj + ")");
}
+ }
+
+ public int getPrecesion() {
+ return Type.PREC_TIMESTAMP;
+ }
+
+ public Integer toInteger(Row row) {
+ return null;
+ }
+
+ public Long toLong(Row row) {
+ return null;
+ }
+
+ public BigDecimal toBigDecimal(Row row) {
+ return null;
+ }
+
+ public Float toFloat(Row row) {
+ return null;
+ }
+
+ public Short toShort(Row row) {
+ return null;
+ }
+
+ public String toString(Row row) {
+ return null;
}
}
1.6 +33 -1
jakarta-avalon-cornerstone/apps/db/src/java/org/apache/avalon/db/data/impl/VarCharColumn.java
Index: VarCharColumn.java
===================================================================
RCS file:
/home/cvs/jakarta-avalon-cornerstone/apps/db/src/java/org/apache/avalon/db/data/impl/VarCharColumn.java,v
retrieving revision 1.5
retrieving revision 1.6
diff -u -r1.5 -r1.6
--- VarCharColumn.java 2001/11/17 10:12:09 1.5
+++ VarCharColumn.java 2001/11/17 17:31:49 1.6
@@ -9,16 +9,20 @@
package org.apache.avalon.db.data.impl;
import org.apache.avalon.db.data.ValidationException;
+import org.apache.avalon.db.data.Row;
import org.apache.avalon.db.data.types.StringType;
+import org.apache.avalon.db.data.types.Type;
+import java.math.BigDecimal;
+
/**
* Class VarCharColumn
*
*
* @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.5 $
+ * @version $Revision: 1.6 $
*/
public class VarCharColumn extends AbstractWritableColumn implements
StringType {
@@ -43,5 +47,33 @@
throw new ValidationException("String " + mName + " is too long
at " + str.length());
}
return str;
+ }
+
+ public String toString(Row row) {
+ return (String)row.getValue(mIndex);
+ }
+
+ public int getPrecesion() {
+ return Type.PREC_STRING;
+ }
+
+ public Integer toInteger(Row row) {
+ return null;
+ }
+
+ public Long toLong(Row row) {
+ return null;
+ }
+
+ public BigDecimal toBigDecimal(Row row) {
+ return null;
+ }
+
+ public Float toFloat(Row row) {
+ return null;
+ }
+
+ public Short toShort(Row row) {
+ return null;
}
}
--
To unsubscribe, e-mail: <mailto:[EMAIL PROTECTED]>
For additional commands, e-mail: <mailto:[EMAIL PROTECTED]>