Пример #1
0
def handle_array_query():
    array_name, indexers = split_array_base(request.path.rstrip('/'))
    arr = get_array(array_name, indexers)
    base_url = request.url_root[:-1]
    #no query params
    # NOTE: len(request.values) was failing within werkzeug
    if len(list(request.values)) == 0:
        return html_array(arr, base_url, array_name, indexers)
    q_req = request.values['r']
    if q_req == 'data.json':
        dat = arr.ddesc.dynd_arr()
        return Response(nd.as_py(nd.format_json(dat).view_scalars(ndt.bytes)),
                        mimetype='application/json')
    elif q_req == 'datashape':
        content_type = 'text/plain; charset=utf-8'
        return str(arr.dshape)
    elif q_req == 'dyndtype':
        content_type = 'application/json; charset=utf-8'
        body = str(arr.dtype)
        return Response(body, mimetype='application/json')
    elif q_req == 'dynddebug':
        return arr.debug_repr()
    elif q_req == 'create_session':
        session = compute_session(base_url,
                                  add_indexers_to_url(array_name, indexers))
        app.sessions[session.session_name] = session
        content_type, body = session.creation_response()
        return Response(body, mimetype='application/json')
    else:
        abort(400, "Unknown Blaze server request %s" % q_req)
Пример #2
0
def handle_array_query():
    array_name, indexers = split_array_base(request.path.rstrip('/'))
    arr = get_array(array_name, indexers)
    base_url = request.url_root[:-1]
    #no query params
    # NOTE: len(request.values) was failing within werkzeug
    if len(list(request.values)) == 0:
        return html_array(arr, base_url, array_name, indexers)
    q_req = request.values['r']
    if q_req == 'data.json':
        dat = arr.ddesc.dynd_arr()
        return Response(nd.as_py(nd.format_json(dat).view_scalars(ndt.bytes)),
                        mimetype='application/json')
    elif q_req == 'datashape':
        content_type = 'text/plain; charset=utf-8'
        return str(arr.dshape)
    elif q_req == 'dyndtype':
        content_type = 'application/json; charset=utf-8'
        body = str(arr.dtype)
        return Response(body, mimetype='application/json')
    elif q_req == 'dynddebug':
        return arr.debug_repr()
    elif q_req == 'create_session':
        session = compute_session(base_url,
                                  add_indexers_to_url(array_name, indexers))
        app.sessions[session.session_name] = session
        content_type, body = session.creation_response()
        return Response(body, mimetype='application/json')
    else:
        abort(400, "Unknown Blaze server request %s" % q_req)
Пример #3
0
def html_array(arr, base_url, array_name, indexers):
    array_url = add_indexers_to_url(base_url + array_name, indexers)
    print(array_url)

    nav_html = indexers_navigation_html(base_url, array_name, indexers)
    datashape_html = render_datashape(array_url, arr.dshape)
    body = '<html><head><title>Blaze Array</title></head>\n' + \
        '<body>\n' + \
        'Blaze Array &gt; ' + nav_html + '\n<p />\n' + \
        '<a href="' + array_url + '?r=data.json">JSON</a>\n<p />\n' + \
        datashape_html + \
        '\n</body></html>'
    return body
Пример #4
0
def html_array(arr, base_url, array_name, indexers):
    array_url = add_indexers_to_url(base_url + array_name, indexers)
    print(array_url)

    nav_html = indexers_navigation_html(base_url, array_name, indexers)
    datashape_html = render_datashape(array_url, arr.dshape)
    body = '<html><head><title>Blaze Array</title></head>\n' + \
        '<body>\n' + \
        'Blaze Array &gt; ' + nav_html + '\n<p />\n' + \
        '<a href="' + array_url + '?r=data.json">JSON</a>\n<p />\n' + \
        datashape_html + \
        '\n</body></html>'
    return body