def get(self, context, request_args, pagination_params):
"""Get cloud(s) for the project. Get cloud details if
for a particular cloud.
"""
cloud_id = request_args.get("id")
cloud_name = request_args.get("name")
details = request_args.get("details")
if not (cloud_id or cloud_name):
# Get all clouds for this project
clouds_obj, link_params = dbapi.clouds_get_all(
context, request_args, pagination_params,
)
if details:
clouds_obj = [utils.get_resource_with_vars(request_args, c)
for c in clouds_obj]
else:
if cloud_name:
cloud_obj = dbapi.clouds_get_by_name(context, cloud_name)
cloud_obj.data = cloud_obj.variables
if cloud_id:
cloud_obj = dbapi.clouds_get_by_id(context, cloud_id)
cloud_obj.data = cloud_obj.variables
clouds_obj = [cloud_obj]
link_params = {}
links = base.links_from(link_params)
response_body = {'clouds': clouds_obj, 'links': links}
return jsonutils.to_primitive(response_body), 200, None
评论列表
文章目录