コード例 #1
0
def get_application(account_guid, nerd_guid, application_guid, **kwargs):
    try:
        current_user = kwargs['current_user']
        account = AccountsService.get_account_by_guid(
            account_guid=account_guid)
        if not account:
            return HttpResponse.forbidden('Account doesn\'t exists')
        user_permission = AccountUserService.get_permission(user=current_user,
                                                            account=account)
        if not user_permission:
            return HttpResponse.forbidden(
                'User doesn\'t have permission to perform this operation')
        nerd = NerdService.get_nerd_guid(account=account,
                                         user=current_user,
                                         nerd_guid=nerd_guid)
        if len(nerd) == 0:
            return HttpResponse.forbidden(
                'The user has no permission on this nerd')
        nerd_response = ApplicationService.get_application_by_guid(
            nerd_url=nerd[0].nerd_url, application_guid=application_guid)
        return HttpResponse.custom_http_response(loads(nerd_response.text),
                                                 nerd_response.status_code)
    except Exception as e:
        return HttpResponse.bad_request(e.message)
コード例 #2
0
def create_application(account_guid, nerd_guid, **kwargs):
    try:
        try:
            name = request.json['name']
            algorithm = request.json['algorithm']
            app_metadata = request.json['app_metadata']
        except Exception:
            return HttpResponse.bad_request(
                'One or more parameters are missing')
        current_user = kwargs['current_user']
        account = AccountsService.get_account_by_guid(
            account_guid=account_guid)
        if not account:
            return HttpResponse.forbidden('Account doesn\'t exists')
        user_permission = AccountUserService.get_permission(user=current_user,
                                                            account=account)
        if not user_permission:
            return HttpResponse.forbidden(
                'User doesn\'t have permission to perform this operation')
        nerd = NerdService.get_nerd_guid(account=account,
                                         user=current_user,
                                         nerd_guid=nerd_guid)
        if len(nerd) == 0:
            return HttpResponse.forbidden(
                'The user has no permission on this nerd')
        nerd_response = ApplicationService.create_application(
            account_id=account.account_id,
            application_name=name,
            application_algorithm=algorithm,
            created_user_id=current_user.user_id,
            parameters=app_metadata,
            nerd_url=nerd[0].nerd_url)
        return HttpResponse.custom_http_response(loads(nerd_response.text),
                                                 nerd_response.status_code)
    except Exception as e:
        return HttpResponse.bad_request(e.message)