content: import logging
  
  from kube_hunter.modules.report.json import JSONReporter
  from kube_hunter.modules.report.yaml import YAMLReporter
  from kube_hunter.modules.report.plain import PlainReporter
  from kube_hunter.modules.report.dispatchers import STDOUTDispatcher, HTTPDispatcher
  
  logger = logging.getLogger(__name__)
  
  DEFAULT_REPORTER = "plain"
  reporters = {
      "yaml": YAMLReporter,
      "json": JSONReporter,
      "plain": PlainReporter,
  }
  
  DEFAULT_DISPATCHER = "stdout"
  dispatchers = {
      "stdout": STDOUTDispatcher,
      "http": HTTPDispatcher,
  }
  
  
  def get_reporter(name):
      try:
          return reporters[name.lower()]()
      except KeyError:
          logger.warning(f'Unknown reporter "{name}", using f{DEFAULT_REPORTER}')
          return reporters[DEFAULT_REPORTER]()
  
  
  def get_dispatcher(name):
      try:
          return dispatchers[name.lower()]()
      except KeyError:
          logger.warning(f'Unknown dispatcher "{name}", using {DEFAULT_DISPATCHER}')
          return dispatchers[DEFAULT_DISPATCHER]()
  