From: Wolfgang M. M. <wol...@us...> - 2004-12-26 16:40:47
|
Update of /cvsroot/exist/eXist-1.0/src/org/exist/util/serializer In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv27016/src/org/exist/util/serializer Modified Files: ReceiverToSAX.java XMLWriter.java SAXSerializer.java Receiver.java Log Message: Added support for CDATA constructors to XQuery parser. Index: SAXSerializer.java =================================================================== RCS file: /cvsroot/exist/eXist-1.0/src/org/exist/util/serializer/SAXSerializer.java,v retrieving revision 1.8 retrieving revision 1.9 diff -C2 -d -r1.8 -r1.9 *** SAXSerializer.java 12 Sep 2004 09:25:15 -0000 1.8 --- SAXSerializer.java 26 Dec 2004 16:40:31 -0000 1.9 *************** *** 382,385 **** --- 382,393 ---- } } + + public void cdataSection(char[] ch, int start, int len) throws SAXException { + try { + receiver.cdataSection(ch, start, len); + } catch (TransformerException e) { + throw new SAXException(e.getMessage(), e); + } + } /* (non-Javadoc) Index: ReceiverToSAX.java =================================================================== RCS file: /cvsroot/exist/eXist-1.0/src/org/exist/util/serializer/ReceiverToSAX.java,v retrieving revision 1.4 retrieving revision 1.5 diff -C2 -d -r1.4 -r1.5 *** ReceiverToSAX.java 29 Oct 2004 19:59:11 -0000 1.4 --- ReceiverToSAX.java 26 Dec 2004 16:40:31 -0000 1.5 *************** *** 155,157 **** --- 155,168 ---- } + /* (non-Javadoc) + * @see org.exist.util.serializer.Receiver#cdataSection(char[], int, int) + */ + public void cdataSection(char[] ch, int start, int len) throws SAXException { + if(lexicalHandler != null) + lexicalHandler.startCDATA(); + contentHandler.characters(ch, start, len); + if(lexicalHandler != null) + lexicalHandler.endCDATA(); + } + } Index: Receiver.java =================================================================== RCS file: /cvsroot/exist/eXist-1.0/src/org/exist/util/serializer/Receiver.java,v retrieving revision 1.1 retrieving revision 1.2 diff -C2 -d -r1.1 -r1.2 *** Receiver.java 12 Sep 2004 09:25:16 -0000 1.1 --- Receiver.java 26 Dec 2004 16:40:31 -0000 1.2 *************** *** 35,41 **** public interface Receiver { ! public abstract void startDocument() throws SAXException; ! public abstract void endDocument() throws SAXException; public void startPrefixMapping(String prefix, String namespaceURI) throws SAXException; --- 35,41 ---- public interface Receiver { ! public void startDocument() throws SAXException; ! public void endDocument() throws SAXException; public void startPrefixMapping(String prefix, String namespaceURI) throws SAXException; *************** *** 43,57 **** public void endPrefixMapping(String prefix) throws SAXException; ! public abstract void startElement(QName qname, AttrList attribs) throws SAXException; ! public abstract void endElement(QName qname) throws SAXException; ! public abstract void characters(CharSequence seq) throws SAXException; ! public abstract void attribute(QName qname, String value) throws SAXException; ! public abstract void comment(char[] ch, int start, int length) throws SAXException; public void processingInstruction(String target, String data) throws SAXException; --- 43,59 ---- public void endPrefixMapping(String prefix) throws SAXException; ! public void startElement(QName qname, AttrList attribs) throws SAXException; ! public void endElement(QName qname) throws SAXException; ! public void characters(CharSequence seq) throws SAXException; ! public void attribute(QName qname, String value) throws SAXException; ! public void comment(char[] ch, int start, int length) throws SAXException; + + public void cdataSection(char[] ch, int start, int len) throws SAXException; public void processingInstruction(String target, String data) throws SAXException; Index: XMLWriter.java =================================================================== RCS file: /cvsroot/exist/eXist-1.0/src/org/exist/util/serializer/XMLWriter.java,v retrieving revision 1.11 retrieving revision 1.12 diff -C2 -d -r1.11 -r1.12 *** XMLWriter.java 31 Oct 2004 21:11:10 -0000 1.11 --- XMLWriter.java 26 Dec 2004 16:40:31 -0000 1.12 *************** *** 301,304 **** --- 301,314 ---- } + public void cdataSection(char[] ch, int start, int len) throws TransformerException { + try { + writer.write("<![CDATA["); + writer.write(ch, start, len); + writer.write("]]>"); + } catch (IOException e) { + throw new TransformerException(e.getMessage(), e); + } + } + protected void closeStartTag(boolean isEmpty) throws TransformerException { try { |