public static DescribeDisksResponse Unmarshall(UnmarshallerContext context)
{
DescribeDisksResponse describeDisksResponse = new DescribeDisksResponse();
describeDisksResponse.HttpResponse = context.HttpResponse;
describeDisksResponse.RequestId = context.StringValue("DescribeDisks.RequestId");
describeDisksResponse.TotalCount = context.IntegerValue("DescribeDisks.TotalCount");
describeDisksResponse.PageNumber = context.IntegerValue("DescribeDisks.PageNumber");
describeDisksResponse.PageSize = context.IntegerValue("DescribeDisks.PageSize");
List<DescribeDisksResponse.Disk> disks = new List<DescribeDisksResponse.Disk>();
for (int i = 0; i < context.Length("DescribeDisks.Disks.Length"); i++) {
DescribeDisksResponse.Disk disk = new DescribeDisksResponse.Disk();
disk.DiskId = context.StringValue("DescribeDisks.Disks["+ i +"].DiskId");
disk.RegionId = context.StringValue("DescribeDisks.Disks["+ i +"].RegionId");
disk.ZoneId = context.StringValue("DescribeDisks.Disks["+ i +"].ZoneId");
disk.DiskName = context.StringValue("DescribeDisks.Disks["+ i +"].DiskName");
disk.Description = context.StringValue("DescribeDisks.Disks["+ i +"].Description");
disk.Type = context.EnumValue<DescribeDisksResponse.Disk.TypeEnum>("DescribeDisks.Disks["+ i +"].Type");
disk.Category = context.EnumValue<DescribeDisksResponse.Disk.CategoryEnum>("DescribeDisks.Disks["+ i +"].Category");
disk.Size = context.IntegerValue("DescribeDisks.Disks["+ i +"].Size");
disk.ImageId = context.StringValue("DescribeDisks.Disks["+ i +"].ImageId");
disk.SourceSnapshotId = context.StringValue("DescribeDisks.Disks["+ i +"].SourceSnapshotId");
disk.AutoSnapshotPolicyId = context.StringValue("DescribeDisks.Disks["+ i +"].AutoSnapshotPolicyId");
disk.ProductCode = context.StringValue("DescribeDisks.Disks["+ i +"].ProductCode");
disk.Portable = context.BooleanValue("DescribeDisks.Disks["+ i +"].Portable");
disk.Status = context.StringValue("DescribeDisks.Disks["+ i +"].Status");
disk.InstanceId = context.StringValue("DescribeDisks.Disks["+ i +"].InstanceId");
disk.Device = context.StringValue("DescribeDisks.Disks["+ i +"].Device");
disk.DeleteWithInstance = context.BooleanValue("DescribeDisks.Disks["+ i +"].DeleteWithInstance");
disk.DeleteAutoSnapshot = context.BooleanValue("DescribeDisks.Disks["+ i +"].DeleteAutoSnapshot");
disk.EnableAutoSnapshot = context.BooleanValue("DescribeDisks.Disks["+ i +"].EnableAutoSnapshot");
disk.EnableAutomatedSnapshotPolicy = context.BooleanValue("DescribeDisks.Disks["+ i +"].EnableAutomatedSnapshotPolicy");
disk.CreationTime = context.StringValue("DescribeDisks.Disks["+ i +"].CreationTime");
disk.AttachedTime = context.StringValue("DescribeDisks.Disks["+ i +"].AttachedTime");
disk.DetachedTime = context.StringValue("DescribeDisks.Disks["+ i +"].DetachedTime");
disk.DiskChargeType = context.StringValue("DescribeDisks.Disks["+ i +"].DiskChargeType");
disk.ExpiredTime = context.StringValue("DescribeDisks.Disks["+ i +"].ExpiredTime");
List<DescribeDisksResponse.Disk.OperationLock> operationLocks = new List<DescribeDisksResponse.Disk.OperationLock>();
for (int j = 0; j < context.Length("DescribeDisks.Disks["+ i +"].OperationLocks.Length"); j++) {
DescribeDisksResponse.Disk.OperationLock operationLock = new DescribeDisksResponse.Disk.OperationLock();
operationLock.LockReason = context.StringValue("DescribeDisks.Disks["+ i +"].OperationLocks["+ j +"].LockReason");
operationLocks.Add(operationLock);
}
disk.OperationLocks = operationLocks;
List<DescribeDisksResponse.Disk.Tag> tags = new List<DescribeDisksResponse.Disk.Tag>();
for (int j = 0; j < context.Length("DescribeDisks.Disks["+ i +"].Tags.Length"); j++) {
DescribeDisksResponse.Disk.Tag tag = new DescribeDisksResponse.Disk.Tag();
tag.TagKey = context.StringValue("DescribeDisks.Disks["+ i +"].Tags["+ j +"].TagKey");
tag.TagValue = context.StringValue("DescribeDisks.Disks["+ i +"].Tags["+ j +"].TagValue");
tags.Add(tag);
}
disk.Tags = tags;
disks.Add(disk);
}
describeDisksResponse.Disks = disks;
return describeDisksResponse;
}