tree 45d7a0a28e916b13fce7d3f448a863901bf809f9
parent d95efa9be25ab6a6b6daaf9971877978713f2ea0
author ghanshyam <ghanshyam.mann@nectechnologies.in> 1440401950 +0900
committer ghanshyam <ghanshyam.mann@nectechnologies.in> 1440555317 +0900

Return complete response from compute quotas client

Currently compute quota_classes_client and quotas_client returns Response by
removing top key from Response.
For example- return service_client.ResponseBody(resp, body['quota_set'])

As service clients are in direction to move to Tempest-lib, all
service clients should return Response without any truncation.
One good example is Resource pagination links which are lost with current
way of return value. Resource pagination links are present in parallel
(not inside) to top key of Response.

This patch makes compute quota_classes_client and quotas_client to return
complete Response body.

Change-Id: Idd8afb1bcfc1b0165b1e967a991d4705ff182249
Implements: blueprint method-return-value-and-move-service-clients-to-lib
