View Javadoc

    1   /*
    2    * $Id: ComponentDefinitionsFactory.java 471754 2006-11-06 14:55:09Z husted $
    3    *
    4    * Licensed to the Apache Software Foundation (ASF) under one
    5    * or more contributor license agreements.  See the NOTICE file
    6    * distributed with this work for additional information
    7    * regarding copyright ownership.  The ASF licenses this file
    8    * to you under the Apache License, Version 2.0 (the
    9    * "License"); you may not use this file except in compliance
    10   * with the License.  You may obtain a copy of the License at
    11   *
    12   *  http://www.apache.org/licenses/LICENSE-2.0
    13   *
    14   * Unless required by applicable law or agreed to in writing,
    15   * software distributed under the License is distributed on an
    16   * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
    17   * KIND, either express or implied.  See the License for the
    18   * specific language governing permissions and limitations
    19   * under the License.
    20   */
    21
    22
    23  package org.apache.struts.tiles;
    24
    25  import java.io.Serializable;
    26  import java.util.Map;
    27
    28  import javax.servlet.ServletContext;
    29  import javax.servlet.ServletRequest;
    30
    31  /**
    32   * Component repository interface.
    33   * This interface allows to retrieve an definition by its name, independently of the
    34   * factory implementation.
    35   * Implementation must be Serializable, in order to be compliant with web Container
    36   * having this constraint (Weblogic 6.x).
    37   * @deprecated Use DefinitionsFactory instead.
    38  */
    39  public interface ComponentDefinitionsFactory extends Serializable
    40  {
    41
    42     /**
    43       * Get a definition by its name.
    44       * @param name Name of requested definition.
    45       * @param request Current servelet request
    46       * @param servletContext current servlet context
    47       * @throws DefinitionsFactoryException An error occur while getting definition.
    48       * @throws NoSuchDefinitionException No definition found for specified name
    49       * Implementation can throw more accurate exception as a subclass of this exception
    50     */
    51     public ComponentDefinition getDefinition(String name, ServletRequest request, ServletContext servletContext) throws NoSuchDefinitionException,DefinitionsFactoryException;
    52
    53     /**
    54       * Init factory.
    55       * This method is called exactly once immediately after factory creation in
    56       * case of internal creation (by DefinitionUtil).
    57       * @param servletContext Servlet Context passed to newly created factory.
    58       * @param properties Map of name/property passed to newly created factory.
    59       * Map can contains more properties than requested.
    60       * @throws DefinitionsFactoryException An error occur during initialization.
    61     */
    62     public void initFactory(ServletContext servletContext, Map properties) throws DefinitionsFactoryException;
    63  }