<?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.wml.Timer" allow-body="no">

    <description>
        The Timer element declares a card timer, which exposes a means of processing inactivity or idle time.
        The timer is initialised and started at card entry and is stopped when the card is exited.
    </description>

    <parameter name="name" type="java.lang.String" direction="in">
        <description>
            The name attribute specifies the name of the variable to be set with the value of the timer. The name
            variable's value is used to set the timeout period upon timer initialisation. The variable named by the
            name attribute will be set with the current timer value when the card is exited or when the timer expires.
            For example, if the timer expires, the name variable is set to a value of "0".
        </description>
    </parameter>

    <parameter name="value" type="java.lang.String">
        <description>
            The value attribute indicates the default value of the variable named in the name attribute. When the
            timer is initialised and the variable named in the name attribute is not set, the name variable is assigned
            the value specified in the value attribute. If the name variable already contains a value, the value
            attribute is ignored. If the name attribute is not specified, the timeout is always initialised to the
            value specified in the value attribute.
        </description>
    </parameter>

</component-specification>
