root / snf-cyclades-app / synnefo / volume / util.py @ dec501fa
History | View | Annotate | Download (1.2 kB)
1 | dec501fa | Christos Stavrakakis | from synnefo.db import models |
---|---|---|---|
2 | dec501fa | Christos Stavrakakis | from snf_django.lib.api import faults |
3 | dec501fa | Christos Stavrakakis | from synnefo.api.util import get_image_dict, get_vm |
4 | dec501fa | Christos Stavrakakis | |
5 | dec501fa | Christos Stavrakakis | |
6 | dec501fa | Christos Stavrakakis | def get_volume(user_id, volume_id, for_update=False, |
7 | dec501fa | Christos Stavrakakis | exception=faults.ItemNotFound): |
8 | dec501fa | Christos Stavrakakis | volumes = models.Volume.objects |
9 | dec501fa | Christos Stavrakakis | if for_update:
|
10 | dec501fa | Christos Stavrakakis | volumes = volumes.select_for_update() |
11 | dec501fa | Christos Stavrakakis | try:
|
12 | dec501fa | Christos Stavrakakis | return volumes.get(id=volume_id, userid=user_id)
|
13 | dec501fa | Christos Stavrakakis | except models.Volume.DoesNotExist:
|
14 | dec501fa | Christos Stavrakakis | raise exception("Volume %s not found" % volume_id) |
15 | dec501fa | Christos Stavrakakis | |
16 | dec501fa | Christos Stavrakakis | |
17 | dec501fa | Christos Stavrakakis | def get_snapshot(user_id, snapshot_id, exception=faults.ItemNotFound): |
18 | dec501fa | Christos Stavrakakis | try:
|
19 | dec501fa | Christos Stavrakakis | return get_image_dict(snapshot_id, user_id)
|
20 | dec501fa | Christos Stavrakakis | except faults.ItemNotFound:
|
21 | dec501fa | Christos Stavrakakis | raise exception("Snapshot %s not found" % snapshot_id) |
22 | dec501fa | Christos Stavrakakis | |
23 | dec501fa | Christos Stavrakakis | |
24 | dec501fa | Christos Stavrakakis | def get_image(user_id, image_id, exception=faults.ItemNotFound): |
25 | dec501fa | Christos Stavrakakis | try:
|
26 | dec501fa | Christos Stavrakakis | return get_image_dict(image_id, user_id)
|
27 | dec501fa | Christos Stavrakakis | except faults.ItemNotFound:
|
28 | dec501fa | Christos Stavrakakis | raise exception("Image %s not found" % image_id) |
29 | dec501fa | Christos Stavrakakis | |
30 | dec501fa | Christos Stavrakakis | |
31 | dec501fa | Christos Stavrakakis | def get_server(user_id, server_id, for_update=False, |
32 | dec501fa | Christos Stavrakakis | exception=faults.ItemNotFound): |
33 | dec501fa | Christos Stavrakakis | try:
|
34 | dec501fa | Christos Stavrakakis | return get_vm(server_id, user_id, for_update=for_update,
|
35 | dec501fa | Christos Stavrakakis | non_deleted=True, non_suspended=True) |
36 | dec501fa | Christos Stavrakakis | except faults.ItemNotFound:
|
37 | dec501fa | Christos Stavrakakis | raise exception("Server %s not found" % server_id) |