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.spec;
016    
017    /**
018     *  Special subclass of {@link org.apache.tapestry.spec.BindingSpecification} used
019     *  to encapsulate the additional information 
020     *  specific to listener bindings.  In a ListenerBindingSpecification, the
021     *  value property is the actual script (and is aliased as property script), 
022     *  but an additional property,
023     *  language, (which may be null) is needed.  This is the language
024     *  the script is written in.
025     *
026     *  @author Howard Lewis Ship
027     *  @since 3.0
028     *
029     **/
030    
031    public class ListenerBindingSpecification extends BindingSpecification implements IListenerBindingSpecification
032    {
033        protected String _language;
034        
035        public ListenerBindingSpecification()
036        {
037            setType(BindingType.LISTENER);
038        }
039        
040        public String getLanguage()
041        {
042            return _language;
043        }
044        
045        public String getScript()
046        {
047            return getValue();
048        }
049        
050        public void setLanguage(String language)
051        {
052            _language = language;
053        }
054    
055    }