def bsveSearchAnalysis(self, params): currentUser = self.getCurrentUser() datasetName = params['datasetName'] bsveSearchParams = params['bsveSearchParams'] analysis = findAnalysisByName(currentUser, 'bsve search') # TODO in case can't find analysis? try: bsveSearchParams = json.loads(bsveSearchParams) except ValueError: raise RestException('bsveSearchParams is invalid JSON.') minerva_metadata = { 'dataset_type': 'geojson', 'source_type': 'bsve_search', 'bsve_search_params': bsveSearchParams, 'original_type': 'json' } datasetResource = Dataset() dataset = datasetResource.constructDataset(datasetName, minerva_metadata, 'created by bsve search') params = { 'bsveSearchParams': bsveSearchParams } # TODO change token to job token user, token = self.getCurrentUser(returnToken=True) kwargs = { 'params': params, 'user': currentUser, 'dataset': dataset, 'analysis': analysis, 'token': token } job = self.model('job', 'jobs').createLocalJob( title='bsve search: %s' % datasetName, user=currentUser, type='bsve.search', public=False, kwargs=kwargs, module='girder.plugins.minerva.jobs.bsve_search_worker', async=True) addJobOutput(job, dataset) self.model('job', 'jobs').scheduleJob(job) return job
def bsveMMWRAnalysis(self, params): currentUser = self.getCurrentUser() datasetName = params['datasetName'] count = int(params.get('count', 1000)) analysis = findAnalysisByName(currentUser, 'MMWR data import') # TODO in case can't find analysis? minerva_metadata = { 'dataset_type': 'geojson', 'source_type': 'mmwr_data_import', 'original_type': 'json' } datasetResource = Dataset() dataset = datasetResource.constructDataset( datasetName, minerva_metadata, 'created by MMWR data import' ) params = { 'count': count } # TODO change token to job token user, token = self.getCurrentUser(returnToken=True) kwargs = { 'params': params, 'user': currentUser, 'dataset': dataset, 'analysis': analysis, 'token': token } job = self.model('job', 'jobs').createLocalJob( title='MMWR import: %s' % datasetName, user=currentUser, type='bsve.mmwr', public=False, kwargs=kwargs, module='girder.plugins.minerva.jobs.soda_import_worker', async=True) addJobOutput(job, dataset) self.model('job', 'jobs').scheduleJob(job) return job
def gaiaAnalysisTask(self, params): currentUser = self.getCurrentUser() body_json = self.getBodyJson() gaia_json = json.dumps(body_json['process']) datasetName = body_json['datasetName'] minerva_metadata = { 'dataset_type': 'geojson', 'source_type': 'gaia_process', 'original_type': 'json', 'process_json': gaia_json, 'source': { 'layer_source': 'GeoJSON' } } datasetResource = Dataset() dataset = datasetResource.constructDataset(datasetName, minerva_metadata, 'created by Gaia') # TODO change token to job token user, token = self.getCurrentUser(returnToken=True) kwargs = { 'params': params, 'user': currentUser, 'dataset': dataset, 'analysis': gaia_json, 'token': token } job = self.model('job', 'jobs').createLocalJob( title='Gaia process: %s' % datasetName, user=currentUser, type='gaia.process', public=False, kwargs=kwargs, module='girder.plugins.gaia_minerva.jobs.gaia_worker', async=True) addJobOutput(job, dataset) self.model('job', 'jobs').scheduleJob(job) return job
def gaiaAnalysisTask(self, analysis, params): currentUser = self.getCurrentUser() gaia_json = json.dumps(analysis['process']) datasetName = analysis['datasetName'] minerva_metadata = { 'dataset_type': 'geojson', 'source_type': 'gaia_process', 'original_type': 'json', 'process_json': gaia_json, 'source': { 'layer_source': 'GeoJSON' } } datasetResource = Dataset() dataset = datasetResource.constructDataset( datasetName, minerva_metadata, 'created by Gaia' ) # TODO change token to job token user, token = self.getCurrentUser(returnToken=True) kwargs = { 'params': params, 'user': currentUser, 'dataset': dataset, 'analysis': gaia_json, 'token': token } result = gaia_task.delay(kwargs, girder_job_title=datasetName) job = result.job addJobOutput(job, dataset) return job
def gaiaAnalysisTask(self, analysis, params): currentUser = self.getCurrentUser() gaia_json = json.dumps(analysis['process']) datasetName = analysis['datasetName'] minerva_metadata = { 'dataset_type': 'geojson', 'source_type': 'gaia_process', 'original_type': 'json', 'process_json': gaia_json, 'source': { 'layer_source': 'GeoJSON' } } datasetResource = Dataset() dataset = datasetResource.constructDataset(datasetName, minerva_metadata, 'created by Gaia') # TODO change token to job token user, token = self.getCurrentUser(returnToken=True) kwargs = { 'params': params, 'user': currentUser, 'dataset': dataset, 'analysis': gaia_json, 'token': token } result = gaia_task.delay(kwargs, girder_job_title=datasetName) job = result.job addJobOutput(job, dataset) return job