You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@ibatis.apache.org by cb...@apache.org on 2005/03/13 17:01:02 UTC
svn commit: r157335 - in incubator/ibatis/trunk/java/mapper/mapper2: build/
doc/ src/com/ibatis/common/beans/ test/com/ibatis/common/beans/
Author: cbegin
Date: Sun Mar 13 08:01:00 2005
New Revision: 157335
URL: http://svn.apache.org/viewcvs?view=rev&rev=157335
Log:
fixed iBATIS-45
Removed:
incubator/ibatis/trunk/java/mapper/mapper2/src/com/ibatis/common/beans/JavaBeanProbe.java
incubator/ibatis/trunk/java/mapper/mapper2/src/com/ibatis/common/beans/MapProbe.java
Modified:
incubator/ibatis/trunk/java/mapper/mapper2/build/version.properties
incubator/ibatis/trunk/java/mapper/mapper2/doc/release.txt
incubator/ibatis/trunk/java/mapper/mapper2/src/com/ibatis/common/beans/GenericProbe.java
incubator/ibatis/trunk/java/mapper/mapper2/src/com/ibatis/common/beans/ProbeFactory.java
incubator/ibatis/trunk/java/mapper/mapper2/test/com/ibatis/common/beans/JavaBeanProbeTest.java
Modified: incubator/ibatis/trunk/java/mapper/mapper2/build/version.properties
URL: http://svn.apache.org/viewcvs/incubator/ibatis/trunk/java/mapper/mapper2/build/version.properties?view=diff&r1=157334&r2=157335
==============================================================================
--- incubator/ibatis/trunk/java/mapper/mapper2/build/version.properties (original)
+++ incubator/ibatis/trunk/java/mapper/mapper2/build/version.properties Sun Mar 13 08:01:00 2005
@@ -1,4 +1,4 @@
#Build version info
-#Sun Feb 20 18:25:57 MST 2005
-buildDate=2005/02/20 18\:25
-buildNum=551
+#Sun Mar 13 08:55:14 MST 2005
+buildDate=2005/03/13 08\:55
+buildNum=552
Modified: incubator/ibatis/trunk/java/mapper/mapper2/doc/release.txt
URL: http://svn.apache.org/viewcvs/incubator/ibatis/trunk/java/mapper/mapper2/doc/release.txt?view=diff&r1=157334&r2=157335
==============================================================================
--- incubator/ibatis/trunk/java/mapper/mapper2/doc/release.txt (original)
+++ incubator/ibatis/trunk/java/mapper/mapper2/doc/release.txt Sun Mar 13 08:01:00 2005
@@ -2,6 +2,12 @@
Build Number: @buildNum@
------------------------------
+ 2.1.0 - Mar ??, 2004
+------------------------------
+
+ o Removed JavaBeanProbe and MapProbe in favour of ComplexBeanProbe for the best flexibility (iBATIS-45)
+
+------------------------------
2.0.9B - Feb 20, 2004
------------------------------
Modified: incubator/ibatis/trunk/java/mapper/mapper2/src/com/ibatis/common/beans/GenericProbe.java
URL: http://svn.apache.org/viewcvs/incubator/ibatis/trunk/java/mapper/mapper2/src/com/ibatis/common/beans/GenericProbe.java?view=diff&r1=157334&r2=157335
==============================================================================
--- incubator/ibatis/trunk/java/mapper/mapper2/src/com/ibatis/common/beans/GenericProbe.java (original)
+++ incubator/ibatis/trunk/java/mapper/mapper2/src/com/ibatis/common/beans/GenericProbe.java Sun Mar 13 08:01:00 2005
@@ -15,7 +15,6 @@
*/
package com.ibatis.common.beans;
-import java.util.Map;
import java.util.StringTokenizer;
/**
@@ -31,8 +30,7 @@
*/
public class GenericProbe extends BaseProbe {
- private static final BaseProbe MAP_PROBE = new ComplexBeanProbe(); // Yes, use the complex one.
- private static final BaseProbe BEAN_PROBE = new JavaBeanProbe();
+ private static final BaseProbe BEAN_PROBE = new ComplexBeanProbe();
private static final BaseProbe DOM_PROBE = new DomProbe();
protected GenericProbe() {
@@ -47,9 +45,7 @@
* @see com.ibatis.common.beans.BaseProbe#getObject(java.lang.Object, java.lang.String)
*/
public Object getObject(Object object, String name) {
- if (object instanceof Map) {
- return MAP_PROBE.getObject(object, name);
- } else if (object instanceof org.w3c.dom.Document) {
+ if (object instanceof org.w3c.dom.Document) {
return DOM_PROBE.getObject(object, name);
} else {
return BEAN_PROBE.getObject(object, name);
@@ -65,9 +61,7 @@
* @see com.ibatis.common.beans.BaseProbe#setObject(java.lang.Object, java.lang.String, java.lang.Object)
*/
public void setObject(Object object, String name, Object value) {
- if (object instanceof Map) {
- MAP_PROBE.setObject(object, name, value);
- } else if (object instanceof org.w3c.dom.Document) {
+ if (object instanceof org.w3c.dom.Document) {
DOM_PROBE.setObject(object, name, value);
} else {
BEAN_PROBE.setObject(object, name, value);
@@ -82,9 +76,7 @@
* @see com.ibatis.common.beans.BaseProbe#getReadablePropertyNames(java.lang.Object)
*/
public String[] getReadablePropertyNames(Object object) {
- if (object instanceof Map) {
- return MAP_PROBE.getReadablePropertyNames(object);
- } else if (object instanceof org.w3c.dom.Document) {
+ if (object instanceof org.w3c.dom.Document) {
return DOM_PROBE.getReadablePropertyNames(object);
} else {
return BEAN_PROBE.getReadablePropertyNames(object);
@@ -99,9 +91,7 @@
* @see com.ibatis.common.beans.BaseProbe#getWriteablePropertyNames(java.lang.Object)
*/
public String[] getWriteablePropertyNames(Object object) {
- if (object instanceof Map) {
- return MAP_PROBE.getWriteablePropertyNames(object);
- } else if (object instanceof org.w3c.dom.Document) {
+ if (object instanceof org.w3c.dom.Document) {
return DOM_PROBE.getWriteablePropertyNames(object);
} else {
return BEAN_PROBE.getWriteablePropertyNames(object);
@@ -120,8 +110,6 @@
public Class getPropertyTypeForSetter(Object object, String name) {
if (object instanceof Class) {
return getClassPropertyTypeForSetter((Class) object, name);
- } else if (object instanceof Map) {
- return MAP_PROBE.getPropertyTypeForSetter(object, name);
} else if (object instanceof org.w3c.dom.Document) {
return DOM_PROBE.getPropertyTypeForSetter(object, name);
} else {
@@ -140,8 +128,6 @@
public Class getPropertyTypeForGetter(Object object, String name) {
if (object instanceof Class) {
return getClassPropertyTypeForGetter((Class) object, name);
- } else if (object instanceof Map) {
- return MAP_PROBE.getPropertyTypeForGetter(object, name);
} else if (object instanceof org.w3c.dom.Document) {
return DOM_PROBE.getPropertyTypeForGetter(object, name);
} else {
@@ -158,9 +144,7 @@
* @see com.ibatis.common.beans.Probe#hasWritableProperty(java.lang.Object, java.lang.String)
*/
public boolean hasWritableProperty(Object object, String propertyName) {
- if (object instanceof Map) {
- return MAP_PROBE.hasWritableProperty(object, propertyName);
- } else if (object instanceof org.w3c.dom.Document) {
+ if (object instanceof org.w3c.dom.Document) {
return DOM_PROBE.hasWritableProperty(object, propertyName);
} else {
return BEAN_PROBE.hasWritableProperty(object, propertyName);
@@ -176,9 +160,7 @@
* @see com.ibatis.common.beans.Probe#hasReadableProperty(java.lang.Object, java.lang.String)
*/
public boolean hasReadableProperty(Object object, String propertyName) {
- if (object instanceof Map) {
- return MAP_PROBE.hasReadableProperty(object, propertyName);
- } else if (object instanceof org.w3c.dom.Document) {
+ if (object instanceof org.w3c.dom.Document) {
return DOM_PROBE.hasReadableProperty(object, propertyName);
} else {
return BEAN_PROBE.hasReadableProperty(object, propertyName);
@@ -186,9 +168,7 @@
}
protected void setProperty(Object object, String property, Object value) {
- if (object instanceof Map) {
- MAP_PROBE.setProperty(object, property, value);
- } else if (object instanceof org.w3c.dom.Document) {
+ if (object instanceof org.w3c.dom.Document) {
DOM_PROBE.setProperty(object, property, value);
} else {
BEAN_PROBE.setProperty(object, property, value);
@@ -196,9 +176,7 @@
}
protected Object getProperty(Object object, String property) {
- if (object instanceof Map) {
- return MAP_PROBE.getProperty(object, property);
- } else if (object instanceof org.w3c.dom.Document) {
+ if (object instanceof org.w3c.dom.Document) {
return DOM_PROBE.getProperty(object, property);
} else {
return BEAN_PROBE.getProperty(object, property);
@@ -206,7 +184,6 @@
}
private Class getClassPropertyTypeForSetter(Class type, String name) {
-
if (name.indexOf('.') > -1) {
StringTokenizer parser = new StringTokenizer(name, ".");
while (parser.hasMoreTokens()) {
@@ -216,12 +193,10 @@
} else {
type = ClassInfo.getInstance(type).getSetterType(name);
}
-
return type;
}
private Class getClassPropertyTypeForGetter(Class type, String name) {
-
if (name.indexOf('.') > -1) {
StringTokenizer parser = new StringTokenizer(name, ".");
while (parser.hasMoreTokens()) {
@@ -231,7 +206,6 @@
} else {
type = ClassInfo.getInstance(type).getGetterType(name);
}
-
return type;
}
Modified: incubator/ibatis/trunk/java/mapper/mapper2/src/com/ibatis/common/beans/ProbeFactory.java
URL: http://svn.apache.org/viewcvs/incubator/ibatis/trunk/java/mapper/mapper2/src/com/ibatis/common/beans/ProbeFactory.java?view=diff&r1=157334&r2=157335
==============================================================================
--- incubator/ibatis/trunk/java/mapper/mapper2/src/com/ibatis/common/beans/ProbeFactory.java (original)
+++ incubator/ibatis/trunk/java/mapper/mapper2/src/com/ibatis/common/beans/ProbeFactory.java Sun Mar 13 08:01:00 2005
@@ -15,18 +15,14 @@
*/
package com.ibatis.common.beans;
-import java.util.Map;
-
/**
* An abstract factory for getting Probe implementations.
*/
public class ProbeFactory {
private static final Probe DOM = new DomProbe();
- private static final Probe MAP = new ComplexBeanProbe(); // Yes, use the complex one.
- private static final Probe BEAN = new JavaBeanProbe();
+ private static final Probe BEAN = new ComplexBeanProbe();
private static final Probe GENERIC = new GenericProbe();
- private static final Probe LEGACY = new ComplexBeanProbe();
/**
* Factory method for getting a Probe object
@@ -46,12 +42,8 @@
* @return An implementation of the Probe interface
*/
public static Probe getProbe(Object object) {
- if (object instanceof Map) {
- return MAP;
- } else if (object instanceof org.w3c.dom.Document) {
+ if (object instanceof org.w3c.dom.Document) {
return DOM;
- } else if (object instanceof Class) {
- return LEGACY;
} else {
return BEAN;
}
Modified: incubator/ibatis/trunk/java/mapper/mapper2/test/com/ibatis/common/beans/JavaBeanProbeTest.java
URL: http://svn.apache.org/viewcvs/incubator/ibatis/trunk/java/mapper/mapper2/test/com/ibatis/common/beans/JavaBeanProbeTest.java?view=diff&r1=157334&r2=157335
==============================================================================
--- incubator/ibatis/trunk/java/mapper/mapper2/test/com/ibatis/common/beans/JavaBeanProbeTest.java (original)
+++ incubator/ibatis/trunk/java/mapper/mapper2/test/com/ibatis/common/beans/JavaBeanProbeTest.java Sun Mar 13 08:01:00 2005
@@ -2,181 +2,106 @@
import junit.framework.TestCase;
-/**
- */
public class JavaBeanProbeTest extends TestCase {
- /**
- * @param args
- */
- public static void main(String[] args) {
- junit.textui.TestRunner.run(JavaBeanProbeTest.class);
- }
-
- /**
- *
- */
- public void testGetReadablePropertyNames() {
- TestBean b = getBean();
- Probe p = getProbe(b);
- JavaBeanProbe jbp = (JavaBeanProbe)p;
- String name[] = jbp.getReadablePropertyNames(b);
- assertEquals(name.length, 5);
- }
-
- /**
- *
- */
- public void testGetWriteablePropertyNames() {
- TestBean b = getBean();
- Probe p = getProbe(b);
- JavaBeanProbe jbp = (JavaBeanProbe)p;
- String name[] = jbp.getWriteablePropertyNames(b);
- assertEquals(name.length, 5);
- }
-
- /**
- *
- */
- public void testGetPropertyTypeForSetterObjectString() {
- TestBean b = getBean();
- Probe p = getProbe(b);
- assertTrue(p.getPropertyTypeForSetter(b, "testBean").equals(TestBean.class));
- assertTrue(p.getPropertyTypeForSetter(b, "testBean.testBean").equals(TestBean.class));
- }
-
- /**
- *
- */
- public void testGetPropertyTypeForSetterClassString() {
- assertTrue(JavaBeanProbe.getPropertyTypeForSetter(TestBean.class, "testBean").equals(TestBean.class));
- assertTrue(JavaBeanProbe.getPropertyTypeForSetter(TestBean.class, "testBean.testBean").equals(TestBean.class));
- }
-
- /**
- *
- */
- public void testGetPropertyTypeForGetterObjectString() {
- TestBean b = getBean();
- Probe p = getProbe(b);
- assertTrue(p.getPropertyTypeForGetter(b, "testBean").equals(TestBean.class));
- assertTrue(p.getPropertyTypeForGetter(b, "testBean.testBean").equals(TestBean.class));
- }
-
- /**
- *
- */
- public void testGetPropertyTypeForGetterClassString() {
- assertTrue(JavaBeanProbe.getPropertyTypeForGetter(TestBean.class, "testBean").equals(TestBean.class));
- assertTrue(JavaBeanProbe.getPropertyTypeForGetter(TestBean.class, "testBean.testBean").equals(TestBean.class));
- }
-
- /**
- *
- */
- public void testHasWritableProperty() {
- TestBean b = getBean();
- Probe p = getProbe(b);
- assertTrue(p.hasWritableProperty(b, "testBean"));
- assertTrue(p.hasWritableProperty(b, "testBean.testBean"));
- }
-
- /**
- *
- */
- public void testHasReadableProperty() {
- TestBean b = getBean();
- Probe p = getProbe(b);
- assertTrue(p.hasReadableProperty(b, "testBean"));
- assertTrue(p.hasReadableProperty(b, "testBean.testBean"));
- }
-
- /**
- *
- */
- public void testSetAndGetObject() {
- TestBean b = getBean();
- Probe p = getProbe(b);
- float f[] = new float[3];
- f[0] = 1.0f;
- f[0] = 2.1f;
- f[0] = 3.2f;
- p.setObject(b, "floatArray", f);
- float g[] = (float[])p.getObject(b, "floatArray");
- assertTrue(p.getObject(b, "floatArray").equals(f));
- assertEquals(g[0], f[0], .01);
- assertEquals(g[1], f[1], .01);
- assertEquals(g[2], f[2], .01);
- assertEquals(((Float)p.getObject(b, "floatArray[1]")).floatValue(), g[1], .01);
- p.setObject(b, "testBean.testBean", null);
- assertNull(p.getObject(b, "testBean.testBean"));
- p.setObject(b, "testBean.testBean.testBean", null);
- assertNull(p.getObject(b, "testBean.testBean.testBean"));
- }
-
- private Probe getProbe(Object o){
- return ProbeFactory.getProbe(o);
- }
-
- private TestBean getBean(){
- TestBean returnValue = new TestBean();
- return returnValue;
- }
-
- /**
- */
- public class TestBean{
- private float[] floatArray;
- private long[] longArray;
- private short[] shortArray;
- private TestBean testBean;
- /**
- * @return Returns the testBean.
- */
- public TestBean getTestBean() {
- return testBean;
- }
- /**
- * @param testBean The testBean to set.
- */
- public void setTestBean(TestBean testBean) {
- this.testBean = testBean;
- }
- /**
- * @return Returns the floatArray.
- */
- public float[] getFloatArray() {
- return floatArray;
- }
- /**
- * @param floatArray The floatArray to set.
- */
- public void setFloatArray(float[] floatArray) {
- this.floatArray = floatArray;
- }
- /**
- * @return Returns the longArray.
- */
- public long[] getLongArray() {
- return longArray;
- }
- /**
- * @param longArray The longArray to set.
- */
- public void setLongArray(long[] longArray) {
- this.longArray = longArray;
- }
- /**
- * @return Returns the shortArray.
- */
- public short[] getShortArray() {
- return shortArray;
- }
- /**
- * @param shortArray The shortArray to set.
- */
- public void setShortArray(short[] shortArray) {
- this.shortArray = shortArray;
- }
+ public static void main(String[] args) {
+ junit.textui.TestRunner.run(JavaBeanProbeTest.class);
+ }
+
+ public void testGetPropertyTypeForSetterObjectString() {
+ TestBean b = getBean();
+ Probe p = getProbe(b);
+ assertTrue(p.getPropertyTypeForSetter(b, "testBean").equals(TestBean.class));
+ assertTrue(p.getPropertyTypeForSetter(b, "testBean.testBean").equals(TestBean.class));
+ }
+
+ public void testGetPropertyTypeForGetterObjectString() {
+ TestBean b = getBean();
+ Probe p = getProbe(b);
+ assertTrue(p.getPropertyTypeForGetter(b, "testBean").equals(TestBean.class));
+ assertTrue(p.getPropertyTypeForGetter(b, "testBean.testBean").equals(TestBean.class));
+ }
+
+ public void testHasWritableProperty() {
+ TestBean b = getBean();
+ Probe p = getProbe(b);
+ assertTrue(p.hasWritableProperty(b, "testBean"));
+ assertTrue(p.hasWritableProperty(b, "testBean.testBean"));
+ }
+
+ public void testHasReadableProperty() {
+ TestBean b = getBean();
+ Probe p = getProbe(b);
+ assertTrue(p.hasReadableProperty(b, "testBean"));
+ assertTrue(p.hasReadableProperty(b, "testBean.testBean"));
+ }
+
+ public void testSetAndGetObject() {
+ TestBean b = getBean();
+ Probe p = getProbe(b);
+ float f[] = new float[3];
+ f[0] = 1.0f;
+ f[0] = 2.1f;
+ f[0] = 3.2f;
+ p.setObject(b, "floatArray", f);
+ float g[] = (float[]) p.getObject(b, "floatArray");
+ assertTrue(p.getObject(b, "floatArray").equals(f));
+ assertEquals(g[0], f[0], .01);
+ assertEquals(g[1], f[1], .01);
+ assertEquals(g[2], f[2], .01);
+ assertEquals(((Float) p.getObject(b, "floatArray[1]")).floatValue(), g[1], .01);
+ p.setObject(b, "testBean.testBean", null);
+ assertNull(p.getObject(b, "testBean.testBean"));
+ p.setObject(b, "testBean.testBean.testBean", null);
+ assertNull(p.getObject(b, "testBean.testBean.testBean"));
+ }
+
+ private Probe getProbe(Object o) {
+ return ProbeFactory.getProbe(o);
+ }
+
+ private TestBean getBean() {
+ TestBean returnValue = new TestBean();
+ return returnValue;
+ }
+
+ public class TestBean {
+ private float[] floatArray;
+ private long[] longArray;
+ private short[] shortArray;
+ private TestBean testBean;
+
+ public TestBean getTestBean() {
+ return testBean;
+ }
+
+ public void setTestBean(TestBean testBean) {
+ this.testBean = testBean;
+ }
+
+ public float[] getFloatArray() {
+ return floatArray;
+ }
+
+ public void setFloatArray(float[] floatArray) {
+ this.floatArray = floatArray;
+ }
+
+ public long[] getLongArray() {
+ return longArray;
+ }
+
+ public void setLongArray(long[] longArray) {
+ this.longArray = longArray;
}
+
+ public short[] getShortArray() {
+ return shortArray;
+ }
+
+ public void setShortArray(short[] shortArray) {
+ this.shortArray = shortArray;
+ }
+ }
+
}