Rearrange session arguments

Way back on https://review.openstack.org/#/c/88485 I said I
would rearrange the arguments to the session.  Here is is.

Change-Id: I477f10f56e0366b01923d0df46d60247a86ac47c
This commit is contained in:
Terry Howe
2014-05-29 06:06:34 -06:00
parent c156866791
commit bf73b07633
3 changed files with 30 additions and 28 deletions

View File

@@ -214,9 +214,10 @@ class Resource(collections.MutableMapping):
if r_id:
url = utils.urljoin(cls.base_path, r_id)
resp = session.put(cls.service, url, json=body).body
resp = session.put(url, service=cls.service, json=body).body
else:
resp = session.post(cls.service, cls.base_path, json=body).body
resp = session.post(cls.base_path, service=cls.service,
json=body).body
if cls.resource_key:
resp = resp[cls.resource_key]
@@ -234,7 +235,7 @@ class Resource(collections.MutableMapping):
raise MethodNotSupported('retrieve')
url = utils.urljoin(cls.base_path, r_id)
body = session.get(cls.service, url).body
body = session.get(url, service=cls.service).body
if cls.resource_key:
body = body[cls.resource_key]
@@ -262,7 +263,7 @@ class Resource(collections.MutableMapping):
body = attrs
url = utils.urljoin(cls.base_path, r_id)
resp = session.patch(cls.service, url, json=body).body
resp = session.patch(url, service=cls.service, json=body).body
if cls.resource_key:
resp = resp[cls.resource_key]
@@ -290,7 +291,7 @@ class Resource(collections.MutableMapping):
if not cls.allow_delete:
raise MethodNotSupported('delete')
session.delete(cls.service, utils.urljoin(cls.base_path, r_id),
session.delete(utils.urljoin(cls.base_path, r_id), service=cls.service,
accept=None)
def delete(self, session):
@@ -314,7 +315,7 @@ class Resource(collections.MutableMapping):
if filters:
url = '%s?%s' % (url, url_parse.urlencode(filters))
resp = session.get(cls.service, url).body
resp = session.get(url, service=cls.service).body
if cls.resources_key:
resp = resp[cls.resources_key]

View File

@@ -32,16 +32,17 @@ class Session(object):
self.transport = transport
self.authenticator = authenticator
def _request(self, service, path, method, authenticate=True, **kwargs):
def _request(self, path, method, service=None, authenticate=True,
**kwargs):
"""Send an HTTP request with the specified characteristics.
Handle a session level request.
:param ServiceFilter service: Object that identifies service to
the authenticator.
:type service: :class:`openstack.auth.service_filter.ServiceFilter`
:param string path: Path relative to authentictor base url.
:param string method: The http method to use. (eg. 'GET', 'POST').
:param ServiceFilter service: Object that filters service to
the authenticator.
:type service: :class:`openstack.auth.service_filter.ServiceFilter`
:param bool authenticate: True if a token should be attached
:param kwargs: any other parameter that can be passed to transport
and authenticator.
@@ -60,20 +61,20 @@ class Session(object):
return self.transport.request(method, url, **kwargs)
def head(self, service, path, **kwargs):
return self._request(service, path, 'HEAD', **kwargs)
def head(self, path, **kwargs):
return self._request(path, 'HEAD', **kwargs)
def get(self, service, path, **kwargs):
return self._request(service, path, 'GET', **kwargs)
def get(self, path, **kwargs):
return self._request(path, 'GET', **kwargs)
def post(self, service, path, **kwargs):
return self._request(service, path, 'POST', **kwargs)
def post(self, path, **kwargs):
return self._request(path, 'POST', **kwargs)
def put(self, service, path, **kwargs):
return self._request(service, path, 'PUT', **kwargs)
def put(self, path, **kwargs):
return self._request(path, 'PUT', **kwargs)
def delete(self, service, path, **kwargs):
return self._request(service, path, 'DELETE', **kwargs)
def delete(self, path, **kwargs):
return self._request(path, 'DELETE', **kwargs)
def patch(self, service, path, **kwargs):
return self._request(service, path, 'PATCH', **kwargs)
def patch(self, path, **kwargs):
return self._request(path, 'PATCH', **kwargs)

View File

@@ -29,7 +29,7 @@ class TestSession(base.TestCase):
self.expected = {'headers': {'X-Auth-Token': self.auth.TOKEN}}
def test_head(self):
resp = self.sess.head(self.serv, self.TEST_PATH)
resp = self.sess.head(self.TEST_PATH, service=self.serv)
self.assertEqual(self.xport.RESPONSE, resp)
self.auth.get_token.assert_called_with(self.xport)
@@ -38,7 +38,7 @@ class TestSession(base.TestCase):
self.xport.request.assert_called_with('HEAD', url, **self.expected)
def test_get(self):
resp = self.sess.get(self.serv, self.TEST_PATH)
resp = self.sess.get(self.TEST_PATH, service=self.serv)
self.assertEqual(self.xport.RESPONSE, resp)
self.auth.get_token.assert_called_with(self.xport)
@@ -47,7 +47,7 @@ class TestSession(base.TestCase):
self.xport.request.assert_called_with('GET', url, **self.expected)
def test_post(self):
resp = self.sess.post(self.serv, self.TEST_PATH)
resp = self.sess.post(self.TEST_PATH, service=self.serv)
self.assertEqual(self.xport.RESPONSE, resp)
self.auth.get_token.assert_called_with(self.xport)
@@ -56,7 +56,7 @@ class TestSession(base.TestCase):
self.xport.request.assert_called_with('POST', url, **self.expected)
def test_put(self):
resp = self.sess.put(self.serv, self.TEST_PATH)
resp = self.sess.put(self.TEST_PATH, service=self.serv)
self.assertEqual(self.xport.RESPONSE, resp)
self.auth.get_token.assert_called_with(self.xport)
@@ -65,7 +65,7 @@ class TestSession(base.TestCase):
self.xport.request.assert_called_with('PUT', url, **self.expected)
def test_delete(self):
resp = self.sess.delete(self.serv, self.TEST_PATH)
resp = self.sess.delete(self.TEST_PATH, service=self.serv)
self.assertEqual(self.xport.RESPONSE, resp)
self.auth.get_token.assert_called_with(self.xport)
@@ -74,7 +74,7 @@ class TestSession(base.TestCase):
self.xport.request.assert_called_with('DELETE', url, **self.expected)
def test_patch(self):
resp = self.sess.patch(self.serv, self.TEST_PATH)
resp = self.sess.patch(self.TEST_PATH, service=self.serv)
self.assertEqual(self.xport.RESPONSE, resp)
self.auth.get_token.assert_called_with(self.xport)