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
015package org.apache.tapestry.spec;
016
017
018
019/**
020 *  Defines and interface for the configuration for a Tapestry application.  An ApplicationSpecification
021 *  extends {@link ILibrarySpecification} by adding new properties 
022 *  name and engineClassName.
023 *
024 *  @author Geoffrey Longman
025 *
026 **/
027
028public interface IApplicationSpecification extends ILibrarySpecification
029{
030    /**
031     *  Returns a "user friendly" name for the application (which is optional).
032     * 
033     **/
034    
035    public String getName();
036
037    public void setEngineClassName(String value);
038    
039    /**
040     *  Returns the name of the class (which implements {@link org.apache.tapestry.IEngine}).
041     *  May return null, in which case a default is used.
042     * 
043     **/
044    
045    public String getEngineClassName();
046    
047    public void setName(String name);
048}