001    // Copyright 2004, 2005 The Apache Software Foundation
002    //
003    // Licensed under the Apache License, Version 2.0 (the "License");
004    // you may not use this file except in compliance with the License.
005    // You may obtain a copy of the License at
006    //
007    //     http://www.apache.org/licenses/LICENSE-2.0
008    //
009    // Unless required by applicable law or agreed to in writing, software
010    // distributed under the License is distributed on an "AS IS" BASIS,
011    // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
012    // See the License for the specific language governing permissions and
013    // limitations under the License.
014    
015    package org.apache.tapestry;
016    
017    /**
018     *  Defines a listener to an {@link IAction} component, which is way to
019     *  get behavior when the component's URL is triggered (or the form
020     *  containing the component is submitted).  Certain form elements 
021     *  ({@link org.apache.tapestry.form.Hidden})
022     *  also make use of this interface.
023     *
024     *  @author Howard Lewis Ship
025     *
026     **/
027    
028    public interface IActionListener
029    {
030    
031        /**
032         *  Method invoked by the component (an {@link org.apache.tapestry.link.ActionLink} or 
033         *  {@link org.apache.tapestry.form.Form}, when its URL is triggered.
034         *
035         *  @param component The component which was "triggered".
036         *  @param cycle The request cycle in which the component was triggered.
037         *
038         **/
039    
040        public void actionTriggered(IComponent component, IRequestCycle cycle);
041    }