~ubuntu-branches/ubuntu/saucy/python-heatclient/saucy-proposed

« back to all changes in this revision

Viewing changes to heatclient/v1/stacks.py

  • Committer: Package Import Robot
  • Author(s): Chuck Short
  • Date: 2013-09-06 14:01:45 UTC
  • mfrom: (1.1.2)
  • Revision ID: package-import@ubuntu.com-20130906140145-r0oqnitf1jv8d9m6
Tags: 0.2.4-0ubuntu1
* New upstream release. 
* debian/{control,rules}: Dropped openstack-pkg-tools no longer
  needed.
* debian/control: Add python-mock as a build dependency.

Show diffs side-by-side

added added

removed removed

Lines of Context:
17
17
 
18
18
from heatclient.common import base
19
19
 
20
 
DEFAULT_PAGE_SIZE = 20
21
 
 
22
20
 
23
21
class Stack(base.Resource):
24
22
    def __repr__(self):
28
26
        self.manager.update(self, **fields)
29
27
 
30
28
    def delete(self):
31
 
        return self.manager.delete(self)
32
 
 
33
 
    def data(self, **kwargs):
34
 
        return self.manager.data(self, **kwargs)
 
29
        return self.manager.delete(self.id)
 
30
 
 
31
    def get(self):
 
32
        # set_loaded() first ... so if we have to bail, we know we tried.
 
33
        self.set_loaded(True)
 
34
        if not hasattr(self.manager, 'get'):
 
35
            return
 
36
 
 
37
        new = self.manager.get('%s/%s' % (self.stack_name, self.id))
 
38
        if new:
 
39
            self._add_details(new._info)
 
40
 
 
41
    @property
 
42
    def action(self):
 
43
        s = self.stack_status
 
44
        # Return everything before the first underscore
 
45
        return s[:s.index('_')]
 
46
 
 
47
    @property
 
48
    def status(self):
 
49
        s = self.stack_status
 
50
        # Return everything after the first underscore
 
51
        return s[s.index('_') + 1:]
35
52
 
36
53
 
37
54
class StackManager(base.Manager):
64
81
            if (page_size and len(stacks) == page_size and
65
82
                    (absolute_limit is None or 0 < seen < absolute_limit)):
66
83
                qp['marker'] = stack.id
67
 
                for image in paginate(qp, seen):
68
 
                    yield image
 
84
                for stack in paginate(qp, seen):
 
85
                    yield stack
69
86
 
70
 
        params = {'limit': kwargs.get('page_size', DEFAULT_PAGE_SIZE)}
 
87
        params = {}
 
88
        if 'page_size' in kwargs:
 
89
            params['limit'] = kwargs['page_size']
71
90
 
72
91
        if 'marker' in kwargs:
73
92
            params['marker'] = kwargs['marker']