Пример #1
0
def get_layer_options(layer):
    """Return the available options for a transport layer.

    Options are specific to the transport layers. They are facultative and
    are useful to provide configuration parameters to the selected layer.
    """
    try:
        module = tools.import_recursively('duo.transport.' + layer)
        return module.OPTIONS
    except Exception as e:
        logger.error('getLayerOptions %s: %s' % (layer, e))
Пример #2
0
def create_ui(ui, options):
    """Instantiate the UI with the given name."""
    module = tools.import_recursively('duo.ui.' + ui)
    return module.UserInterface(options)
Пример #3
0
def create_endpoint(layer, layer_options, id):
    try:
        module = tools.import_recursively('duo.transport.' + layer)
        return module.CLASS(id, layer_options)
    except Exception as e:
        logger.error('createEndpoint %s: %s' % ((layer, layer_options), e))