View Javadoc
1   /*
2    * Copyright 2001-2004 The Apache Software Foundation.
3    *
4    * Licensed under the Apache License, Version 2.0 (the "License");
5    * you may not use this file except in compliance with the License.
6    * You may obtain a copy of the License at
7    *
8    *      http://www.apache.org/licenses/LICENSE-2.0
9    *
10   * Unless required by applicable law or agreed to in writing, software
11   * distributed under the License is distributed on an "AS IS" BASIS,
12   * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13   * See the License for the specific language governing permissions and
14   * limitations under the License.
15   */
16  
17  package org.apache.log4j.spi;
18  
19  import java.net.URL;
20  
21  /**
22     Implemented by classes capable of configuring log4j using a URL.
23  
24     @since 1.0
25     @author Anders Kristensen
26   */
27  public interface Configurator {
28  
29      /**
30         Special level value signifying inherited behaviour. The current
31         value of this string constant is <b>inherited</b>. {@link #NULL}
32         is a synonym.  */
33      public static final String INHERITED = "inherited";
34  
35      /**
36         Special level signifying inherited behaviour, same as {@link
37         #INHERITED}. The current value of this string constant is
38         <b>null</b>. */
39      public static final String NULL = "null";
40  
41      /**
42         Interpret a resource pointed by a URL and set up log4j accordingly.
43      
44         The configuration is done relative to the <code>hierarchy</code>
45         parameter.
46      
47         @param url The URL to parse
48         @param repository The hierarchy to operation upon.
49       */
50      void doConfigure(URL url, LoggerRepository repository);
51  }