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
    18  package org.apache.log4j.spi;
    19
    20  import java.io.InputStream;
    21  import java.net.URL;
    22
    23  /**
    24     Implemented by classes capable of configuring log4j using a URL.
    25
    26     @since 1.0
    27     @author Anders Kristensen
    28   */
    29  public interface Configurator {
    30
    31    /**
    32       Special level value signifying inherited behaviour. The current
    33       value of this string constant is <b>inherited</b>. {@link #NULL}
    34       is a synonym.  */
    35    public static final String INHERITED = "inherited";
    36
    37    /**
    38       Special level signifying inherited behaviour, same as {@link
    39       #INHERITED}. The current value of this string constant is
    40       <b>null</b>. */
    41    public static final String NULL = "null";
    42
    43
    44
    45    /**
    46      Interpret a resource pointed by a InputStream and set up log4j accordingly.
    47
    48      The configuration is done relative to the <code>hierarchy</code>
    49      parameter.
    50
    51      @param inputStream The InputStream to parse
    52      @param repository The hierarchy to operation upon.
    53
    54      @since 1.2.17
    55     */
    56    void doConfigure(InputStream inputStream, LoggerRepository repository);
    57
    58    /**
    59       Interpret a resource pointed by a URL and set up log4j accordingly.
    60
    61       The configuration is done relative to the <code>hierarchy</code>
    62       parameter.
    63
    64       @param url The URL to parse
    65       @param repository The hierarchy to operation upon.
    66     */
    67    void doConfigure(URL url, LoggerRepository repository);
    68  }