Settings

Module is containing all necessary global variables for package.

Module also has ability to read user-defined data from two paths: $HOME/SETTINGS_PATH and /etc/SETTINGS_PATH.

Note

If the first path is found, other is ignored.

Example of the configuration file ($HOME/edeposit/amqp.json):

{
    "RABBITMQ_HOST": "localhost",
    "RABBITMQ_PORT": "2222"
}

Attributes

edeposit.amqp.settings.RABBITMQ_ALEPH_EXCEPTION_KEY = 'exception'
edeposit.amqp.settings.RABBITMQ_ALEPH_EXCHANGE = 'search'
edeposit.amqp.settings.RABBITMQ_ALEPH_INPUT_KEY = 'request'
edeposit.amqp.settings.RABBITMQ_ALEPH_INPUT_QUEUE = 'daemon'

Input Queue

Output Queue

Virtualhost

edeposit.amqp.settings.RABBITMQ_ALEPH_OUTPUT_KEY = 'result'
edeposit.amqp.settings.RABBITMQ_ALEPH_OUTPUT_QUEUE = 'plone'
edeposit.amqp.settings.RABBITMQ_ALEPH_VIRTUALHOST = 'aleph'
edeposit.amqp.settings.RABBITMQ_ANTIVIRUS_INPUT_KEY = 'request'
edeposit.amqp.settings.RABBITMQ_ANTIVIRUS_INPUT_QUEUE = 'daemon'

Input Queue for AV AMQP daemon

edeposit.amqp.settings.RABBITMQ_ANTIVIRUS_OUTPUT_KEY = 'result'
edeposit.amqp.settings.RABBITMQ_ANTIVIRUS_OUTPUT_QUEUE = 'plone'

Queue to put responses

edeposit.amqp.settings.RABBITMQ_ANTIVIRUS_VIRTUALHOST = 'antivirus'

Virtualhost for AV module

edeposit.amqp.settings.RABBITMQ_CALIBRE_EXCHANGE = 'convert'
edeposit.amqp.settings.RABBITMQ_CALIBRE_INPUT_KEY = 'request'
edeposit.amqp.settings.RABBITMQ_CALIBRE_INPUT_QUEUE = 'daemon'
edeposit.amqp.settings.RABBITMQ_CALIBRE_OUTPUT_KEY = 'result'
edeposit.amqp.settings.RABBITMQ_CALIBRE_OUTPUT_QUEUE = 'plone'
edeposit.amqp.settings.RABBITMQ_CALIBRE_VIRTUALHOST = 'calibre'
edeposit.amqp.settings.RABBITMQ_DOWNER_INPUT_KEY = 'request'
edeposit.amqp.settings.RABBITMQ_DOWNER_INPUT_QUEUE = 'daemon'

Input Queue for downloader

edeposit.amqp.settings.RABBITMQ_DOWNER_OUTPUT_KEY = 'result'
edeposit.amqp.settings.RABBITMQ_DOWNER_OUTPUT_QUEUE = 'plone'

Queue to put responses

edeposit.amqp.settings.RABBITMQ_DOWNER_VIRTUALHOST = 'downloader'

Virtualhost for downloader

edeposit.amqp.settings.RABBITMQ_FTP_INPUT_KEY = 'request'
edeposit.amqp.settings.RABBITMQ_FTP_INPUT_QUEUE = 'daemon'

Input Queue for FTP AMQP daemon

edeposit.amqp.settings.RABBITMQ_FTP_OUTPUT_KEY = 'result'
edeposit.amqp.settings.RABBITMQ_FTP_OUTPUT_QUEUE = 'plone'

Queue to put responses from daemon

edeposit.amqp.settings.RABBITMQ_FTP_VIRTUALHOST = 'ftp'

Virtualhost for FTP module

edeposit.amqp.settings.RABBITMQ_HARVESTER_INPUT_KEY = 'request'
edeposit.amqp.settings.RABBITMQ_HARVESTER_INPUT_QUEUE = 'daemon'

Input Queue for harvester

edeposit.amqp.settings.RABBITMQ_HARVESTER_OUTPUT_KEY = 'result'
edeposit.amqp.settings.RABBITMQ_HARVESTER_OUTPUT_QUEUE = 'plone'

Queue to put responses

edeposit.amqp.settings.RABBITMQ_HARVESTER_VIRTUALHOST = 'harvester'

Virtualhost for harvester

edeposit.amqp.settings.RABBITMQ_HOST = '127.0.0.1'
edeposit.amqp.settings.RABBITMQ_LTP_INPUT_KEY = 'request'
edeposit.amqp.settings.RABBITMQ_LTP_INPUT_QUEUE = 'daemon'

Input Queue for ltp

edeposit.amqp.settings.RABBITMQ_LTP_OUTPUT_KEY = 'result'
edeposit.amqp.settings.RABBITMQ_LTP_OUTPUT_QUEUE = 'plone'

Queue to put responses

edeposit.amqp.settings.RABBITMQ_LTP_VIRTUALHOST = 'ltp'

Virtualhost for ltp

edeposit.amqp.settings.RABBITMQ_MX2MODS_INPUT_KEY = 'request'
edeposit.amqp.settings.RABBITMQ_MX2MODS_INPUT_QUEUE = 'daemon'

Input Queue for marcxml2mods

edeposit.amqp.settings.RABBITMQ_MX2MODS_OUTPUT_KEY = 'result'
edeposit.amqp.settings.RABBITMQ_MX2MODS_OUTPUT_QUEUE = 'plone'

Queue to put responses

edeposit.amqp.settings.RABBITMQ_MX2MODS_VIRTUALHOST = 'marcxml2mods'

Virtualhost for marcxml2mods

edeposit.amqp.settings.RABBITMQ_PDFGEN_INPUT_KEY = 'request'
edeposit.amqp.settings.RABBITMQ_PDFGEN_INPUT_QUEUE = 'daemon'

Input Queue for pdfgen

edeposit.amqp.settings.RABBITMQ_PDFGEN_OUTPUT_KEY = 'result'
edeposit.amqp.settings.RABBITMQ_PDFGEN_OUTPUT_QUEUE = 'plone'

Queue to put responses

edeposit.amqp.settings.RABBITMQ_PDFGEN_VIRTUALHOST = 'pdfgen'

Virtualhost for pdfgen

edeposit.amqp.settings.RABBITMQ_PORT = '5672'
edeposit.amqp.settings.RABBITMQ_STORAGE_INPUT_KEY = 'request'
edeposit.amqp.settings.RABBITMQ_STORAGE_INPUT_QUEUE = 'daemon'

Input Queue for storage

edeposit.amqp.settings.RABBITMQ_STORAGE_OUTPUT_KEY = 'result'
edeposit.amqp.settings.RABBITMQ_STORAGE_OUTPUT_QUEUE = 'plone'

Queue to put responses

edeposit.amqp.settings.RABBITMQ_STORAGE_VIRTUALHOST = 'storage'

Virtualhost for storage

edeposit.amqp.settings.RABBITMQ_USER_NAME = 'guest'
edeposit.amqp.settings.RABBITMQ_USER_PASSWORD = 'guest'
edeposit.amqp.settings.SETTINGS_PATH = '/edeposit/amqp.json'

Path which is appended to default search paths ($HOME and /etc).

Note

It has to start with /. Variable is appended to the default search paths, so this doesn’t mean, that the path is absolute!

edeposit.amqp.settings.get_all_constants()[source]

Get list of all uppercase, non-private globals (doesn’t start with _).

Returns:Uppercase names defined in globals() (variables from this module).
Return type:list
edeposit.amqp.settings.get_amqp_settings()[source]

Return all settings in dict in following format:

{
    "submodule_name": {
        "vhost": VIRTUALHOST,
        "exchange": EXCHANGE,
        "queues": {
            QUEUE_NAME: ROUTING_KEY,
            QUEUE_NAME: ROUTING_KEY
        },
        "in_key": INPUT_KEY,
        "out_key": OUTPUT_KEY
    },
    ...
}
edeposit.amqp.settings.substitute_globals(config_dict)[source]

Set global variables to values defined in config_dict.

Parameters:config_dict (dict) – dictionary with data, which are used to set globals.

Note

config_dict have to be dictionary, or it is ignored. Also all variables, that are not already in globals, or are not types defined in _ALLOWED (str, int, float) or starts with _ are silently ignored.