示例#1
0
 def set_output(self, request, response):
     """Set the output from the WPS request."""
     # We use get_workflow_disk_path to get the path that other services
     # can read from. /data_service is local to each service, but a read-
     # only version exists in the workflow directory
     workflow_disk_result_path = self.get_workflow_disk_path(self.sen2_dir)
     response.outputs['output_dir'].data = workflow_disk_result_path
     response.outputs['output_dir'].uom = UOM('unity')
示例#2
0
    def _handler(request, response):
        response.update_status('PyWPS Process started.', 0)
        LOGGER.info("say hello")

        response.outputs[
            'output'].data = 'Hello ' + request.inputs['name'][0].data
        response.outputs['output'].uom = UOM('unity')
        response.update_status('PyWPS Process completed.', 100)
        return response
示例#3
0
def say_hello(request, response):
    '''
    This is a docstring

    Thios
    :param request:
    :param response:
    '''
    response.outputs['response'].data = 'Hello from France  ' + \
        request.inputs['name'][0].data
    response.outputs['response'].uom = UOM('unity')
    return response
示例#4
0
 def _handler(self, request, response):
     command = 'fimex '
     fimex_arguments = {
         'inputfile': '--input.file',
         'inputtype': '--input.type',
         'reducetimeStart': '--extract.reduceTime.start',
         'reducetimeEnd': '--extract.reduceTime.end',
         'reduceboxNorth': '--extract.reduceToBoundingBox.north',
         'reduceboxSouth': '--extract.reduceToBoundingBox.south',
         'reduceboxEast': '--extract.reduceToBoundingBox.east',
         'reduceboxWest': '--extract.reduceToBoundingBox.west',
         'interpolateMethod': '--interpolate.method',
         'interpolateProjString': '-interpolate.projString',
         'interpolateXAxisUnits': '--interpolate.xAxisUnit',
         'interpolateYAxisUnits': '--interpolate.yAxisUnit'
     }
     print(request.inputs)
     base = [
         'interpolateXAxisMin', 'interpolateXAxisMax',
         'interpolateYAxisMin', 'interpolateYAxisMax', 'interpolateHorSteps'
     ]
     if all(x in list(request.inputs.keys()) for x in base):
         xmin = float(request.inputs['interpolateXAxisMin'][0].data)
         xmax = float(request.inputs['interpolateXAxisMax'][0].data)
         ymin = float(request.inputs['interpolateYAxisMin'][0].data)
         ymax = float(request.inputs['interpolateYAxisMax'][0].data)
         if xmax < xmin:
             xmin, xmax = xmax, xmin
         dx = (xmax - xmin) / float(
             request.inputs['interpolateHorSteps'][0].data)
         dy = (ymax - ymin) / float(
             request.inputs['interpolateHorSteps'][0].data)
         command += ' --interpolate.xAxisValues=%s,%s,...,%s' % (
             xmin, xmin + dx, xmax)
         command += ' --interpolate.yAxisValues=%s,%s,...,%s' % (
             ymin, ymin + dy, ymax)
     command += ' ' + '='.join([
         fimex_arguments[i] + '=' + request.inputs[i][0].data
         for i in request.inputs if i in list(fimex_arguments.keys())
     ])
     #command += ' --extract.selectVariables='+' --extract.selectVariables='.join(request.inputs['selectVariables'][0].data)
     #command += ' --interpolate.xAxisValues=%s,%s,...,%s' % (xmin, xmin+dx, xmax)
     # TODO: exclude from initial string the values that require special treatment
     #response.outputs['commout'].data = 'Fimex command: ' + \
     #                                 ' '.join([i.metadata + '=' + i.identifier for i in request.inputs])
     response.outputs['commout'].data = command
     response.outputs['commout'].uom = UOM('unity')
     return response
示例#5
0
    def _handler(request, response):
        LOGGER.info("repackage")
        infiles = []
        jfiles = json.loads(request.inputs['filesIn'][0].data)
        infiles.extend(jfiles["files"])

        ds = xarray.open_mfdataset(filename,
                                   decode_cf=False,
                                   mask_and_scale=False,
                                   decode_times=False,
                                   use_cftime=False,
                                   parallel=True,
                                   concat_dim="time",
                                   data_vars='minimal',
                                   coords='minimal',
                                   compat='override')
        ds.to_netcdf(self, path="./out.nc", mode='w', format='NETCDF4')

        response.outputs['output'].data = 'Input files: ' + str(infiles)
        response.outputs['output'].uom = UOM('unity')
        return response
示例#6
0
 def _handler(self, request, response):
     response.outputs[
         'response'].data = 'Hello ' + request.inputs['name'][0].data
     response.outputs['response'].uom = UOM('unity')
     return response
示例#7
0
 def _handler(self, request, response):
     LOGGER.info("say hello")
     response.outputs['output'].data = 'Hello ' + request.inputs['name'][0].data
     response.outputs['output'].uom = UOM('unity')
     return response
 def set_output(self, request, response):
     """ Set the output path for the png file."""
     workflow_disk_result_path = self.get_workflow_disk_path(self.outdir)
     response.outputs['output_dir'].data = workflow_disk_result_path
     response.outputs['output_dir'].uom = UOM('unity')
示例#9
0
 def set_output(self, request, response):
     """Set the output in the WPS response."""
     response.outputs['output'].data = self.output_dir
     response.outputs['output'].uom = UOM('unity')
 def set_output(self, request, response):
     """Set the output from the WPS request."""
     workflow_disk_result_path = self.get_workflow_disk_path(self.sen1_dir)
     response.outputs['output_dir'].data = workflow_disk_result_path
     response.outputs['output_dir'].uom = UOM('unity')
示例#11
0
 def _handler(request, response):
     LOGGER.info("say hello")
     response.outputs[
         "output"].data = "Hello " + request.inputs["name"][0].data
     response.outputs["output"].uom = UOM("unity")
     return response