Revision bbcb0aeb snf-astakos-app/astakos/im/endpoints/qh.py
b/snf-astakos-app/astakos/im/endpoints/qh.py | ||
---|---|---|
182 | 182 |
import_limit = None |
183 | 183 |
export_limit = None |
184 | 184 |
flags = 0 |
185 |
args = (resource.service, resource, key, quantity, capacity,
|
|
185 |
args = (resource.service.name, resource.name, key, quantity, capacity,
|
|
186 | 186 |
import_limit, export_limit, flags) |
187 | 187 |
append(args) |
188 | 188 |
return data |
... | ... | |
205 | 205 |
|
206 | 206 |
|
207 | 207 |
@call('create_entity') |
208 |
def create_entities(entities, field=''):
|
|
208 |
def create_user_entities(entities):
|
|
209 | 209 |
data = [] |
210 | 210 |
append = data.append |
211 | 211 |
for entity in entities: |
212 |
try: |
|
213 |
entity = entity.__getattribute__(field) |
|
214 |
except AttributeError: |
|
212 |
entity = entity.uuid |
|
213 |
owner = 'system' |
|
214 |
key = ENTITY_KEY |
|
215 |
ownerkey = '' |
|
216 |
args = entity, owner, key, ownerkey |
|
217 |
append(args) |
|
218 |
return data |
|
219 |
|
|
220 |
@call('create_entity') |
|
221 |
def create_service_entities(entities): |
|
222 |
data = [] |
|
223 |
append = data.append |
|
224 |
l = [] |
|
225 |
for entity in entities: |
|
226 |
entity = entity.service.name |
|
227 |
if entity in l: |
|
215 | 228 |
continue |
229 |
l.append(entity) |
|
216 | 230 |
owner = 'system' |
217 | 231 |
key = ENTITY_KEY |
218 | 232 |
ownerkey = '' |
... | ... | |
223 | 237 |
|
224 | 238 |
def register_users(users): |
225 | 239 |
users, copy = itertools.tee(users) |
226 |
rejected = create_entities(entities=users, field='uuid')
|
|
240 |
rejected = create_user_entities(entities=users)
|
|
227 | 241 |
created = (e for e in copy if unicode(e) not in rejected) |
228 | 242 |
return send_quota(created) |
229 | 243 |
|
230 | 244 |
|
231 | 245 |
def register_resources(resources): |
232 | 246 |
resources, copy = itertools.tee(resources) |
233 |
rejected = create_entities(entities=resources, field='service')
|
|
247 |
rejected = create_service_entities(entities=resources)
|
|
234 | 248 |
created = (e for e in copy if unicode(e) not in rejected) |
235 | 249 |
return send_resource_quantities(created) |
236 | 250 |
|
Also available in: Unified diff