Exemplo n.º 1
0
    def get(self, request, searchName):
        """
        Retrieve info of sesrch
        """

        flame_status = smanage.action_searches_result(searchName,
                                                      output="JSON")
        if flame_status[0]:
            return Response(json.loads(flame_status[1].getJSON()),
                            status=status.HTTP_200_OK)
        else:
            return JsonResponse(flame_status[1],
                                status=status.HTTP_404_NOT_FOUND)
Exemplo n.º 2
0
    def get(self, request, searchName):
        """
        Retrieve info of sesrch
        """

        success, result = smanage.action_searches_result(searchName,
                                                         output='JSON')
        if success:
            results_json = json.loads(result.getJSON())
            results_json.pop('var_nam', None)
            return Response(results_json, status=status.HTTP_200_OK)
        else:
            if 'code' in result and result['code'] == 0:
                return JsonResponse({'waiting': time.ctime(time.time())},
                                    status=status.HTTP_200_OK)

        return JsonResponse(result, status=status.HTTP_404_NOT_FOUND)
Exemplo n.º 3
0
    def get(self, request, searchName):
        """
        Retrieve info of sesrch
        """

        flame_status = smanage.action_searches_result(searchName, output="bin")
        if flame_status[0]:
            return Response(json.loads(flame_status[1].getJSON()),
                            status=status.HTTP_200_OK)

            # result = json.loads(flame_status[1])
            # result['endpoint'] = result['meta']['endpoint']
            # del result['meta']
            # del result['manifest']
            # return Response(result, status=status.HTTP_200_OK)
        else:
            return JsonResponse(flame_status[1],
                                status=status.HTTP_404_NOT_FOUND)
Exemplo n.º 4
0
    def get(self, request, searchName):
        """
        Retrieve info of search and reformat for Toxhub
        """

        success, result = smanage.action_searches_result(searchName,
                                                         output='JSON')
        if success:
            results_json = json.loads(result.getJSON())
            results_json.pop('var_nam', None)
            results_json.pop('meta', None)
            results_json.pop('manifest', None)

            # we will process ONLY the first query molecule
            search_results = results_json['search_results'][0]

            n_results = len(search_results['distances'])
            if not 'obj_id' in search_results:
                search_results['obj_id'] = search_results['obj_nam']

            search_results_TH = []
            for i in range(n_results):
                idict = {
                    'distances': search_results['distances'][i],
                    'obj_nam': search_results['obj_nam'][i],
                    'obj_id': search_results['obj_id'][i],
                    'SMILES': search_results['SMILES'][i]
                }
                search_results_TH.append(idict)

            # only the results for the first molecule are returned
            results_json['search_results'] = search_results_TH
            results_json['obj_nam'] = [results_json['obj_nam'][0]]
            results_json['SMILES'] = [results_json['SMILES'][0]]

            return Response(results_json, status=status.HTTP_200_OK)
        else:
            if 'code' in result and result['code'] == 0:
                return JsonResponse({'waiting': time.ctime(time.time())},
                                    status=status.HTTP_200_OK)

        return JsonResponse(result, status=status.HTTP_404_NOT_FOUND)
Exemplo n.º 5
0
def manage_cmd(args):
    '''
    Calls diverse model or space maintenance commands
    '''

    version = utils.intver(args.version)

    if args.space is not None or 'searches' in args.action :
    
        import flame.smanage as smanage
    
        if args.action == 'new':
            success, results = smanage.action_new(args.space)
        elif args.action == 'kill':
            success, results = smanage.action_kill(args.space)
        elif args.action == 'remove':
            success, results = smanage.action_remove(args.space, version)
        elif args.action == 'publish':
            success, results = smanage.action_publish(args.space)
        elif args.action == 'list':
            success, results = smanage.action_list(args.space)
        elif args.action == 'parameters':
            success, results = smanage.action_parameters(args.space, version)
        elif args.action == 'info':
            success, results = smanage.action_info(args.space, version)
        elif args.action == 'dir':
            success, results = smanage.action_dir()
        elif args.action == 'searches_result':
            success, results = smanage.action_searches_result(args.label)
        else: 
            success = False
            results = "Specified manage action is not defined"
    else: 

        import flame.manage as manage

        if args.action == 'new':
            success, results = manage.action_new(args.endpoint)
        elif args.action == 'kill':
            success, results = manage.action_kill(args.endpoint)
        elif args.action == 'remove':
            success, results = manage.action_remove(args.endpoint, version)
        elif args.action == 'publish':
            success, results = manage.action_publish(args.endpoint)
        elif args.action == 'list':
            success, results = manage.action_list(args.endpoint)
        elif args.action == 'export':
            success, results = manage.action_export(args.endpoint)
        elif args.action == 'info':
            success, results = manage.action_info(args.endpoint, version)
        elif args.action == 'refresh':
            if args.version == None:
                version = None
            success, results = manage.action_refresh(args.endpoint, version)
        elif args.action == 'series':
            success, results = manage.action_series(args.endpoint, version)         
        elif args.action == 'results':
            success, results = manage.action_results(args.endpoint, version)
        elif args.action == 'parameters':
            success, results = manage.action_parameters(args.endpoint, version)
        elif args.action == 'documentation':
            success, results = manage.action_documentation(args.endpoint,
            version, args.documentation_file)
        elif args.action == 'model_template':
            success, results = manage.action_model_template(args.endpoint, 
            version,  args.documentation_file)
        elif args.action == 'prediction_template':
            success, results = manage.action_prediction_template(args.endpoint, version)
        elif args.action == 'import':
            success, results = manage.action_import(args.infile)
        elif args.action == 'dir':
            success, results = manage.action_dir()
        elif args.action == 'report':
            success, results = manage.action_report()
        elif args.action == 'list':
            success, results = manage.action_list(args.endpoint)
        elif args.action == 'predictions':
            success, results = manage.action_predictions_list()
        elif args.action == 'predictions_result':
            success, results = manage.action_predictions_result(args.label)
        elif args.action == 'predictions_remove':
            success, results = manage.action_predictions_remove(args.label)
        elif args.action == 'label':
            success, results = manage.action_label(args.endpoint, version, args.label)
        else: 
            success = False
            results = "Specified manage action is not defined"

    return success, results