def METHOD_NAME(config):
    """From a config object create a config dict suitable for a queue object"""
    from os import path
    wqManager = config.section_('WorkQueueManager')
    if not hasattr(wqManager, 'componentDir'):
        wqManager.componentDir = path.join(config.General.WorkDir,
                                           'WorkQueueManager')
    if not hasattr(wqManager, 'namespace'):
        wqManager.namespace = 'WMComponent.WorkQueueManager.WorkQueueManager'
    if not hasattr(wqManager, 'logLevel'):
        wqManager.logLevel = 'INFO'
    if not hasattr(wqManager, 'pollInterval'):
        wqManager.pollInterval = 600
    # WorkQueue config
    if not hasattr(wqManager, 'queueParams'):
        wqManager.queueParams = {}
    qConfig = wqManager.queueParams
    # Rucio-related config
    if hasattr(wqManager, 'rucioUrl'):
        qConfig['rucioUrl'] = wqManager.rucioUrl
    if hasattr(wqManager, 'rucioAuthUrl'):
        qConfig['rucioAuthUrl'] = wqManager.rucioAuthUrl
    if hasattr(wqManager, 'couchurl'):
        qConfig['CouchUrl'] = wqManager.couchurl
    if hasattr(wqManager, 'dbname'):
        qConfig['DbName'] = wqManager.dbname
    if hasattr(wqManager, 'inboxDatabase'):
        qConfig['InboxDbName'] = wqManager.inboxDatabase
    # pull some info we need from other areas of the config
    if "BossAirConfig" not in qConfig and hasattr(config, 'BossAir'):
        qConfig["BossAirConfig"] = config
        qConfig['BossAirConfig'].section_("Agent").agentName = config.Agent.agentName
    if "JobDumpConfig" not in qConfig and hasattr(config, 'JobStateMachine'):
        qConfig["JobDumpConfig"] = config
    if "CacheDir" not in qConfig and getattr(config.WorkQueueManager, 'componentDir', None):
        qConfig['CacheDir'] = os.path.join(config.WorkQueueManager.componentDir, 'cache')
    if 'Team' not in qConfig and hasattr(config.Agent, 'teamName'):
        qConfig['Team'] = config.Agent.teamName
    if 'logger' not in qConfig:
        import threading
        myThread = threading.currentThread()
        if not hasattr(myThread, 'logger'):
            loggingLevelName = getattr(wqManager, 'logLevel', 'INFO')
            logging.basicConfig(format='%(asctime)-15s %(levelname)-8s %(module)s: %(message)s',
                                level=getattr(logging, loggingLevelName))
            myThread.logger = logging.getLogger('workqueue')
        qConfig['logger'] = myThread.logger
    # ReqMgr params
    if not hasattr(wqManager, 'reqMgrConfig'):
        wqManager.reqMgrConfig = {}
    return config