diff -r 5c93ad8c7a15 -r 2fc4100fcd32 json/src/main/java/org/netbeans/html/json/impl/RcvrJSON.java --- a/json/src/main/java/org/netbeans/html/json/impl/RcvrJSON.java Mon Dec 16 17:39:56 2013 +0100 +++ b/json/src/main/java/org/netbeans/html/json/impl/RcvrJSON.java Fri Jan 03 08:16:39 2014 +0100 @@ -42,6 +42,7 @@ */ package org.netbeans.html.json.impl; +import java.util.ArrayList; import net.java.html.BrwsrCtx; /** Super type for those who wish to receive JSON messages. @@ -73,13 +74,10 @@ return new Exception(t); } - public int dataSize() { - return -1; + public Object[] getValues() { + return null; } - public void dataRead(BrwsrCtx ctx, Class type, Data[] fillTheArray) { - } - public abstract void dispatch(RcvrJSON r); public static MsgEvnt createError(final Throwable t) { @@ -99,26 +97,8 @@ public static MsgEvnt createMessage(final Object value) { return new MsgEvnt() { @Override - public int dataSize() { - if (value instanceof Object[]) { - return ((Object[])value).length; - } else { - return 1; - } - } - - @Override - public void dataRead(BrwsrCtx context, Class type, Data[] arr) { - if (value instanceof Object[]) { - Object[] data = ((Object[]) value); - for (int i = 0; i < data.length && i < arr.length; i++) { - arr[i] = org.netbeans.html.json.impl.JSON.read(context, type, data[i]); - } - } else { - if (arr.length > 0) { - arr[0] = org.netbeans.html.json.impl.JSON.read(context, type, value); - } - } + public Object[] getValues() { + return value instanceof Object[] ? (Object[])value : new Object[] { value }; } @Override @@ -145,5 +125,4 @@ } }; } - } // end MsgEvnt -} + } }