trim down public api
[org.ibex.core.git] / src / org / ibex / net / XMLRPC.java
index 66908d8..e6a3f65 100644 (file)
@@ -141,7 +141,7 @@ public class XMLRPC extends JS {
             case "data":
                 int i;
                 for(i=objects.size() - 1; objects.elementAt(i) != null; i--);
-                JSArray arr = new JSArray();
+                JS arr = JS.newArray();
                 try {
                     for(int j = i + 1; j<objects.size(); j++) arr.put(JS.N(j - i - 1), (JS)objects.elementAt(j));
                 } catch (JSExn e) {
@@ -166,7 +166,7 @@ public class XMLRPC extends JS {
 
     // Send ///////////////////////////////////////////////////////////////////////////
 
-    protected String buildRequest(JSArray args) throws JSExn, IOException {
+    protected String buildRequest(JS[] args) throws JSExn, IOException {
         StringBuffer content = new StringBuffer();
         content.append("\r\n");
         content.append("<?xml version=\"1.0\"?>\n");
@@ -175,9 +175,9 @@ public class XMLRPC extends JS {
         content.append(method);
         content.append("</methodName>\n");
         content.append("        <params>\n");
-        for(int i=0; i<args.length(); i++) {
+        for(int i=0; i<args.length; i++) {
             content.append("            <param>\n");
-            appendObject(args.elementAt(i), content);
+            appendObject(args[i], content);
             content.append("            </param>\n");
         }
         content.append("        </params>\n");
@@ -303,22 +303,18 @@ public class XMLRPC extends JS {
     // Call Sequence //////////////////////////////////////////////////////////////////////////
 
     public final JS call(JS a0, JS a1, JS a2, JS[] rest, int nargs) throws JSExn {
-        JSArray args = new JSArray();
-        for(int i=0; i<nargs; i++) args.addElement(i==0?a0:i==1?a1:i==2?a2:rest[i-3]);
-        return call(args);
-    }
-
-    public final JS call(final JSArray args) throws JSExn {
+        final JS[] args = new JS[nargs];
+        for(int i=0;i<nargs;i++) args[i]= i==0?a0:i==1?a1:i==2?a2:rest[i-3];
         try {
             final JS.UnpauseCallback callback = JS.pause();
-            new java.lang.Thread() { public void run() { call(callback, args); }  }.start();
+            new java.lang.Thread() { public void run() { call(callback,args); }  }.start();
             return null; // doesn't matter since we paused
         } catch (NotPauseableException npe) {
             throw new JSExn("cannot invoke an XML-RPC call in the foreground thread");
         }
     }
 
-    final void call(final JS.UnpauseCallback callback, final JSArray args) {
+    final void call(final JS.UnpauseCallback callback, JS[] args) {
         try {
             if (Log.rpc) Log.info(this, "call to " + url + " : " + method);
             if (tracker == null) tracker = new Hash();