Skip to content

Commit ae2db0a

Browse files
author
Kenneth Reitz
committed
get a single resource
1 parent 7aa69ff commit ae2db0a

File tree

2 files changed

+17
-4
lines changed

2 files changed

+17
-4
lines changed

heroku/api.py

Lines changed: 10 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -75,15 +75,19 @@ def _resource_deserialize(s):
7575

7676
def _get_resource(self, resource, obj, **kwargs):
7777

78-
r = self._http_resource('GET', resource, params=kwargs)
78+
url = self._url_for(*resource)
79+
80+
r = self._s.get(url, params=kwargs)
81+
7982
item = self._resource_deserialize(r.content)
8083

81-
return obj.new_from_dict(item, gh=self)
84+
return obj.new_from_dict(item, h=self)
8285

8386

8487
def _get_resources(self, resource, obj, **kwargs):
8588

86-
url = self._url_for(resource)
89+
url = self._url_for(*resource)
90+
8791
r = self._s.get(url, params=kwargs)
8892

8993
d_items = self._resource_deserialize(r.content)
@@ -106,6 +110,9 @@ def addons(self):
106110
def apps(self):
107111
return self._get_resources(('apps'), App)
108112

113+
def get_app(self, name):
114+
return self._get_resource(('apps', name), App)
115+
109116

110117

111118
class ResponseError(ValueError):

heroku/models.py

Lines changed: 7 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -62,11 +62,17 @@ class Addon(BaseResource):
6262
def __repr__(self):
6363
return "<addon '%s'>" % (self.name)
6464

65-
6665
class App(BaseResource):
66+
_strs = ['name', 'create_status', 'stack', 'repo_migrate_status']
67+
_ints = ['id', 'slug_size', 'repo_size', 'dynos', 'workers']
68+
_dates = ['created_at',]
69+
6770
def __init__(self):
6871
super(App, self).__init__()
6972

73+
def __repr__(self):
74+
return "<app '%s'>" % (self.name)
75+
7076

7177
class Collaborator(BaseResource):
7278
def __init__(self):

0 commit comments

Comments
 (0)