예제 #1
0
    def list(self, request, *args, **kwargs):
        try:
            data = query_ledger(fcn='queryAlgos', args=[])
        except LedgerError as e:
            return Response({'message': str(e.msg)}, status=e.status)

        algos_list = [data]

        # parse filters
        query_params = request.query_params.get('search', None)

        if query_params is not None:
            try:
                algos_list = filter_list(
                    object_type='algo',
                    data=data,
                    query_params=query_params)
            except LedgerError as e:
                return Response({'message': str(e.msg)}, status=e.status)
            except Exception as e:
                logging.exception(e)
                return Response(
                    {'message': f'Malformed search filters {query_params}'},
                    status=status.HTTP_400_BAD_REQUEST)

        for group in algos_list:
            for algo in group:
                replace_storage_addresses(request, algo)

        return Response(algos_list, status=status.HTTP_200_OK)
예제 #2
0
    def list(self, request, *args, **kwargs):

        try:
            data = query_ledger(get_channel_name(request),
                                fcn='queryDataManagers',
                                args=[])
        except LedgerError as e:
            return Response({'message': str(e.msg)}, status=e.status)

        # parse filters
        query_params = request.query_params.get('search')

        if query_params is not None:
            try:
                data = filter_list(channel_name=get_channel_name(request),
                                   object_type='dataset',
                                   data=data,
                                   query_params=query_params)
            except LedgerError as e:
                return Response({'message': str(e.msg)}, status=e.status)

        for data_manager in data:
            replace_storage_addresses(request, data_manager)

        return Response(data, status=status.HTTP_200_OK)
예제 #3
0
    def list(self, request, *args, **kwargs):
        try:
            data = query_ledger(get_channel_name(request), fcn='queryModels', args=[])
        except LedgerError as e:
            return Response({'message': str(e.msg)}, status=e.status)
        query_params = request.query_params.get('search')
        if query_params is not None:
            try:
                data = filter_list(
                    channel_name=get_channel_name(request),
                    object_type='model',
                    data=data,
                    query_params=query_params)
            except LedgerError as e:
                return Response({'message': str(e.msg)}, status=e.status)

        return Response(data, status=status.HTTP_200_OK)
예제 #4
0
    def list(self, request, *args, **kwargs):
        try:
            data = query_ledger(fcn='queryAggregatetuples', args=[])
        except LedgerError as e:
            return Response({'message': str(e.msg)}, status=e.status)

        aggregatetuple_list = [data]

        query_params = request.query_params.get('search', None)
        if query_params is not None:
            try:
                aggregatetuple_list = filter_list(object_type='aggregatetuple',
                                                  data=data,
                                                  query_params=query_params)
            except LedgerError as e:
                return Response({'message': str(e.msg)}, status=e.status)
            except Exception as e:
                logging.exception(e)
                return Response(
                    {'message': f'Malformed search filters {query_params}'},
                    status=status.HTTP_400_BAD_REQUEST)

        return Response(aggregatetuple_list, status=status.HTTP_200_OK)