openamf/src/java/org/openamf/io AMFSerializer.java,1.23,1.24
[email protected] Fri, 02 May 2003 11:20:13 -0700
Newsgroups
gmane.comp.java.openamf.cvs
Message-ID
<[email protected] >
Update of /cvsroot/openamf/openamf/src/java/org/openamf/io
In directory sc8-pr-cvs1:/tmp/cvs-serv4614/src/java/org/openamf/io
Modified Files:
AMFSerializer.java
Log Message:
fixed XML support to to use standard DOM classes
Index: AMFSerializer.java
===================================================================
RCS file: /cvsroot/openamf/openamf/src/java/org/openamf/io/AMFSerializer.java,v
retrieving revision 1.23
retrieving revision 1.24
diff -C2 -d -r1.23 -r1.24
*** AMFSerializer.java 26 Apr 2003 23:46:35 -0000 1.23
--- AMFSerializer.java 2 May 2003 18:20:09 -0000 1.24
***************
*** 16,25 ****
import org.apache.commons.logging.Log;
import org.apache.commons.logging.LogFactory;
- import org.apache.crimson.tree.XmlDocument;
import org.openamf.AMFBody;
import org.openamf.AMFMessage;
import org.openamf.ASObject;
import org.openamf.recordset.ASRecordSet;
import org.w3c.dom.Document;
//TODO: use http://www.php.net/manual/en/function.pack.php to convert php
--- 16,26 ----
import org.apache.commons.logging.Log;
import org.apache.commons.logging.LogFactory;
import org.openamf.AMFBody;
import org.openamf.AMFMessage;
import org.openamf.ASObject;
import org.openamf.recordset.ASRecordSet;
+ import org.openamf.util.XMLUtils;
import org.w3c.dom.Document;
+ import org.w3c.dom.Element;
//TODO: use http://www.php.net/manual/en/function.pack.php to convert php
***************
*** 105,113 ****
writeMap(value);
} else if (value instanceof ResultSet) {
! ASRecordSet asRecordSet = new ASRecordSet();
! asRecordSet.populate((ResultSet)value);
writeData(asRecordSet);
} else if (value instanceof Document) {
! writeXML((XmlDocument) value);
} else {
/*
--- 106,114 ----
writeMap(value);
} else if (value instanceof ResultSet) {
! ASRecordSet asRecordSet = new ASRecordSet();
! asRecordSet.populate((ResultSet) value);
writeData(asRecordSet);
} else if (value instanceof Document) {
! writeXML((Document) value);
} else {
/*
***************
*** 125,129 ****
outputStream.writeByte(AMFBody.DATA_TYPE_OBJECT);
try {
! PropertyDescriptor[] properties = PropertyUtils.getPropertyDescriptors(object);
for (int i = 0; i < properties.length; i++) {
if (!properties[i].getName().equals("class")) {
--- 126,131 ----
outputStream.writeByte(AMFBody.DATA_TYPE_OBJECT);
try {
! PropertyDescriptor[] properties =
! PropertyUtils.getPropertyDescriptors(object);
for (int i = 0; i < properties.length; i++) {
if (!properties[i].getName().equals("class")) {
***************
*** 178,185 ****
Map map = (Map) value;
! if (value instanceof ASObject && ((ASObject)value).getType() != null) {
! log.debug("Writting Custom Class: " + ((ASObject)value).getType());
outputStream.writeByte(AMFBody.DATA_TYPE_CUSTOM_CLASS);
! outputStream.writeUTF(((ASObject)value).getType());
} else {
log.debug("Writting Map");
--- 180,188 ----
Map map = (Map) value;
! if (value instanceof ASObject
! && ((ASObject) value).getType() != null) {
! log.debug("Writting Custom Class: " + ((ASObject) value).getType());
outputStream.writeByte(AMFBody.DATA_TYPE_CUSTOM_CLASS);
! outputStream.writeUTF(((ASObject) value).getType());
} else {
log.debug("Writting Map");
***************
*** 188,192 ****
log.debug("size = " + map.entrySet().size());
for (Iterator entrys = map.entrySet().iterator(); entrys.hasNext();) {
! Map.Entry entry = (Map.Entry)entrys.next();
log.debug(entry.getKey().toString() + ": " + entry.getValue());
outputStream.writeUTF(entry.getKey().toString());
--- 191,195 ----
log.debug("size = " + map.entrySet().size());
for (Iterator entrys = map.entrySet().iterator(); entrys.hasNext();) {
! Map.Entry entry = (Map.Entry) entrys.next();
log.debug(entry.getKey().toString() + ": " + entry.getValue());
outputStream.writeUTF(entry.getKey().toString());
***************
*** 197,206 ****
}
! private void writeXML(XmlDocument value) throws IOException {
outputStream.writeByte(AMFBody.DATA_TYPE_XML);
! ByteArrayOutputStream byteStream = new ByteArrayOutputStream();
! value.write(byteStream);
! outputStream.writeInt(byteStream.size());
! byteStream.writeTo(outputStream);
}
}
--- 200,213 ----
}
! private void writeXML(Document document) throws IOException {
outputStream.writeByte(AMFBody.DATA_TYPE_XML);
! Element docElement = document.getDocumentElement();
! String xmlData = XMLUtils.convertDOMToString(docElement);
! log.debug("xmlData: \n" + xmlData);
! ByteArrayOutputStream baOutputStream = new ByteArrayOutputStream();
! baOutputStream.write(xmlData.getBytes());
! outputStream.writeInt(baOutputStream.size());
! baOutputStream.writeTo(outputStream);
}
+
}
-------------------------------------------------------
This sf.net email is sponsored by:ThinkGeek
Welcome to geek heaven.
http://thinkgeek.com/sf