private static void UnmarshallResult(XmlUnmarshallerContext context,GetBucketWebsiteResponse response)
{
int originalDepth = context.CurrentDepth;
int targetDepth = originalDepth + 1;
if (context.IsStartOfDocument)
targetDepth += 2;
response.WebsiteConfiguration = new WebsiteConfiguration();
while (context.Read())
{
if (context.IsStartElement || context.IsAttribute)
{
if (context.TestExpression("RedirectAllRequestsTo", targetDepth))
{
response.WebsiteConfiguration.RedirectAllRequestsTo = RoutingRuleRedirectUnmarshaller.GetInstance().Unmarshall(context);
continue;
}
if (context.TestExpression("IndexDocument/Suffix", targetDepth))
{
response.WebsiteConfiguration.IndexDocumentSuffix = StringUnmarshaller.GetInstance().Unmarshall(context);
continue;
}
if (context.TestExpression("ErrorDocument/Key", targetDepth))
{
response.WebsiteConfiguration.ErrorDocument = StringUnmarshaller.GetInstance().Unmarshall(context);
continue;
}
if (context.TestExpression("RoutingRule", targetDepth + 1))
{
response.WebsiteConfiguration.RoutingRules.Add(RoutingRuleUnmarshaller.GetInstance().Unmarshall(context));
continue;
}
}
else if (context.IsEndElement && context.CurrentDepth < originalDepth)
{
return;
}
}
return;
}