-// Copyright 2004 Adam Megacz, see the COPYING file for licensing [GPL]
+// Copyright 2000-2005 the Contributors, as shown in the revision logs.
+// Licensed under the Apache Public Source License 2.0 ("the License").
+// You may not use this file except in compliance with the License.
+
package org.ibex.js;
import java.io.*;
if (name.equals("SOAP-ENV:Fault")) fault = true;
// add a generic struct; we'll change this if our type is different
- objects.addElement(new JS());
+ objects.addElement(new JS.O());
for(int i=0; i<keys.length; i++) {
String key = keys[i];
if (key.endsWith("ype")) {
if (value.endsWith("boolean")) {
objects.removeElementAt(objects.size() - 1);
- objects.addElement(Boolean.FALSE);
+ objects.addElement(JS.B(true));
} else if (value.endsWith("int")) {
objects.removeElementAt(objects.size() - 1);
- objects.addElement(new Integer(0));
+ objects.addElement(JS.N(0));
} else if (value.endsWith("double")) {
objects.removeElementAt(objects.size() - 1);
- objects.addElement(new Double(0.0));
+ objects.addElement(JS.N(0.0));
} else if (value.endsWith("string")) {
objects.removeElementAt(objects.size() - 1);
- objects.addElement("");
+ objects.addElement(JS.S(""));
} else if (value.endsWith("base64")) {
objects.removeElementAt(objects.size() - 1);
objects.addElement(new byte[] { });
}
// remove ourselves
- Object me = objects.elementAt(objects.size() - 1);
+ JS me = (JS)objects.elementAt(objects.size() - 1);
// find our parent
- Object parent = objects.size() > 1 ? objects.elementAt(objects.size() - 2) : null;
+ JS parent = objects.size() > 1 ? (JS)objects.elementAt(objects.size() - 2) : (JS)null;
// we want to fold stuff back into the fault object
if (objects.size() < 2) return;
} else if (parent != null && parent instanceof JS) {
objects.removeElementAt(objects.size() - 1);
try {
- ((JS)parent).put(name, me);
+ ((JS)parent).put(JS.S(name), me);
} catch (JSExn e) {
throw new Error("this should never happen");
}
Enumeration e = j.keys();
while(e.hasMoreElements()) {
Object key = e.nextElement();
- appendObject((String)key, j.get(key), sb);
+ appendObject((String)key, j.get((JS)key), sb);
}
sb.append("</" + name + ">\r\n");
if (args.length() > 0) {
Enumeration e = ((JS)args.elementAt(0)).keys();
while(e.hasMoreElements()) {
- Object key = e.nextElement();
- appendObject((String)key, ((JS)args.elementAt(0)).get(key), content);
+ JS key = (JS)e.nextElement();
+ appendObject(((JSString)key).coerceToString(), ((JS)args.elementAt(0)).get(key), content);
}
}
content.append(" </" + method + "></SOAP-ENV:Body></SOAP-ENV:Envelope>\r\n");