blob: a8890d579961ca2ef5fb9689e37b4345fd5eff61 [file] [log] [blame]
from keystonev3.common import send
from keystonev3.arg_converter import get_by_name_or_uuid_multiple
try:
from urllib.parse import urlencode
except ImportError:
from urllib import urlencode
@get_by_name_or_uuid_multiple([('domain', 'domain_id')])
@send('post')
def group_create(domain_id, name, **kwargs):
url = '/groups'
json = {
'group':{
'name': name,
'domain_id': domain_id,
}
}
json['group'].update(kwargs)
return url, json
@get_by_name_or_uuid_multiple([('group', 'group_id')])
@send('get')
def group_get_details(group_id, **kwargs):
url = '/groups/{}'.format(group_id)
return url, None
@get_by_name_or_uuid_multiple([('group', 'group_id')])
@send('patch')
def group_update(group_id, **kwargs):
url = '/groups/{}'.format(group_id)
json = {
'group': kwargs,
}
return url, json
@get_by_name_or_uuid_multiple([('group', 'group_id')])
@send('delete')
def group_delete(group_id, **kwargs):
url = '/groups/{}'.format(group_id)
return url, None
@get_by_name_or_uuid_multiple([('group', 'group_id')])
@send('get')
def group_user_list(group_id, **kwargs):
url = '/groups/{}?{}'.format(group_id, urlencode(kwargs))
return url, None
@get_by_name_or_uuid_multiple([('group', 'group_id'), ('user', 'user_id')])
@send('put')
def group_user_add(group_id, user_id, **kwargs):
url = '/groups/{}/users/{}'.format(group_id, user_id)
return url, None
@get_by_name_or_uuid_multiple([('group', 'group_id'), ('user', 'user_id')])
@send('head')
def group_user_check(group_id, user_id, **kwargs):
url = '/groups/{}/users/{}'.format(group_id, user_id)
return url, None
@get_by_name_or_uuid_multiple([('group', 'group_id'), ('user', 'user_id')])
@send('delete')
def group_user_remove(group_id, user_id, **kwargs):
url = '/groups/{}/users/{}'.format(group_id, user_id)
return url, None