From: Wolfgang M. M. <wol...@us...> - 2004-05-03 13:08:55
|
Update of /cvsroot/exist/eXist-1.0/src/org/exist/xmlrpc In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv19067/src/org/exist/xmlrpc Modified Files: RpcConnection.java Log Message: Implemented lazy evaluation for XQuery enclosed expressions. Index: RpcConnection.java =================================================================== RCS file: /cvsroot/exist/eXist-1.0/src/org/exist/xmlrpc/RpcConnection.java,v retrieving revision 1.52 retrieving revision 1.53 diff -C2 -d -r1.52 -r1.53 *** RpcConnection.java 28 Apr 2004 14:20:22 -0000 1.52 --- RpcConnection.java 3 May 2004 13:08:47 -0000 1.53 *************** *** 1177,1196 **** throw new EXistException("index out of range"); ! if (item instanceof NodeProxy) { ! NodeProxy proxy = (NodeProxy) item; ! Serializer serializer = broker.getSerializer(); serializer.reset(); serializer.setProperties(parameters); ! return serializer.serialize(proxy); ! } else if (item instanceof Node) { ! StringWriter writer = new StringWriter(); ! Properties properties = getProperties(parameters); ! DOMSerializer serializer = DOMSerializerPool.getInstance() ! .borrowDOMSerializer(); ! serializer.setWriter(writer); ! serializer.setOutputProperties(properties); ! serializer.serialize((Node) item); ! DOMSerializerPool.getInstance().returnDOMSerializer(serializer); ! return writer.toString(); } else { return item.getStringValue(); --- 1177,1186 ---- throw new EXistException("index out of range"); ! if(Type.subTypeOf(item.getType(), Type.NODE)) { ! NodeValue nodeValue = (NodeValue)item; ! Serializer serializer = broker.getSerializer(); serializer.reset(); serializer.setProperties(parameters); ! return serializer.serialize(nodeValue); } else { return item.getStringValue(); |