<?xml version="1.0" encoding="UTF-8"?>
<!--
   Copyright 2004 The Apache Software Foundation
  
   Licensed under the Apache License, Version 2.0 (the "License");
   you may not use this file except in compliance with the License.
   You may obtain a copy of the License at
  
       http://www.apache.org/licenses/LICENSE-2.0
  
   Unless required by applicable law or agreed to in writing, software
   distributed under the License is distributed on an "AS IS" BASIS,
   WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
   See the License for the specific language governing permissions and
   limitations under the License.
-->
<!-- $Id$ -->
<!DOCTYPE component-specification PUBLIC 
  "-//Apache Software Foundation//Tapestry Specification 3.0//EN" 
  "http://jakarta.apache.org/tapestry/dtd/Tapestry_3_0.dtd">
	
<component-specification class="org.apache.tapestry.contrib.inspector.ShowEngine" allow-body="no" allow-informal-parameters="no">

  <component id="insertFrameworkVersion" type="Insert">
  	<binding name="value" expression="@org.apache.tapestry.Tapestry@VERSION"/>
  </component>
  
  <component id="insertApplicationName" type="Insert">
    <binding name="value" expression="page.engine.specification.name"/>
  </component>
  
  <component id="insertContextPath" type="Insert">
    <binding name="value" expression="page.engine.contextPath"/>
  </component>
  
  <component id="insertServletPath" type="Insert">
    <binding name="value" expression="page.engine.servletPath"/>
  </component>
  
  <component id="insertEngineClass" type="Insert">
    <binding name="value" expression="engineClassName"/>
  </component>
  
  <component id="insertLocale" type="Insert">
    <binding name="value" expression="page.engine.locale.displayName"/>
  </component>
  
  <component id="ifNoVisit" type="Conditional">
    <binding name="condition" expression="! page.engine.hasVisit"/>
  </component>
  
  <component id="insertVisit" type="Insert">
    <binding name="value" expression="page.engine.visit"/>
  </component>
  
  <component id="ifVisit" type="Conditional">
    <binding name="condition" expression="page.engine.hasVisit"/>
  </component>
  
  <component id="restart" type="ServiceLink">
    <binding name="service" expression="@org.apache.tapestry.Tapestry@RESTART_SERVICE"/>
  </component>
  
  <component id="restartButton" type="Rollover">
    <binding name="image" expression="assets.restart"/>
    <binding name="focus" expression="assets.restartFocus"/>
  </component>
  
  <component id="reset" type="ServiceLink">
    <binding name="service" expression="@org.apache.tapestry.Tapestry@RESET_SERVICE"/>
    <binding name="disabled" expression="! page.engine.resetServiceEnabled"/>
  </component>
  
  <component id="resetButton" type="Rollover">
    <binding name="image" expression="assets.reset"/>
    <binding name="focus" expression="assets.resetFocus"/>
    <binding name="disabled" expression="assets.resetDisabled"/>
  </component>
  
  <component id="insertByteCount" type="Insert">
    <binding name="value" expression="engineByteCount"/>
  </component>
  
  <component id="insertSerializedEngine" type="Delegator">
    <binding name="delegate" expression="engineDumpDelegate"/>
  </component>
  
  <component id="insertRequest" type="Delegator">
    <binding name="delegate" expression="page.requestCycle.requestContext"/>
  </component>
  
  <private-asset name="reset" resource-path="Reset_Np1.gif"/>
  <private-asset name="resetFocus" resource-path="Reset_NRp2.gif"/>
  <private-asset name="resetDisabled" resource-path="Reset_Np1_disabled.gif"/>
  <private-asset name="restart" resource-path="Restart_Np1.gif"/>
  <private-asset name="restartFocus" resource-path="Restart_NRp2.gif"/>
</component-specification>
