public override AmazonWebServiceResponse Unmarshall(JsonUnmarshallerContext context)
{
GetUsagePlanResponse response = new GetUsagePlanResponse();
context.Read();
int targetDepth = context.CurrentDepth;
while (context.ReadAtDepth(targetDepth))
{
if (context.TestExpression("apiStages", targetDepth))
{
var unmarshaller = new ListUnmarshaller<ApiStage, ApiStageUnmarshaller>(ApiStageUnmarshaller.Instance);
response.ApiStages = unmarshaller.Unmarshall(context);
continue;
}
if (context.TestExpression("description", targetDepth))
{
var unmarshaller = StringUnmarshaller.Instance;
response.Description = unmarshaller.Unmarshall(context);
continue;
}
if (context.TestExpression("id", targetDepth))
{
var unmarshaller = StringUnmarshaller.Instance;
response.Id = unmarshaller.Unmarshall(context);
continue;
}
if (context.TestExpression("name", targetDepth))
{
var unmarshaller = StringUnmarshaller.Instance;
response.Name = unmarshaller.Unmarshall(context);
continue;
}
if (context.TestExpression("productCode", targetDepth))
{
var unmarshaller = StringUnmarshaller.Instance;
response.ProductCode = unmarshaller.Unmarshall(context);
continue;
}
if (context.TestExpression("quota", targetDepth))
{
var unmarshaller = QuotaSettingsUnmarshaller.Instance;
response.Quota = unmarshaller.Unmarshall(context);
continue;
}
if (context.TestExpression("throttle", targetDepth))
{
var unmarshaller = ThrottleSettingsUnmarshaller.Instance;
response.Throttle = unmarshaller.Unmarshall(context);
continue;
}
}
return response;
}