View Javadoc

1   /*
2    * $Id: JettyLogger.java 22858 2011-09-05 08:52:34Z dirk.olmes $
3    * --------------------------------------------------------------------------------------
4    * Copyright (c) MuleSoft, Inc.  All rights reserved.  http://www.mulesoft.com
5    *
6    * The software in this package is published under the terms of the CPAL v1.0
7    * license, a copy of which has been included with this distribution in the
8    * LICENSE.txt file.
9    */
10  
11  package org.mule.transport.servlet.jetty;
12  
13  import org.mule.module.logging.MuleLoggerFactory;
14  import org.mule.util.StringMessageUtils;
15  
16  import java.util.ArrayList;
17  import java.util.List;
18  
19  import org.mortbay.log.Logger;
20  import org.slf4j.ILoggerFactory;
21  import org.slf4j.impl.StaticLoggerBinder;
22  
23  public class JettyLogger implements Logger
24  {
25      private org.slf4j.Logger logger;
26  
27      public JettyLogger()
28      {
29          super();
30          initLogger();
31      }
32  
33      protected void initLogger()
34      {
35          ILoggerFactory loggerFactory = StaticLoggerBinder.getSingleton().getLoggerFactory();
36          String message = null;
37          if ((loggerFactory instanceof MuleLoggerFactory) == false)
38          {
39              List<String> messages = new ArrayList<String>();
40              messages.add("Mule's StaticLoggerBinder should be installed but isn't.");
41              messages.add("Logger factory in place is: " + loggerFactory.getClass().getName());
42              message = StringMessageUtils.getBoilerPlate(messages, '!', 70);
43          }
44  
45          logger = loggerFactory.getLogger("org.mortbay.jetty");
46          if (message != null)
47          {
48              logger.warn(message);
49          }
50      }
51  
52      @Override
53      public boolean isDebugEnabled()
54      {
55          return logger.isDebugEnabled();
56      }
57  
58      @Override
59      public void setDebugEnabled(boolean enabled)
60      {
61          warn("Ignoring call to unsupported method 'setDebugEnabled'", null, null);
62      }
63  
64      @Override
65      public void info(String msg, Object arg0, Object arg1)
66      {
67          logger.info(msg, arg0, arg1);
68      }
69  
70      @Override
71      public void debug(String msg, Throwable th)
72      {
73          logger.debug(msg, th);
74      }
75  
76      @Override
77      public void debug(String msg, Object arg0, Object arg1)
78      {
79          logger.debug(msg, arg0, arg1);
80      }
81  
82      @Override
83      public void warn(String msg, Object arg0, Object arg1)
84      {
85          logger.warn(msg, arg0, arg1);
86      }
87  
88      @Override
89      public void warn(String msg, Throwable th)
90      {
91          logger.warn(msg, th);
92      }
93  
94      @Override
95      public Logger getLogger(String name)
96      {
97          return this;
98      }
99  }