vgritsenko 02/04/13 21:06:19 Modified: src/java/org/apache/cocoon/components/xscript Tag: cocoon_2_0_3_branch XScriptManagerImpl.java XScriptObject.java XScriptObjectFromURL.java XScriptObjectInlineXML.java Log: fix xscript Revision Changes Path No revision No revision 1.6.2.1 +1 -3 xml-cocoon2/src/java/org/apache/cocoon/components/xscript/XScriptManagerImpl.java Index: XScriptManagerImpl.java =================================================================== RCS file: /home/cvs/xml-cocoon2/src/java/org/apache/cocoon/components/xscript/XScriptManagerImpl.java,v retrieving revision 1.6 retrieving revision 1.6.2.1 diff -u -r1.6 -r1.6.2.1 --- XScriptManagerImpl.java 22 Feb 2002 07:00:15 -0000 1.6 +++ XScriptManagerImpl.java 14 Apr 2002 04:06:19 -0000 1.6.2.1 @@ -52,8 +52,6 @@ import java.util.HashMap; -import java.io.InputStream; - import org.apache.avalon.framework.logger.AbstractLoggable; import org.apache.avalon.framework.parameters.Parameters; import org.apache.avalon.framework.parameters.Parameterizable; @@ -71,7 +69,7 @@ * The actual implementation of the <code>XScriptManager</code> interface. * * @author <a href="mailto:[EMAIL PROTECTED]">Ovidiu Predescu</a> - * @version CVS $Id: XScriptManagerImpl.java,v 1.6 2002/02/22 07:00:15 cziegeler Exp $ + * @version CVS $Id: XScriptManagerImpl.java,v 1.6.2.1 2002/04/14 04:06:19 vgritsenko Exp $ * @since August 4, 2001 */ public class XScriptManagerImpl 1.7.2.1 +23 -18 xml-cocoon2/src/java/org/apache/cocoon/components/xscript/XScriptObject.java Index: XScriptObject.java =================================================================== RCS file: /home/cvs/xml-cocoon2/src/java/org/apache/cocoon/components/xscript/XScriptObject.java,v retrieving revision 1.7 retrieving revision 1.7.2.1 diff -u -r1.7 -r1.7.2.1 --- XScriptObject.java 22 Feb 2002 07:00:15 -0000 1.7 +++ XScriptObject.java 14 Apr 2002 04:06:19 -0000 1.7.2.1 @@ -66,7 +66,6 @@ import org.apache.avalon.framework.parameters.Parameters; import org.apache.avalon.framework.component.ComponentManager; import org.apache.avalon.framework.component.ComponentException; -import org.apache.avalon.framework.component.Component; import org.apache.avalon.framework.component.Composable; /** @@ -75,7 +74,7 @@ * Source object. * * @author <a href="mailto:[EMAIL PROTECTED]">Ovidiu Predescu</a> - * @version CVS $Id: XScriptObject.java,v 1.7 2002/02/22 07:00:15 cziegeler Exp $ + * @version CVS $Id: XScriptObject.java,v 1.7.2.1 2002/04/14 04:06:19 vgritsenko Exp $ * @since August 4, 2001 */ public abstract class XScriptObject implements Source, Composable @@ -115,12 +114,11 @@ * variable to this instance. Return the result of the * transformation as an <code>XScriptObject</code>. * - * @param source a <code>XScriptObject</code> value * @param stylesheet a <code>XScriptObject</code> value * @param params a <code>Parameters</code> value containing optional * arguments to be passed to the XSLT processor. - * @param result a <code>Result</code> value. This is where the - * result of the XSLT processing will be placed. + * @return <code>XScriptObject</code> object containing the result + * of the XSLT processing. * @exception IllegalArgumentException if an error occurs * @exception ProcessingException if an error occurs */ @@ -145,27 +143,32 @@ } } - public void toSAX(ContentHandler handler) - throws SAXException + public void toEmbeddedSAX(ContentHandler handler) throws SAXException + { + EmbeddedXMLPipe newHandler = new EmbeddedXMLPipe(handler); + toSAX(newHandler); + } + + /* The Source interface methods. */ + + public void toSAX(ContentHandler handler) throws SAXException { Parser parser = null; try { - EmbeddedXMLPipe newHandler = new EmbeddedXMLPipe(handler); - parser = (Parser)componentManager.lookup(Parser.ROLE); - InputSource source = getInputSource(); - parser.parse(source, newHandler); - - } catch (Exception ex) { - throw new SAXException(ex); + parser.parse(source, handler); + } catch (SAXException e) { + throw e; + } catch (Exception e) { + throw new SAXException(e); } finally { - if (parser != null) componentManager.release(parser); + if (parser != null) { + componentManager.release(parser); + } } } - /* The Source interface methods. */ - public long getLastModified() { return lastModifiedDate.getTime(); @@ -176,7 +179,9 @@ public InputSource getInputSource() throws ProcessingException, IOException { - return new InputSource(getInputStream()); + InputSource is = new InputSource(getInputStream()); + is.setSystemId(getSystemId()); + return is; } public void recycle() 1.5.2.1 +3 -7 xml-cocoon2/src/java/org/apache/cocoon/components/xscript/XScriptObjectFromURL.java Index: XScriptObjectFromURL.java =================================================================== RCS file: /home/cvs/xml-cocoon2/src/java/org/apache/cocoon/components/xscript/XScriptObjectFromURL.java,v retrieving revision 1.5 retrieving revision 1.5.2.1 diff -u -r1.5 -r1.5.2.1 --- XScriptObjectFromURL.java 22 Feb 2002 07:00:15 -0000 1.5 +++ XScriptObjectFromURL.java 14 Apr 2002 04:06:19 -0000 1.5.2.1 @@ -57,16 +57,13 @@ import org.apache.cocoon.components.url.URLFactory; import org.apache.cocoon.ProcessingException; -import org.apache.avalon.framework.component.Composable; -import org.apache.avalon.framework.component.ComponentManager; import org.apache.avalon.framework.component.ComponentException; -import org.apache.avalon.framework.component.Component; /** * An <code>XScriptObject</code> created from the contents of a URL. * * @author <a href="mailto:[EMAIL PROTECTED]">Ovidiu Predescu</a> - * @version CVS $Id: XScriptObjectFromURL.java,v 1.5 2002/02/22 07:00:15 cziegeler Exp $ + * @version CVS $Id: XScriptObjectFromURL.java,v 1.5.2.1 2002/04/14 04:06:19 vgritsenko Exp $ * @since August 30, 2001 */ public class XScriptObjectFromURL extends XScriptObject @@ -105,8 +102,7 @@ componentManager.release(urlFactory); return is; - } - catch (ComponentException ex) { + } catch (ComponentException ex) { throw new ProcessingException(ex); } } @@ -124,7 +120,7 @@ public String getSystemId() { // FIXME: generate a real system id to represent this object - return "file:/"; + return "xscript:url:" + systemId; } public void recycle() 1.4.2.1 +2 -2 xml-cocoon2/src/java/org/apache/cocoon/components/xscript/XScriptObjectInlineXML.java Index: XScriptObjectInlineXML.java =================================================================== RCS file: /home/cvs/xml-cocoon2/src/java/org/apache/cocoon/components/xscript/XScriptObjectInlineXML.java,v retrieving revision 1.4 retrieving revision 1.4.2.1 diff -u -r1.4 -r1.4.2.1 --- XScriptObjectInlineXML.java 22 Feb 2002 07:00:15 -0000 1.4 +++ XScriptObjectInlineXML.java 14 Apr 2002 04:06:19 -0000 1.4.2.1 @@ -68,7 +68,7 @@ * An <code>XScriptObject</code> created from an inline XML fragment. * * @author <a href="mailto:[EMAIL PROTECTED]">Ovidiu Predescu</a> - * @version CVS $Id: XScriptObjectInlineXML.java,v 1.4 2002/02/22 07:00:15 cziegeler Exp $ + * @version CVS $Id: XScriptObjectInlineXML.java,v 1.4.2.1 2002/04/14 04:06:19 vgritsenko Exp $ * @since July 7, 2001 */ public class XScriptObjectInlineXML extends XScriptObject @@ -129,6 +129,6 @@ { // FIXME: Implement a URI scheme to be able to refer to XScript // variables by URI - return "file:/"; + return "xscript:inline:" + System.identityHashCode(this); } }
---------------------------------------------------------------------- In case of troubles, e-mail: [EMAIL PROTECTED] To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]