<?xml version="1.0"?>

<xconf xpath="/cocoon/flow-interpreters" unless="component-instance[@name='intercepted-javascript']">

    <!-- Intercepted, FOM-aware JavaScript Interpreter -->
    <component-instance class="org.apache.cocoon.components.flow.javascript.fom.AO_FOM_JavaScriptInterpreter" name="intercepted-javascript">
      <load-on-startup>resource://org/apache/cocoon/components/flow/javascript/fom/ao_fom_system.js</load-on-startup>
      <reload-scripts>true</reload-scripts>
      <check-time>40</check-time>
      <!--  <debugger>enabled</debugger> --> <!-- JavaScript Debugger support -->
      
      <!-- ************* interception support ***************** -->
        <!-- on/off switch -->
        <enable-interception>true</enable-interception>
        <!-- list of all functions that stop flow execution -->
        <cont-creating-functions>
          <function>cocoon.sendPageAndWait()</function>
          <function>woody.send()</function>
        </cont-creating-functions>
        <!-- the result script is copied in the same directory as the basescript 
             if the file protocol is used to resolve the script 
             
             WARNING:
             the result script is streamed into the same directory as the basescript
             with the only difference that "_intercepted.js" is appended. So make
             sure that you don't create any files with the name 
             [yourPath]/[yourBasescript-name]_intercepted.js which will be overwritten
             
         -->
        <serialize-result-script>false</serialize-result-script>
    </component-instance>   

</xconf>
