Revision 85ae5a4c
b/snf-astakos-app/astakos/api/projects.py | ||
---|---|---|
95 | 95 |
grants = all_grants.get(application.id, []) |
96 | 96 |
resources = {} |
97 | 97 |
for grant in grants: |
98 |
if not grant.resource.api_visible: |
|
99 |
continue |
|
98 | 100 |
resources[grant.resource.name] = { |
99 | 101 |
"member_capacity": grant.member_capacity, |
100 | 102 |
"project_capacity": grant.project_capacity, |
b/snf-astakos-app/astakos/api/quotas.py | ||
---|---|---|
39 | 39 |
from snf_django.lib import api |
40 | 40 |
from snf_django.lib.api.faults import BadRequest, ItemNotFound |
41 | 41 |
|
42 |
from astakos.im.register import get_resources
|
|
42 |
from astakos.im import register
|
|
43 | 43 |
from astakos.im.quotas import get_user_quotas, service_get_quotas |
44 | 44 |
|
45 | 45 |
import astakos.quotaholder_app.exception as qh_exception |
... | ... | |
52 | 52 |
@api.api_method(http_method='GET', token_required=True, user_required=False) |
53 | 53 |
@user_from_token |
54 | 54 |
def quotas(request): |
55 |
result = get_user_quotas(request.user) |
|
55 |
visible_resources = register.get_api_visible_resources() |
|
56 |
resource_names = [r.name for r in visible_resources] |
|
57 |
result = get_user_quotas(request.user, resources=resource_names) |
|
56 | 58 |
return json_response(result) |
57 | 59 |
|
58 | 60 |
|
... | ... | |
71 | 73 |
|
72 | 74 |
@api.api_method(http_method='GET', token_required=False, user_required=False) |
73 | 75 |
def resources(request): |
74 |
result = get_resources() |
|
76 |
resources = register.get_api_visible_resources() |
|
77 |
result = register.resources_to_dict(resources) |
|
75 | 78 |
return json_response(result) |
76 | 79 |
|
77 | 80 |
|
b/snf-astakos-app/astakos/im/functions.py | ||
---|---|---|
738 | 738 |
raise ProjectBadRequest("Malformed resource policies") |
739 | 739 |
|
740 | 740 |
resource_names = policies.keys() |
741 |
resources = Resource.objects.filter(name__in=resource_names) |
|
741 |
resources = Resource.objects.filter(name__in=resource_names, |
|
742 |
api_visible=True) |
|
742 | 743 |
resource_d = {} |
743 | 744 |
for resource in resources: |
744 | 745 |
resource_d[resource.name] = resource |
b/snf-astakos-app/astakos/im/management/commands/_common.py | ||
---|---|---|
40 | 40 |
|
41 | 41 |
from synnefo.util import units |
42 | 42 |
from astakos.im.models import AstakosUser |
43 |
from astakos.im.register import get_resources
|
|
43 |
from astakos.im import register
|
|
44 | 44 |
import sys |
45 | 45 |
|
46 | 46 |
|
... | ... | |
163 | 163 |
@classmethod |
164 | 164 |
def get(cls): |
165 | 165 |
if cls._object is None: |
166 |
cls._object = get_resources() |
|
166 |
rs = register.get_resources() |
|
167 |
cls._object = register.resources_to_dict(rs) |
|
167 | 168 |
return cls._object |
168 | 169 |
|
169 | 170 |
|
b/snf-astakos-app/astakos/im/register.py | ||
---|---|---|
123 | 123 |
% (resource.name, uplimit)) |
124 | 124 |
|
125 | 125 |
|
126 |
def resources_to_dict(resources): |
|
127 |
resource_dict = {} |
|
128 |
for r in resources: |
|
129 |
resource_dict[r.name] = r.get_info() |
|
130 |
return resource_dict |
|
131 |
|
|
132 |
|
|
126 | 133 |
def get_resources(resources=None, services=None): |
127 | 134 |
if resources is None: |
128 | 135 |
rs = Resource.objects.all() |
... | ... | |
132 | 139 |
if services is not None: |
133 | 140 |
rs = rs.filter(service__in=services) |
134 | 141 |
|
135 |
resource_dict = {} |
|
136 |
for r in rs: |
|
137 |
resource_dict[r.full_name()] = r.get_info() |
|
142 |
return rs |
|
138 | 143 |
|
139 |
return resource_dict |
|
144 |
|
|
145 |
def get_api_visible_resources(resources=None, services=None): |
|
146 |
rs = get_resources(resources, services) |
|
147 |
return rs.filter(api_visible=True) |
|
140 | 148 |
|
141 | 149 |
|
142 | 150 |
def add_endpoint(component, service, endpoint_dict, out=None): |
Also available in: Unified diff