text: """
  
  """
  
  """
  websocket - WebSocket client library for Python
  
  Copyright (C) 2010 Hiroki Ohtani(liris)
  
      This library is free software; you can redistribute it and/or
      modify it under the terms of the GNU Lesser General Public
      License as published by the Free Software Foundation; either
      version 2.1 of the License, or (at your option) any later version.
  
      This library is distributed in the hope that it will be useful,
      but WITHOUT ANY WARRANTY; without even the implied warranty of
      MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
      Lesser General Public License for more details.
  
      You should have received a copy of the GNU Lesser General Public
      License along with this library; if not, write to the Free Software
      Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
  
  """
  import logging
  
  _logger = logging.getLogger('websocket')
  try:
      from logging import NullHandler
  except ImportError:
      class NullHandler(logging.Handler):
          def emit(self, record):
              pass
  
  _logger.addHandler(NullHandler())
  
  _traceEnabled = False
  
  __all__ = ["enableTrace", "dump", "error", "warning", "debug", "trace",
             "isEnabledForError", "isEnabledForDebug", "isEnabledForTrace"]
  
  
  def enableTrace(traceable, handler = logging.StreamHandler()):
      """
      Turn on/off the traceability.
  
      Parameters
      ----------
      traceable: bool
          If set to True, traceability is enabled.
      """
      global _traceEnabled
      _traceEnabled = traceable
      if traceable:
          _logger.addHandler(handler)
          _logger.setLevel(logging.DEBUG)
  
  def dump(title, message):
      if _traceEnabled:
          _logger.debug("--- " + title + " ---")
          _logger.debug(message)
          _logger.debug("-----------------------")
  
  
  def error(msg):
      _logger.error(msg)
  
  
  def warning(msg):
      _logger.warning(msg)
  
  
  def debug(msg):
      _logger.debug(msg)
  
  
  def trace(msg):
      if _traceEnabled:
          _logger.debug(msg)
  
  
  def isEnabledForError():
      return _logger.isEnabledFor(logging.ERROR)
  
  
  def isEnabledForDebug():
      return _logger.isEnabledFor(logging.DEBUG)
  
  def isEnabledForTrace():
      return _traceEnabled
  