def postJobs(): result = gOAManager.authorize() if not result[ 'OK' ]: bottle.abort( 401, result[ 'Message' ] ) request = bottle.request if len( request.files ): result = uploadSandbox( request.files ) if not result[ 'OK' ]: bottle.abort( 500, result[ 'Message' ] ) isb = result[ 'Value' ] else: isb = False jobs = [] wms = getWMSClient() for k in request.forms: origData = bottle.json_lds( request.forms[ k ] ) jobData = origData if isb: if 'InputSandbox' not in jobData: jobData[ 'InputSandbox' ] = [] jobData[ 'InputSandbox' ].append( isb ) cfg = CFG.CFG().loadFromDict( jobData ) jdl = dumpCFGAsJDL( cfg ) result = wms.submitJob( jdl ) if not result[ 'OK' ]: bottle.abort( 500, result[ 'Message' ] ) jobs.append( result[ 'Value' ] ) return { 'sandbox' : isb, 'jobs' : jobs }
def __jsoncall__(self, sess=lambda: None): try: b = request.body.read(request.MEMFILE_MAX) json = bottle.json_lds(b) except ValueError, e: return JSONParseError(e)