seade 2004/03/04 20:22:11
Modified: src/java/org/apache/turbine/services/intake/model Tag:
TURBINE_2_3_BRANCH BooleanField.java
DoubleField.java LongField.java FloatField.java
ShortField.java IntegerField.java
xdocs Tag: TURBINE_2_3_BRANCH changes.xml
Log:
Fix how Intake handles multiValued entries.
Initial patch to IntegerField provided by Derek Gaasch.
Revision Changes Path
No revision
No revision
1.12.2.4 +5 -3
jakarta-turbine-2/src/java/org/apache/turbine/services/intake/model/BooleanField.java
Index: BooleanField.java
===================================================================
RCS file:
/home/cvs/jakarta-turbine-2/src/java/org/apache/turbine/services/intake/model/BooleanField.java,v
retrieving revision 1.12.2.3
retrieving revision 1.12.2.4
diff -u -r1.12.2.3 -r1.12.2.4
--- BooleanField.java 27 Feb 2004 05:48:50 -0000 1.12.2.3
+++ BooleanField.java 5 Mar 2004 04:22:11 -0000 1.12.2.4
@@ -107,11 +107,12 @@
if (isMultiValued)
{
String[] inputs = parser.getStrings(getKey());
- Boolean[] values = new Boolean[inputs.length];
+ boolean[] values = new boolean[inputs.length];
for (int i = 0; i < inputs.length; i++)
{
values[i] = StringUtils.isNotEmpty(inputs[i])
- ? getBoolean(inputs[i]) : (Boolean) getEmptyValue();
+ ? getBoolean(inputs[i]).booleanValue()
+ : ((Boolean) getEmptyValue()).booleanValue();
}
setTestValue(values);
}
@@ -177,4 +178,5 @@
}
return result;
}
+
}
1.7.2.4 +7 -4
jakarta-turbine-2/src/java/org/apache/turbine/services/intake/model/DoubleField.java
Index: DoubleField.java
===================================================================
RCS file:
/home/cvs/jakarta-turbine-2/src/java/org/apache/turbine/services/intake/model/DoubleField.java,v
retrieving revision 1.7.2.3
retrieving revision 1.7.2.4
diff -u -r1.7.2.3 -r1.7.2.4
--- DoubleField.java 27 Feb 2004 05:48:50 -0000 1.7.2.3
+++ DoubleField.java 5 Mar 2004 04:22:11 -0000 1.7.2.4
@@ -113,18 +113,21 @@
if (isMultiValued)
{
String[] inputs = parser.getStrings(getKey());
- Double[] values = new Double[inputs.length];
+ double[] values = new double[inputs.length];
for (int i = 0; i < inputs.length; i++)
{
values[i] = StringUtils.isNotEmpty(inputs[i])
- ? new Double(inputs[i]) : (Double) getEmptyValue();
+ ? new Double(inputs[i]).doubleValue()
+ : ((Double) getEmptyValue()).doubleValue();
}
setTestValue(values);
}
else
{
String val = parser.getString(getKey());
- setTestValue(StringUtils.isNotEmpty(val) ? new Double(val) : (Double)
getEmptyValue());
+ setTestValue(StringUtils.isNotEmpty(val)
+ ? new Double(val) : (Double) getEmptyValue());
}
}
+
}
1.3.2.4 +8 -5
jakarta-turbine-2/src/java/org/apache/turbine/services/intake/model/LongField.java
Index: LongField.java
===================================================================
RCS file:
/home/cvs/jakarta-turbine-2/src/java/org/apache/turbine/services/intake/model/LongField.java,v
retrieving revision 1.3.2.3
retrieving revision 1.3.2.4
diff -u -r1.3.2.3 -r1.3.2.4
--- LongField.java 27 Feb 2004 05:48:50 -0000 1.3.2.3
+++ LongField.java 5 Mar 2004 04:22:11 -0000 1.3.2.4
@@ -23,7 +23,7 @@
import org.apache.turbine.services.intake.xmlmodel.XmlField;
/**
- * Creates Short Field objects.
+ * Processor for long fields.
*
* @version $Id$
*/
@@ -114,18 +114,21 @@
if (isMultiValued)
{
String[] inputs = parser.getStrings(getKey());
- Long[] values = new Long[inputs.length];
+ long[] values = new long[inputs.length];
for (int i = 0; i < inputs.length; i++)
{
values[i] = StringUtils.isNotEmpty(inputs[i])
- ? new Long(inputs[i]) : (Long) getEmptyValue();
+ ? new Long(inputs[i]).longValue()
+ : ((Long) getEmptyValue()).longValue();
}
setTestValue(values);
}
else
{
String val = parser.getString(getKey());
- setTestValue(StringUtils.isNotEmpty(val) ? new Long(val) : (Long)
getEmptyValue());
+ setTestValue(StringUtils.isNotEmpty(val)
+ ? new Long(val) : (Long) getEmptyValue());
}
}
+
}
1.9.2.4 +7 -4
jakarta-turbine-2/src/java/org/apache/turbine/services/intake/model/FloatField.java
Index: FloatField.java
===================================================================
RCS file:
/home/cvs/jakarta-turbine-2/src/java/org/apache/turbine/services/intake/model/FloatField.java,v
retrieving revision 1.9.2.3
retrieving revision 1.9.2.4
diff -u -r1.9.2.3 -r1.9.2.4
--- FloatField.java 27 Feb 2004 05:48:50 -0000 1.9.2.3
+++ FloatField.java 5 Mar 2004 04:22:11 -0000 1.9.2.4
@@ -114,18 +114,21 @@
if (isMultiValued)
{
String[] inputs = parser.getStrings(getKey());
- Float[] values = new Float[inputs.length];
+ float[] values = new float[inputs.length];
for (int i = 0; i < inputs.length; i++)
{
values[i] = StringUtils.isNotEmpty(inputs[i])
- ? new Float(inputs[i]) : (Float) getEmptyValue();
+ ? new Float(inputs[i]).floatValue()
+ : ((Float) getEmptyValue()).floatValue();
}
setTestValue(values);
}
else
{
String val = parser.getString(getKey());
- setTestValue(StringUtils.isNotEmpty(val) ? new Float(val) :
getEmptyValue());
+ setTestValue(StringUtils.isNotEmpty(val)
+ ? new Float(val) : getEmptyValue());
}
}
+
}
1.3.2.4 +8 -6
jakarta-turbine-2/src/java/org/apache/turbine/services/intake/model/ShortField.java
Index: ShortField.java
===================================================================
RCS file:
/home/cvs/jakarta-turbine-2/src/java/org/apache/turbine/services/intake/model/ShortField.java,v
retrieving revision 1.3.2.3
retrieving revision 1.3.2.4
diff -u -r1.3.2.3 -r1.3.2.4
--- ShortField.java 27 Feb 2004 05:48:50 -0000 1.3.2.3
+++ ShortField.java 5 Mar 2004 04:22:11 -0000 1.3.2.4
@@ -23,14 +23,13 @@
import org.apache.turbine.services.intake.xmlmodel.XmlField;
/**
- * Creates Short Field objects.
+ * Processor for short fields.
*
* @version $Id$
*/
public class ShortField
extends Field
{
-
/**
* Constructor.
*
@@ -115,18 +114,21 @@
if (isMultiValued)
{
String[] inputs = parser.getStrings(getKey());
- Short[] values = new Short[inputs.length];
+ short[] values = new short[inputs.length];
for (int i = 0; i < inputs.length; i++)
{
values[i] = StringUtils.isNotEmpty(inputs[i])
- ? new Short(inputs[i]) : (Short) getEmptyValue();
+ ? new Short(inputs[i]).shortValue()
+ : ((Short) getEmptyValue()).shortValue();
}
setTestValue(values);
}
else
{
String val = parser.getString(getKey());
- setTestValue(StringUtils.isNotEmpty(val) ? new Short(val) : (Short)
getEmptyValue());
+ setTestValue(StringUtils.isNotEmpty(val)
+ ? new Short(val) : (Short) getEmptyValue());
}
}
+
}
1.10.2.4 +7 -3
jakarta-turbine-2/src/java/org/apache/turbine/services/intake/model/IntegerField.java
Index: IntegerField.java
===================================================================
RCS file:
/home/cvs/jakarta-turbine-2/src/java/org/apache/turbine/services/intake/model/IntegerField.java,v
retrieving revision 1.10.2.3
retrieving revision 1.10.2.4
diff -u -r1.10.2.3 -r1.10.2.4
--- IntegerField.java 27 Feb 2004 05:48:50 -0000 1.10.2.3
+++ IntegerField.java 5 Mar 2004 04:22:11 -0000 1.10.2.4
@@ -23,6 +23,8 @@
import org.apache.turbine.services.intake.xmlmodel.XmlField;
/**
+ * Processor for int fields.
+ *
* @version $Id$
*/
public class IntegerField
@@ -112,11 +114,12 @@
if (isMultiValued)
{
String[] inputs = parser.getStrings(getKey());
- Integer[] values = new Integer[inputs.length];
+ int[] values = new int[inputs.length];
for (int i = 0; i < inputs.length; i++)
{
values[i] = StringUtils.isNotEmpty(inputs[i])
- ? new Integer(inputs[i]) : (Integer) getEmptyValue();
+ ? new Integer(inputs[i]).intValue()
+ : ((Integer) getEmptyValue()).intValue();
}
setTestValue(values);
}
@@ -126,4 +129,5 @@
setTestValue(StringUtils.isNotEmpty(val) ? new Integer(val) : (Integer)
getEmptyValue());
}
}
+
}
No revision
No revision
1.60.2.12 +6 -7 jakarta-turbine-2/xdocs/changes.xml
Index: changes.xml
===================================================================
RCS file: /home/cvs/jakarta-turbine-2/xdocs/changes.xml,v
retrieving revision 1.60.2.11
retrieving revision 1.60.2.12
diff -u -r1.60.2.11 -r1.60.2.12
--- changes.xml 24 Nov 2003 11:03:50 -0000 1.60.2.11
+++ changes.xml 5 Mar 2004 04:22:11 -0000 1.60.2.12
@@ -4,13 +4,6 @@
<properties>
<title>2.x Changes</title>
- <author email="[EMAIL PROTECTED]">Jason van Zyl</author>
- <author email="[EMAIL PROTECTED]">John D. McNally</author>
- <author email="[EMAIL PROTECTED]">Martin Poeschl</author>
- <author email="[EMAIL PROTECTED]">Henning P. Schmiedehausen</author>
- <author email="[EMAIL PROTECTED]">Quinton McCombs</author>
- <author email="[EMAIL PROTECTED]">Eric Pugh</author>
- <author email="[EMAIL PROTECTED]">Scott Eade</author>
</properties>
<body>
@@ -76,6 +69,12 @@
<subsection name="Fixed bugs">
<p>
<ul>
+ <li>
+ Intake now handles multiValued="true" on type="int" fields correctly.
+ The get/set methods of the underlying object need to deal with an array
+ of ints. The intake processing for other primitive types has also been
+ updated, though not tested to the same extent as int.
+ </li>
<li>
The intake validators were fixed so that fields with required=false
rules no longer attempt to execute the remaining rules when no
---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]