View Javadoc

    1   /*
    2    * Licensed to the Apache Software Foundation (ASF) under one or more
    3    * contributor license agreements.  See the NOTICE file distributed with
    4    * this work for additional information regarding copyright ownership.
    5    * The ASF licenses this file to You under the Apache License, Version 2.0
    6    * (the "License"); you may not use this file except in compliance with
    7    * the License.  You may obtain a copy of the License at
    8    *
    9    *     http://www.apache.org/licenses/LICENSE-2.0
    10   *
    11   * Unless required by applicable law or agreed to in writing, software
    12   * distributed under the License is distributed on an "AS IS" BASIS,
    13   * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
    14   * See the License for the specific language governing permissions and
    15   * limitations under the License.
    16   */
    17  package org.apache.commons.configuration;
    18
    19  /***
    20   * <p>
    21   * Definition of an interface for objects that can create a configuration.
    22   * </p>
    23   * <p>
    24   * This interface defines an abstract way of creating a
    25   * <code>Configuration</code> object. It does not assume any specific way of
    26   * how this is done; this is completely in the responsibility of an
    27   * implementation class. There is just a single method that returns the
    28   * configuration constructed by this builder.
    29   * </p>
    30   *
    31   * @author <a
    32   * href="http://jakarta.apache.org/commons/configuration/team-list.html">Commons
    33   * Configuration team</a>
    34   * @version $Id: ConfigurationBuilder.java 439648 2006-09-02 20:42:10Z oheger $
    35   */
    36  public interface ConfigurationBuilder
    37  {
    38      /***
    39       * Returns the configuration provided by this builder. An implementation has
    40       * to perform all necessary steps for creating and initializing a
    41       * <code>Configuration</code> object.
    42       *
    43       * @return the configuration
    44       * @throws ConfigurationException if an error occurs
    45       */
    46      Configuration getConfiguration() throws ConfigurationException;
    47  }