예제 #1
0
 def execute( self, run_args ):
     engine_id = run_args.get( 'engine', None )
     if engine_id is None:
         engine_id = 'serial'
         wpsLog.warning( "Compute Engine not confgured, running serially.")
     engine = engineRegistry.getInstance( engine_id )
     result =  engine.execute( run_args )
     return result
예제 #2
0
 def setUp(self):
     self.local_data = False
     self.test_point = [ -137.0, 35.0, 85000 ]
     self.test_time = '2010-01-16T12:00:00'
     self.operations = [ "CDTime.departures(v0,slice:t)", "CDTime.climatology(v0,slice:t,bounds:annualcycle)", "CDTime.value(v0)" ]
     self.indexed_operations = [ "CDTime.departures($0,slice:t)", "CDTime.climatology($0,slice:t,bounds:annualcycle)", "CDTime.value($0)" ]
     self.def_task_args =  { "domain": self.getRegion(), "variable": self.getData(), 'embedded': True, 'async': False }
     self.engine = engineRegistry.getInstance( CDAS_COMPUTE_ENGINE + "Engine" )
     self.cache_region =  Region( { 'id':"r0", "lev":self.test_point[2] } )
     self.subregion =  Region( { "id":"sr0", "lev":self.test_point[2], "time":self.test_time  } )
예제 #3
0
 def __init__(self):
     from engines import engineRegistry
     self.test_point = [ -137.0, 35.0, 85000 ]
     self.test_time = '2010-01-16T12:00:00'
     self.operations = [ "CDTime.departures(v0,slice:t)", "CDTime.climatology(v0,slice:t,bounds:annualcycle)", "CDTime.value(v0)" ]
     self.indexed_operations = [ "CDTime.departures($0,slice:t)", "CDTime.climatology($0,slice:t,bounds:annualcycle)", "CDTime.value($0)" ]
     self.def_task_args =  { "domain": self.getRegion(), "variable": self.getData(), 'embedded': True, 'async': False }
     self.def_hf_task_args =  { "domain": self.getRegion(), "variable": self.getHFData(), 'embedded': True, 'async': False }
     self.engine = engineRegistry.getInstance( configuration.CDAS_COMPUTE_ENGINE + "Engine" )
     self.cache_region =  Region( { "lev": {"config":{},"bounds":[ self.test_point[2] ], 'id':"r0" } } )
예제 #4
0
 def execute( self, tesk_request ):
     try:
         if self.engine is None:
             engine_id = tesk_request[ 'engine' ]
             if engine_id is None:
                 engine_id = 'serial'
                 wpsLog.warning( "Compute Engine not confgured, running serially.")
             self.engine = engineRegistry.getInstance( engine_id )
         wpsLog.debug( "Executing engine '%s', class: %s" % ( self.engine.id, self.engine.__class__.__name__ ) )
         result =  self.engine.execute( tesk_request )
         return result
     except Exception, err:
         wpsLog.debug( "Exception in staging handler: '%s'\n%s" % ( str(err), traceback.format_exc() ) )
         return {}
예제 #5
0
 def setUp(self):
     self.test_point = [ -137.0, 35.0, 85000 ]
     self.test_time = '2010-01-16T12:00:00'
     self.def_task_args =  { 'region': self.getRegion(), 'data': self.getData() }
     self.engine = engineRegistry.getInstance( CDAS_COMPUTE_ENGINE + "Engine"  )
     self.cache_region = { "level": 85000 }