public static DescribeRouteTablesResponse Unmarshall(UnmarshallerContext context)
{
DescribeRouteTablesResponse describeRouteTablesResponse = new DescribeRouteTablesResponse();
describeRouteTablesResponse.HttpResponse = context.HttpResponse;
describeRouteTablesResponse.RequestId = context.StringValue("DescribeRouteTables.RequestId");
describeRouteTablesResponse.TotalCount = context.IntegerValue("DescribeRouteTables.TotalCount");
describeRouteTablesResponse.PageNumber = context.IntegerValue("DescribeRouteTables.PageNumber");
describeRouteTablesResponse.PageSize = context.IntegerValue("DescribeRouteTables.PageSize");
List<DescribeRouteTablesResponse.RouteTable> routeTables = new List<DescribeRouteTablesResponse.RouteTable>();
for (int i = 0; i < context.Length("DescribeRouteTables.RouteTables.Length"); i++) {
DescribeRouteTablesResponse.RouteTable routeTable = new DescribeRouteTablesResponse.RouteTable();
routeTable.VRouterId = context.StringValue("DescribeRouteTables.RouteTables["+ i +"].VRouterId");
routeTable.RouteTableId = context.StringValue("DescribeRouteTables.RouteTables["+ i +"].RouteTableId");
routeTable.RouteTableType = context.StringValue("DescribeRouteTables.RouteTables["+ i +"].RouteTableType");
routeTable.CreationTime = context.StringValue("DescribeRouteTables.RouteTables["+ i +"].CreationTime");
List<DescribeRouteTablesResponse.RouteTable.RouteEntry> routeEntrys = new List<DescribeRouteTablesResponse.RouteTable.RouteEntry>();
for (int j = 0; j < context.Length("DescribeRouteTables.RouteTables["+ i +"].RouteEntrys.Length"); j++) {
DescribeRouteTablesResponse.RouteTable.RouteEntry routeEntry = new DescribeRouteTablesResponse.RouteTable.RouteEntry();
routeEntry.RouteTableId = context.StringValue("DescribeRouteTables.RouteTables["+ i +"].RouteEntrys["+ j +"].RouteTableId");
routeEntry.DestinationCidrBlock = context.StringValue("DescribeRouteTables.RouteTables["+ i +"].RouteEntrys["+ j +"].DestinationCidrBlock");
routeEntry.Type = context.StringValue("DescribeRouteTables.RouteTables["+ i +"].RouteEntrys["+ j +"].Type");
routeEntry.Status = context.StringValue("DescribeRouteTables.RouteTables["+ i +"].RouteEntrys["+ j +"].Status");
routeEntry.InstanceId = context.StringValue("DescribeRouteTables.RouteTables["+ i +"].RouteEntrys["+ j +"].InstanceId");
routeEntry.NextHopType = context.StringValue("DescribeRouteTables.RouteTables["+ i +"].RouteEntrys["+ j +"].NextHopType");
List<DescribeRouteTablesResponse.RouteTable.RouteEntry.NextHop> nextHops = new List<DescribeRouteTablesResponse.RouteTable.RouteEntry.NextHop>();
for (int k = 0; k < context.Length("DescribeRouteTables.RouteTables["+ i +"].RouteEntrys["+ j +"].NextHops.Length"); k++) {
DescribeRouteTablesResponse.RouteTable.RouteEntry.NextHop nextHop = new DescribeRouteTablesResponse.RouteTable.RouteEntry.NextHop();
nextHop.NextHopType = context.StringValue("DescribeRouteTables.RouteTables["+ i +"].RouteEntrys["+ j +"].NextHops["+ k +"].NextHopType");
nextHop.NextHopId = context.StringValue("DescribeRouteTables.RouteTables["+ i +"].RouteEntrys["+ j +"].NextHops["+ k +"].NextHopId");
nextHops.Add(nextHop);
}
routeEntry.NextHops = nextHops;
routeEntrys.Add(routeEntry);
}
routeTable.RouteEntrys = routeEntrys;
routeTables.Add(routeTable);
}
describeRouteTablesResponse.RouteTables = routeTables;
return describeRouteTablesResponse;
}