Ejemplo n.º 1
0
def module_handler(request):
    '''
    Handle module request from UI. Response from this request builds
    UI Explorer tree
    '''
    logging.debug("module_handler: enter")
    lst = []
    if request.user.is_authenticated():
        modules = []
        path = request.GET.get('node', '')

        username = request.user.username
        if path == 'root':
             # Request for root models
            modules = ModuleAdmin.get_modulelist(username)
            modules.sort()
            path = ''
        else:
            modules = [path.split('/')[0]]

        for module in modules:
            filename = ModuleAdmin.cxml_path(username, module)
            if filename is not None:
                logging.debug("module_handler: loading " + filename)
                module = Cxml(filename)
                nodes = module.get_lazy_node(path)
                lst.extend([ET.tostring(node) for node in nodes])
            else:
                logging.error("module_handler: %s not found !!" + module)

    logging.debug("module_handler: exit")
    return render_to_response('loader.xml', {'nodes': lst}, RequestContext(request))
Ejemplo n.º 2
0
def module_handler(request):
    """
    Handle module request from UI. Response from this request builds
    UI Explorer tree
    """
    logger.debug("module_handler: enter")
    lst = []
    if request.user.is_authenticated():
        path = request.GET.get('node', '')
        deep = request.GET.get('deep', '')
        username = request.user.username
        if path == 'root':
            # Request for root models
            modules = ModuleAdmin.get_modulelist(username)
            modules.sort()
            for m in modules:
                lst.append(node_t.format(m.split('@')[0]))
        else:
            modules = [path.split('/')[0]]
            for module in modules:
                filename = ModuleAdmin.cxml_path(username, module)
                if filename is not None:
                    logger.debug("module_handler: loading " + filename)
                    module = cxml.get_cxml(filename)
                    nodes = module.get_lazy_subtree(path, deep)
                    lst.extend([ET.tostring(node) for node in annotate(nodes)])
                else:
                    logger.error("module_handler: %s not found !!" + module)

    logger.debug("module_handler: exit")
    return render_to_response('loader.xml', {'nodes': lst}, RequestContext(request))
Ejemplo n.º 3
0
def module_handler(request):
    """
    Handle module request from UI. Response from this request builds
    UI Explorer tree
    """
    logging.debug("module_handler: enter")
    lst = []
    if request.user.is_authenticated():
        path = request.GET.get('node', '')

        username = request.user.username
        if path == 'root':
            # Request for root models
            modules = ModuleAdmin.get_modulelist(username)
            modules.sort()
            path = ''
        else:
            modules = [path.split('/')[0]]

        for module in modules:
            filename = ModuleAdmin.cxml_path(username, module)
            if filename is not None:
                logging.debug("module_handler: loading " + filename)
                module = Cxml(filename)
                nodes = module.get_lazy_node(path)
                lst.extend([ET.tostring(node) for node in nodes])
            else:
                logging.error("module_handler: %s not found !!" + module)

    logging.debug("module_handler: exit")
    return render_to_response('loader.xml', {'nodes': lst}, RequestContext(request))
Ejemplo n.º 4
0
def search(username, query):
    """
    Search query text in user modules
    Args:
        username: Request username
        query: Search String

    Returns: An XML object with result XPATHs
    """
    logging.debug('Searching query %s in user (%s) modules' % (query, username))
    response = ET.Element('result')

    modulenames = ModuleAdmin.get_modulelist(username)
    for module in modulenames:
        result = search_module(username, module, query)
        for xpath in result:
            path = ET.Element('path')
            path.set('module', module)
            path.text = xpath
            response.append(path)

    return True, response
Ejemplo n.º 5
0
def search(username, query):
    """
    Search query text in user modules
    Args:
        username: Request username
        query: Search String

    Returns: An XML object with result XPATHs
    """
    logging.debug('Searching query %s in user (%s) modules' %
                  (query, username))
    response = ET.Element('result')

    modulenames = ModuleAdmin.get_modulelist(username)
    for module in modulenames:
        result = search_module(username, module, query)
        for xpath in result:
            path = ET.Element('path')
            path.set('module', module)
            path.text = xpath
            response.append(path)

    return True, response