code: def make_device_handler(device_params):
      
      if device_params is None:
          device_params = {}
  
      handler = device_params.get('handler', None)
      if handler:
          return handler(device_params)
  
      device_name = device_params.get("name", "default")
      # Attempt to import device handler class. All device handlers are
      # in a module called "ncclient.devices.<devicename>" and in a class named
      # "<devicename>DeviceHandler", with the first letter capitalized.
      class_name          = "%sDeviceHandler" % device_name.capitalize()
      devices_module_name = "ncclient.devices.%s" % device_name
      dev_module_obj      = __import__(devices_module_name)
      handler_module_obj  = getattr(getattr(dev_module_obj, "devices"), device_name)
      class_obj           = getattr(handler_module_obj, class_name)
      handler_obj         = class_obj(device_params)
      return handler_obj
docs: Create a device handler object that provides device specific parameters and
      functions, which are called in various places throughout our code.
  
      If no device_params are defined or the "name" in the parameter dict is not
      known then a default handler will be returned.