You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@harmony.apache.org by ml...@apache.org on 2006/10/18 08:00:23 UTC
svn commit: r465152 - in
/incubator/harmony/enhanced/classlib/trunk/modules/beans/src:
main/java/java/beans/Encoder.java
test/java/org/apache/harmony/beans/tests/java/beans/EncoderTest.java
Author: mloenko
Date: Tue Oct 17 23:00:21 2006
New Revision: 465152
URL: http://svn.apache.org/viewvc?view=rev&rev=465152
Log:
applied patch from HARMONY-1304
[classlib][bean] compatibility: no NPE on Harmony for Encoder().setPersistenceDelegate(Void.TYPE, null)
Modified:
incubator/harmony/enhanced/classlib/trunk/modules/beans/src/main/java/java/beans/Encoder.java
incubator/harmony/enhanced/classlib/trunk/modules/beans/src/test/java/org/apache/harmony/beans/tests/java/beans/EncoderTest.java
Modified: incubator/harmony/enhanced/classlib/trunk/modules/beans/src/main/java/java/beans/Encoder.java
URL: http://svn.apache.org/viewvc/incubator/harmony/enhanced/classlib/trunk/modules/beans/src/main/java/java/beans/Encoder.java?view=diff&rev=465152&r1=465151&r2=465152
==============================================================================
--- incubator/harmony/enhanced/classlib/trunk/modules/beans/src/main/java/java/beans/Encoder.java (original)
+++ incubator/harmony/enhanced/classlib/trunk/modules/beans/src/main/java/java/beans/Encoder.java Tue Oct 17 23:00:21 2006
@@ -69,6 +69,9 @@
public void setPersistenceDelegate(Class<?> type,
PersistenceDelegate persistenceDelegate) {
+ if (type == null || persistenceDelegate == null) {
+ throw new NullPointerException();
+ }
persistenceDelegates.put(type, persistenceDelegate);
}
Modified: incubator/harmony/enhanced/classlib/trunk/modules/beans/src/test/java/org/apache/harmony/beans/tests/java/beans/EncoderTest.java
URL: http://svn.apache.org/viewvc/incubator/harmony/enhanced/classlib/trunk/modules/beans/src/test/java/org/apache/harmony/beans/tests/java/beans/EncoderTest.java?view=diff&rev=465152&r1=465151&r2=465152
==============================================================================
--- incubator/harmony/enhanced/classlib/trunk/modules/beans/src/test/java/org/apache/harmony/beans/tests/java/beans/EncoderTest.java (original)
+++ incubator/harmony/enhanced/classlib/trunk/modules/beans/src/test/java/org/apache/harmony/beans/tests/java/beans/EncoderTest.java Tue Oct 17 23:00:21 2006
@@ -265,7 +265,7 @@
}
public void testWriteExpression_Null() {
- MockEncoder enc = new MockEncoder();
+ Encoder enc = new Encoder();
try {
enc.writeExpression(null);
fail();
@@ -279,10 +279,10 @@
}
public void testWriteStatement_Null() {
- MockEncoder enc = new MockEncoder();
+ Encoder enc = new Encoder();
try {
enc.writeStatement(null);
- fail();
+ fail("NPE expected");
} catch (NullPointerException e) {
// expected
}
@@ -360,33 +360,33 @@
}
public void testGetPersistenceDelegate_Null() {
- MockEncoder enc = new MockEncoder();
+ Encoder enc = new Encoder();
PersistenceDelegate pd = enc.getPersistenceDelegate(null);
assertNotNull(pd);
}
public void testGetPersistenceDelegate_ArrayClass() {
- MockEncoder enc = new MockEncoder();
+ Encoder enc = new Encoder();
PersistenceDelegate pd = enc.getPersistenceDelegate(int[].class);
assertFalse(pd instanceof DefaultPersistenceDelegate);
}
public void testGetPersistenceDelegate_ProxyClass() {
- MockEncoder enc = new MockEncoder();
+ Encoder enc = new Encoder();
enc.getPersistenceDelegate(Proxy.getProxyClass(ClassLoader
.getSystemClassLoader(), new Class[] { List.class }));
}
public void testGetPersistenceDelegate_BeanInfo() {
- MockEncoder enc = new MockEncoder();
+ Encoder enc = new Encoder();
PersistenceDelegate pd = enc
.getPersistenceDelegate(MockFooLiYang.class);
assertTrue(pd instanceof VerbosePD);
}
public void testGetPersistenceDelegate_Default() {
- MockEncoder enc = new MockEncoder();
- MockEncoder enc2 = new MockEncoder();
+ Encoder enc = new Encoder();
+ Encoder enc2 = new Encoder();
PersistenceDelegate pd1 = enc.getPersistenceDelegate(SampleBean.class);
assertTrue(pd1 instanceof DefaultPersistenceDelegate);
@@ -403,44 +403,45 @@
}
public void testSetPersistenceDelegate_Null() {
- MockEncoder enc = new MockEncoder();
+ // Regression for HARMONY-1304
+ Encoder enc = new Encoder();
PersistenceDelegate pd = enc.getPersistenceDelegate(EncoderTest.class);
try {
enc.setPersistenceDelegate(null, pd);
- fail();
+ fail("NPE expected");
} catch (NullPointerException e) {
// expected
}
try {
enc.setPersistenceDelegate(EncoderTest.class, null);
- fail();
+ fail("NPE expected");
} catch (NullPointerException e) {
// expected
}
}
public void testSetPersistenceDelegate() {
- MockEncoder enc = new MockEncoder();
+ Encoder enc = new Encoder();
PersistenceDelegate pd = enc.getPersistenceDelegate(EncoderTest.class);
assertTrue(pd instanceof DefaultPersistenceDelegate);
enc.setPersistenceDelegate(EncoderTest.class, new VerbosePD());
assertTrue(enc.getPersistenceDelegate(EncoderTest.class) instanceof VerbosePD);
- MockEncoder enc2 = new MockEncoder();
+ Encoder enc2 = new Encoder();
assertTrue(enc2.getPersistenceDelegate(EncoderTest.class) instanceof VerbosePD);
}
public void testGet_NullParam() {
- MockEncoder enc = new MockEncoder();
+ Encoder enc = new Encoder();
assertNull(enc.get(null));
}
public void testGet_String() {
- MockEncoder enc = new MockEncoder();
+ Encoder enc = new Encoder();
String str = "string";
assertSame(str, enc.get(str));
@@ -462,7 +463,7 @@
}
public void testRemove_Null() {
- MockEncoder enc = new MockEncoder();
+ Encoder enc = new Encoder();
assertNull(enc.remove(null));
}