diff options
author | Jenkins <jenkins@review.openstack.org> | 2014-07-11 18:21:47 +0000 |
---|---|---|
committer | Gerrit Code Review <review@openstack.org> | 2014-07-11 18:21:47 +0000 |
commit | 658b6900493c9b169dc0dc971e8a9a0f087a0df5 (patch) | |
tree | 209a256743ee9f127265c19fc6701ea32537b826 /keystoneclient/v2_0 | |
parent | dd3534721e1bf0c0884c01ca73770f3ce1f6feb5 (diff) | |
parent | 3a60390fd2b77460eab6eadf2c1eefb3f30caac4 (diff) | |
download | python-keystoneclient-658b6900493c9b169dc0dc971e8a9a0f087a0df5.tar.gz |
Merge "Pass user and roles manager to tenant manager"
Diffstat (limited to 'keystoneclient/v2_0')
-rw-r--r-- | keystoneclient/v2_0/client.py | 3 | ||||
-rw-r--r-- | keystoneclient/v2_0/tenants.py | 31 |
2 files changed, 20 insertions, 14 deletions
diff --git a/keystoneclient/v2_0/client.py b/keystoneclient/v2_0/client.py index 08263a7..793e5cd 100644 --- a/keystoneclient/v2_0/client.py +++ b/keystoneclient/v2_0/client.py @@ -133,10 +133,11 @@ class Client(httpclient.HTTPClient): self.extensions = extensions.ExtensionManager(self) self.roles = roles.RoleManager(self) self.services = services.ServiceManager(self) - self.tenants = tenants.TenantManager(self) self.tokens = tokens.TokenManager(self) self.users = users.UserManager(self, self.roles) + self.tenants = tenants.TenantManager(self, self.roles, self.users) + # extensions self.ec2 = ec2.CredentialsManager(self) diff --git a/keystoneclient/v2_0/tenants.py b/keystoneclient/v2_0/tenants.py index cee37d1..93d6890 100644 --- a/keystoneclient/v2_0/tenants.py +++ b/keystoneclient/v2_0/tenants.py @@ -55,15 +55,15 @@ class Tenant(base.Resource): return retval def add_user(self, user, role): - return self.manager.api.roles.add_user_role(base.getid(user), - base.getid(role), - self.id) - - def remove_user(self, user, role): - return self.manager.api.roles.remove_user_role(base.getid(user), + return self.manager.role_manager.add_user_role(base.getid(user), base.getid(role), self.id) + def remove_user(self, user, role): + return self.manager.role_manager.remove_user_role(base.getid(user), + base.getid(role), + self.id) + def list_users(self): return self.manager.list_users(self.id) @@ -72,6 +72,11 @@ class TenantManager(base.ManagerWithFind): """Manager class for manipulating Keystone tenants.""" resource_class = Tenant + def __init__(self, client, role_manager, user_manager): + super(TenantManager, self).__init__(client) + self.role_manager = role_manager + self.user_manager = user_manager + def get(self, tenant_id): return self._get("/tenants/%s" % tenant_id, "tenant") @@ -145,16 +150,16 @@ class TenantManager(base.ManagerWithFind): def list_users(self, tenant): """List users for a tenant.""" - return self.api.users.list(base.getid(tenant)) + return self.user_manager.list(base.getid(tenant)) def add_user(self, tenant, user, role): """Add a user to a tenant with the given role.""" - return self.api.roles.add_user_role(base.getid(user), - base.getid(role), - base.getid(tenant)) + return self.role_manager.add_user_role(base.getid(user), + base.getid(role), + base.getid(tenant)) def remove_user(self, tenant, user, role): """Remove the specified role from the user on the tenant.""" - return self.api.roles.remove_user_role(base.getid(user), - base.getid(role), - base.getid(tenant)) + return self.role_manager.remove_user_role(base.getid(user), + base.getid(role), + base.getid(tenant)) |