View Javadoc
1   package org.slf4j.spi;
2   
3   import org.slf4j.ILoggerFactory;
4   import org.slf4j.IMarkerFactory;
5   import org.slf4j.LoggerFactory;
6   import org.slf4j.MDC;
7   
8   /**
9    * This interface based on {@link java.util.ServiceLoader} paradigm. 
10   * 
11   * <p>It replaces the old static-binding mechanism used in SLF4J versions 1.0.x to 1.7.x.
12   *
13   * @author Ceki G&uml;lc&uml;
14   * @since 1.8
15   */
16  public interface SLF4JServiceProvider {
17  
18      /**
19       * Return the instance of {@link ILoggerFactory} that 
20       * {@link org.slf4j.LoggerFactory} class should bind to.
21       * 
22       * @return instance of {@link ILoggerFactory} 
23       */
24      public ILoggerFactory getLoggerFactory();
25  
26      /**
27       * Return the instance of {@link IMarkerFactory} that 
28       * {@link org.slf4j.MarkerFactory} class should bind to.
29       * 
30       * @return instance of {@link IMarkerFactory} 
31       */
32      public IMarkerFactory getMarkerFactory();
33  
34      /**
35       * Return the instance of {@link MDCAdapter} that
36       * {@link MDC} should bind to.
37       * 
38       * @return instance of {@link MDCAdapter} 
39       */
40      public MDCAdapter getMDCAdapter();
41  
42      public String getRequestedApiVersion();
43  
44      /**
45       * Initialize the logging back-end.
46       * 
47       * <p><b>WARNING:</b> This method is intended to be called once by 
48       * {@link LoggerFactory} class and from nowhere else. 
49       * 
50       */
51      public void initialize();
52  }