コード例 #1
0
ファイル: views.py プロジェクト: ricardogsilva/django-pywps
def index(request):
    """
    WPS endpoint.

    This view relays the HTTP request to PyWPS, captures its response and then
    sends it back to the web server. It is inspired by the wps.py file which is
    present in PyWPS source code repository.
    """

    to_return = None
    input_query = request.META["QUERY_STRING"]
    default_content_type = "application/xml"
    content_type = default_content_type
    if request.method == pywps.METHOD_GET and input_query == "":
        error = NoApplicableCode("No query string found")
        to_return = _write_response(str(error))
    elif request.method == pywps.METHOD_GET:
        input_query = request.META["QUERY_STRING"]
    else:
        input_query = request.body
    if to_return is None:
        wps_server = pywps.Pywps(
            method=request.method,
            configFiles=(settings.PYWPS_SETTINGS_FILE,)
        )
        try:
            if wps_server.parseRequest(input_query):
                pywps.debug(wps_server.inputs)
                wps_response = wps_server.performRequest()
                if wps_response:
                    to_return = _write_response(
                        wps_server.response,
                        soap_version=wps_server.parser.soapVersion,
                        is_soap=wps_server.parser.isSoap,
                        is_soap_execute=wps_server.parser.isSoapExecute
                    )
                    content_type = wps_server.request.contentType
        except WPSException as err:
            traceback.print_exc(file=pywps.logFile)
            to_return = _write_response(
                str(err),
                soap_version=wps_server.parser.soapVersion,
                is_soap=wps_server.parser.isSoap,
                is_soap_execute=wps_server.parser.isSoapExecute
            )
            content_type = default_content_type
        finally:
            if hasattr(wps_server.request, "umn"):
                print("Deleting the mapobj attribute of request.umn in "
                      "order to prevent memory leaks...")
                del wps_server.request.umn
    # release mapserver memory in order to avoid leaks when
    # running under wsgi
    mapscript.msCleanup(1)
    return HttpResponse(to_return, content_type=content_type)
コード例 #2
0
ファイル: ogr_query.py プロジェクト: outrun123/mapserver
    layer.close()
    layer.close()  # discard resultset.

    return 'success'


###############################################################################
# Cleanup.


def ogr_query_cleanup():
    pmstestlib.layer = None
    pmstestlib.map = None
    return 'success'


test_list = [
    ogr_query_1, ogr_query_2, ogr_query_3, ogr_query_4, ogr_query_5,
    ogr_query_6, ogr_query_7, ogr_query_cleanup
]

if __name__ == '__main__':

    pmstestlib.setup_run('ogr_query')

    pmstestlib.run_tests(test_list)

    pmstestlib.summarize()

    mapscript.msCleanup()
コード例 #3
0
ファイル: wkt.py プロジェクト: homme/msautotest
        if new_wkt != orig_wkt:
            pmstestlib.post_reason( 'WKT "%s" converted to "%s".' \
                                    % (orig_wkt, new_wkt) )
            return 'fail'
    
    return 'success'


###############################################################################
# Cleanup.

def wkt_test_cleanup():
    return 'success'

test_list = [
    wkt_test_1,
    wkt_test_2,
    wkt_test_3,
    wkt_test_cleanup ]

if __name__ == '__main__':

    pmstestlib.setup_run( 'wkt' )

    pmstestlib.run_tests( test_list )

    pmstestlib.summarize()

    mapscript.msCleanup()

コード例 #4
0
ファイル: ogr_query.py プロジェクト: luiszapata11/msautotest
###############################################################################
# Cleanup.


def ogr_query_cleanup():
    pmstestlib.layer = None
    pmstestlib.map = None
    return "success"


test_list = [
    ogr_query_1,
    ogr_query_2,
    ogr_query_3,
    ogr_query_4,
    ogr_query_5,
    ogr_query_6,
    ogr_query_7,
    ogr_query_cleanup,
]

if __name__ == "__main__":

    pmstestlib.setup_run("ogr_query")

    pmstestlib.run_tests(test_list)

    pmstestlib.summarize()

    mapscript.msCleanup(0)
コード例 #5
0
        pass

    try:
        si.pattern = [i for i in range(11)]
        pmstestlib.post_reason('fail 6')
        return 'fail'
    except mapscript.MapServerError, e:
        pass

    try:
        si.patternlength = 0
        pmstestlib.post_reason('fail 7')
        return 'fail'
    except mapscript.MapServerError, e:
        pass

    return 'success'


test_list = [bug_673, test_pattern, None]

if __name__ == '__main__':

    pmstestlib.setup_run('bug_check')

    pmstestlib.run_tests(test_list)

    pmstestlib.summarize()

    mapscript.msCleanup(0)