mac 2005/04/21 04:23:17
Modified: src/js/org/apache/ws/jaxme/js Tag: v0_4
IndentationEngineImpl.java
Log:
Support for primitive arrays
Revision Changes Path
No revision
No revision
1.3.4.2 +9 -5
ws-jaxme/src/js/org/apache/ws/jaxme/js/IndentationEngineImpl.java
Index: IndentationEngineImpl.java
===================================================================
RCS file:
/home/cvs/ws-jaxme/src/js/org/apache/ws/jaxme/js/IndentationEngineImpl.java,v
retrieving revision 1.3.4.1
retrieving revision 1.3.4.2
diff -u -r1.3.4.1 -r1.3.4.2
--- IndentationEngineImpl.java 21 Apr 2005 08:03:13 -0000 1.3.4.1
+++ IndentationEngineImpl.java 21 Apr 2005 11:23:17 -0000 1.3.4.2
@@ -137,10 +137,12 @@
throw new NullPointerException("Null token detected.");
}
if (pTokens.getClass().isArray()) {
- Object[] tokens = (Object[]) pTokens;
- for (int i = 0; i < tokens.length; i++) {
- checkNulls(tokens[i]);
- }
+ if (!pTokens.getClass().getComponentType().isPrimitive()) {
+ Object[] tokens = (Object[]) pTokens;
+ for (int i = 0; i < tokens.length; i++) {
+ checkNulls(tokens[i]);
+ }
+ }
} else if (pTokens instanceof Collection) {
for (Iterator iter = ((Collection) pTokens).iterator();
iter.hasNext(); ) {
checkNulls(iter.next());
@@ -279,6 +281,8 @@
public void write(IndentationTarget pTarget, Object pObject)
throws IOException {
if (pObject.getClass().isArray()) {
+ // We are *not* casting to Object[], because the array
+ // might be primitive.
int arrayLength = Array.getLength(pObject);
for (int i = 0; i < arrayLength; i++) {
write(pTarget, Array.get(pObject, i));
---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]