diff --git a/generator/.DevConfigs/4e80601b-3892-41e2-bff8-7c3ef4c78b56.json b/generator/.DevConfigs/4e80601b-3892-41e2-bff8-7c3ef4c78b56.json
new file mode 100644
index 000000000000..af20478f532d
--- /dev/null
+++ b/generator/.DevConfigs/4e80601b-3892-41e2-bff8-7c3ef4c78b56.json
@@ -0,0 +1,18 @@
+{
+ "core": {
+ "changeLogMessages": [
+ "refactor generator to reduce duplication by splitting logic into methods."
+ ],
+ "type": "patch",
+ "updateMinimum": true
+ },
+ "services": [
+ {
+ "serviceName": "S3",
+ "type": "patch",
+ "changeLogMessages": [
+ "Generate GetBucketAccelerate, PutBucketEncryption, GetBucketEncryption."
+ ]
+ }
+ ]
+}
\ No newline at end of file
diff --git a/generator/ServiceClientGeneratorLib/Generators/Marshallers/BaseResponseUnmarshaller.cs b/generator/ServiceClientGeneratorLib/Generators/Marshallers/BaseResponseUnmarshaller.cs
index 774d0d79fcca..1cdf37eeaac1 100644
--- a/generator/ServiceClientGeneratorLib/Generators/Marshallers/BaseResponseUnmarshaller.cs
+++ b/generator/ServiceClientGeneratorLib/Generators/Marshallers/BaseResponseUnmarshaller.cs
@@ -19,7 +19,7 @@ namespace ServiceClientGenerator.Generators.Marshallers
/// Class to produce the template output
///
- #line 1 "C:\Dev\worktrees\fixdatetimes\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt"
+ #line 1 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt"
[global::System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.VisualStudio.TextTemplating", "17.0.0.0")]
public partial class BaseResponseUnmarshaller : Generators.BaseGenerator
{
@@ -33,7 +33,7 @@ public override string TransformText()
return this.GenerationEnvironment.ToString();
}
- #line 8 "C:\Dev\worktrees\fixdatetimes\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt"
+ #line 8 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt"
protected void GenerateAWSQueryCompatibleBlock()
{
@@ -42,7 +42,7 @@ protected void GenerateAWSQueryCompatibleBlock()
#line default
#line hidden
- #line 11 "C:\Dev\worktrees\fixdatetimes\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt"
+ #line 11 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt"
this.Write(@" var errorCode = errorResponse.Code;
var errorType = errorResponse.Type;
var queryHeaderKey = Amazon.Util.HeaderKeys.XAmzQueryError;
@@ -69,7 +69,7 @@ protected void GenerateAWSQueryCompatibleBlock()
#line default
#line hidden
- #line 32 "C:\Dev\worktrees\fixdatetimes\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt"
+ #line 32 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt"
}
@@ -77,7 +77,7 @@ protected void GenerateAWSQueryCompatibleBlock()
#line default
#line hidden
- #line 36 "C:\Dev\worktrees\fixdatetimes\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt"
+ #line 36 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt"
protected void AddCommonUsingStatements()
{
@@ -86,7 +86,7 @@ protected void AddCommonUsingStatements()
#line default
#line hidden
- #line 39 "C:\Dev\worktrees\fixdatetimes\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt"
+ #line 39 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt"
this.Write("using System;\r\nusing System.Collections.Generic;\r\nusing System.Globalization;\r\nus" +
"ing System.IO;\r\nusing System.Net;\r\nusing System.Text;\r\nusing System.Xml.Serializ" +
"ation;\r\n\r\nusing ");
@@ -95,14 +95,14 @@ protected void AddCommonUsingStatements()
#line default
#line hidden
- #line 48 "C:\Dev\worktrees\fixdatetimes\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt"
+ #line 48 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt"
this.Write(this.ToStringHelper.ToStringWithCulture(this.Config.Namespace));
#line default
#line hidden
- #line 48 "C:\Dev\worktrees\fixdatetimes\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt"
+ #line 48 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt"
this.Write(".Model;\r\nusing Amazon.Runtime;\r\nusing Amazon.Runtime.Internal;\r\nusing Amazon.Runt" +
"ime.Internal.Transform;\r\nusing Amazon.Runtime.Internal.Util;\r\n");
@@ -110,7 +110,7 @@ protected void AddCommonUsingStatements()
#line default
#line hidden
- #line 53 "C:\Dev\worktrees\fixdatetimes\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt"
+ #line 53 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt"
}
@@ -167,49 +167,49 @@ protected void AddResponseSingletonMethod()
#line default
#line hidden
- #line 104 "C:\Dev\worktrees\fixdatetimes\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt"
+ #line 104 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt"
this.Write(" private static ");
#line default
#line hidden
- #line 105 "C:\Dev\worktrees\fixdatetimes\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt"
+ #line 105 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt"
this.Write(this.ToStringHelper.ToStringWithCulture(this.UnmarshallerBaseName));
#line default
#line hidden
- #line 105 "C:\Dev\worktrees\fixdatetimes\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt"
+ #line 105 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt"
this.Write("ResponseUnmarshaller _instance = new ");
#line default
#line hidden
- #line 105 "C:\Dev\worktrees\fixdatetimes\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt"
+ #line 105 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt"
this.Write(this.ToStringHelper.ToStringWithCulture(this.UnmarshallerBaseName));
#line default
#line hidden
- #line 105 "C:\Dev\worktrees\fixdatetimes\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt"
+ #line 105 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt"
this.Write("ResponseUnmarshaller(); \r\n\r\n\t\tinternal static ");
#line default
#line hidden
- #line 107 "C:\Dev\worktrees\fixdatetimes\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt"
+ #line 107 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt"
this.Write(this.ToStringHelper.ToStringWithCulture(this.UnmarshallerBaseName));
#line default
#line hidden
- #line 107 "C:\Dev\worktrees\fixdatetimes\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt"
+ #line 107 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt"
this.Write("ResponseUnmarshaller GetInstance()\r\n\t\t{\r\n\t\t\treturn _instance;\r\n\t\t}\r\n\r\n ///" +
" \r\n /// Gets the singleton.\r\n /// \r\n\t\tpublic " +
"static ");
@@ -218,14 +218,14 @@ protected void AddResponseSingletonMethod()
#line default
#line hidden
- #line 115 "C:\Dev\worktrees\fixdatetimes\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt"
+ #line 115 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt"
this.Write(this.ToStringHelper.ToStringWithCulture(this.UnmarshallerBaseName));
#line default
#line hidden
- #line 115 "C:\Dev\worktrees\fixdatetimes\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt"
+ #line 115 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt"
this.Write("ResponseUnmarshaller Instance\r\n\t\t{\r\n\t\t\tget\r\n\t\t\t{\r\n\t\t\t\treturn _instance;\r\n\t\t\t}\r\n\t\t" +
"}\r\n\r\n");
@@ -233,7 +233,7 @@ protected void AddResponseSingletonMethod()
#line default
#line hidden
- #line 123 "C:\Dev\worktrees\fixdatetimes\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt"
+ #line 123 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt"
}
@@ -244,35 +244,35 @@ protected void AddStructureSingletonMethod()
#line default
#line hidden
- #line 128 "C:\Dev\worktrees\fixdatetimes\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt"
+ #line 128 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt"
this.Write(" private static ");
#line default
#line hidden
- #line 129 "C:\Dev\worktrees\fixdatetimes\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt"
+ #line 129 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt"
this.Write(this.ToStringHelper.ToStringWithCulture(this.UnmarshallerBaseName));
#line default
#line hidden
- #line 129 "C:\Dev\worktrees\fixdatetimes\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt"
+ #line 129 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt"
this.Write("Unmarshaller _instance = new ");
#line default
#line hidden
- #line 129 "C:\Dev\worktrees\fixdatetimes\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt"
+ #line 129 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt"
this.Write(this.ToStringHelper.ToStringWithCulture(this.UnmarshallerBaseName));
#line default
#line hidden
- #line 129 "C:\Dev\worktrees\fixdatetimes\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt"
+ #line 129 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt"
this.Write("Unmarshaller(); \r\n\r\n /// \r\n /// Gets the singleton." +
"\r\n /// \r\n\t\tpublic static ");
@@ -280,21 +280,21 @@ protected void AddStructureSingletonMethod()
#line default
#line hidden
- #line 134 "C:\Dev\worktrees\fixdatetimes\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt"
+ #line 134 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt"
this.Write(this.ToStringHelper.ToStringWithCulture(this.UnmarshallerBaseName));
#line default
#line hidden
- #line 134 "C:\Dev\worktrees\fixdatetimes\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt"
+ #line 134 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt"
this.Write("Unmarshaller Instance\r\n\t\t{\r\n\t\t\tget\r\n\t\t\t{\r\n\t\t\t\treturn _instance;\r\n\t\t\t}\r\n\t\t}\r\n");
#line default
#line hidden
- #line 141 "C:\Dev\worktrees\fixdatetimes\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt"
+ #line 141 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt"
}
@@ -313,28 +313,28 @@ protected void UnmarshallHeaders()
#line default
#line hidden
- #line 154 "C:\Dev\worktrees\fixdatetimes\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt"
+ #line 154 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt"
this.Write("\t\t\t//Map of headers with prefix \"");
#line default
#line hidden
- #line 155 "C:\Dev\worktrees\fixdatetimes\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt"
+ #line 155 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt"
this.Write(this.ToStringHelper.ToStringWithCulture(member.MarshallLocationName));
#line default
#line hidden
- #line 155 "C:\Dev\worktrees\fixdatetimes\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt"
+ #line 155 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt"
this.Write("\".\r\n");
#line default
#line hidden
- #line 156 "C:\Dev\worktrees\fixdatetimes\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt"
+ #line 156 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt"
// Dictionary
if (member.ModelShape.ValueShape.IsString)
@@ -344,182 +344,182 @@ protected void UnmarshallHeaders()
#line default
#line hidden
- #line 160 "C:\Dev\worktrees\fixdatetimes\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt"
+ #line 160 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt"
this.Write(" var headersFor");
#line default
#line hidden
- #line 161 "C:\Dev\worktrees\fixdatetimes\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt"
+ #line 161 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt"
this.Write(this.ToStringHelper.ToStringWithCulture(member.PropertyName));
#line default
#line hidden
- #line 161 "C:\Dev\worktrees\fixdatetimes\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt"
+ #line 161 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt"
this.Write(" = new Dictionary();\r\n\t\t\tforeach (var name");
#line default
#line hidden
- #line 162 "C:\Dev\worktrees\fixdatetimes\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt"
+ #line 162 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt"
this.Write(this.ToStringHelper.ToStringWithCulture(member.PropertyName));
#line default
#line hidden
- #line 162 "C:\Dev\worktrees\fixdatetimes\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt"
+ #line 162 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt"
this.Write(" in context.ResponseData.GetHeaderNames())\r\n\t\t\t{\r\n\t\t\t\tvar keyToUse = name");
#line default
#line hidden
- #line 164 "C:\Dev\worktrees\fixdatetimes\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt"
+ #line 164 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt"
this.Write(this.ToStringHelper.ToStringWithCulture(member.PropertyName));
#line default
#line hidden
- #line 164 "C:\Dev\worktrees\fixdatetimes\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt"
+ #line 164 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt"
this.Write(";\r\n\t\t\t\tif(\"");
#line default
#line hidden
- #line 165 "C:\Dev\worktrees\fixdatetimes\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt"
+ #line 165 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt"
this.Write(this.ToStringHelper.ToStringWithCulture(member.MarshallLocationName));
#line default
#line hidden
- #line 165 "C:\Dev\worktrees\fixdatetimes\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt"
+ #line 165 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt"
this.Write("\".Length > 0 && keyToUse.StartsWith(\"");
#line default
#line hidden
- #line 165 "C:\Dev\worktrees\fixdatetimes\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt"
+ #line 165 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt"
this.Write(this.ToStringHelper.ToStringWithCulture(member.MarshallLocationName));
#line default
#line hidden
- #line 165 "C:\Dev\worktrees\fixdatetimes\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt"
+ #line 165 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt"
this.Write("\")) {\r\n\t\t\t\t\tkeyToUse = keyToUse.Substring(\"");
#line default
#line hidden
- #line 166 "C:\Dev\worktrees\fixdatetimes\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt"
+ #line 166 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt"
this.Write(this.ToStringHelper.ToStringWithCulture(member.MarshallLocationName));
#line default
#line hidden
- #line 166 "C:\Dev\worktrees\fixdatetimes\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt"
+ #line 166 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt"
this.Write("\".Length);\r\n\t\t\t\t}\r\n\r\n\t\t\t\tif (context.ResponseData.IsHeaderPresent($\"");
#line default
#line hidden
- #line 169 "C:\Dev\worktrees\fixdatetimes\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt"
+ #line 169 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt"
this.Write(this.ToStringHelper.ToStringWithCulture(member.MarshallLocationName));
#line default
#line hidden
- #line 169 "C:\Dev\worktrees\fixdatetimes\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt"
+ #line 169 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt"
this.Write("{keyToUse}\"))\r\n\t\t\t\t{\r\n\t\t\t\t\theadersFor");
#line default
#line hidden
- #line 171 "C:\Dev\worktrees\fixdatetimes\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt"
+ #line 171 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt"
this.Write(this.ToStringHelper.ToStringWithCulture(member.PropertyName));
#line default
#line hidden
- #line 171 "C:\Dev\worktrees\fixdatetimes\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt"
+ #line 171 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt"
this.Write(".Add(\r\n\t\t\t\t\t\tkeyToUse,\r\n\t\t\t\t\t\tcontext.ResponseData.GetHeaderValue($\"");
#line default
#line hidden
- #line 173 "C:\Dev\worktrees\fixdatetimes\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt"
+ #line 173 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt"
this.Write(this.ToStringHelper.ToStringWithCulture(member.MarshallLocationName));
#line default
#line hidden
- #line 173 "C:\Dev\worktrees\fixdatetimes\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt"
+ #line 173 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt"
this.Write("{keyToUse}\")\r\n\t\t\t\t\t);\r\n\t\t\t\t}\r\n\t\t\t}\r\n\t\t\tif(headersFor");
#line default
#line hidden
- #line 177 "C:\Dev\worktrees\fixdatetimes\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt"
+ #line 177 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt"
this.Write(this.ToStringHelper.ToStringWithCulture(member.PropertyName));
#line default
#line hidden
- #line 177 "C:\Dev\worktrees\fixdatetimes\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt"
+ #line 177 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt"
this.Write(".Count > 0)\r\n\t\t\t\tresponse.");
#line default
#line hidden
- #line 178 "C:\Dev\worktrees\fixdatetimes\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt"
+ #line 178 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt"
this.Write(this.ToStringHelper.ToStringWithCulture(member.PropertyName));
#line default
#line hidden
- #line 178 "C:\Dev\worktrees\fixdatetimes\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt"
+ #line 178 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt"
this.Write(" = headersFor");
#line default
#line hidden
- #line 178 "C:\Dev\worktrees\fixdatetimes\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt"
+ #line 178 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt"
this.Write(this.ToStringHelper.ToStringWithCulture(member.PropertyName));
#line default
#line hidden
- #line 178 "C:\Dev\worktrees\fixdatetimes\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt"
+ #line 178 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt"
this.Write(";\r\n");
#line default
#line hidden
- #line 179 "C:\Dev\worktrees\fixdatetimes\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt"
+ #line 179 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt"
}
// Dictionary>
@@ -530,182 +530,182 @@ protected void UnmarshallHeaders()
#line default
#line hidden
- #line 184 "C:\Dev\worktrees\fixdatetimes\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt"
+ #line 184 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt"
this.Write("\t\t\t var headersFor");
#line default
#line hidden
- #line 185 "C:\Dev\worktrees\fixdatetimes\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt"
+ #line 185 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt"
this.Write(this.ToStringHelper.ToStringWithCulture(member.PropertyName));
#line default
#line hidden
- #line 185 "C:\Dev\worktrees\fixdatetimes\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt"
+ #line 185 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt"
this.Write(" = new Dictionary>();\r\n\t\t\tforeach (var name");
#line default
#line hidden
- #line 186 "C:\Dev\worktrees\fixdatetimes\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt"
+ #line 186 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt"
this.Write(this.ToStringHelper.ToStringWithCulture(member.PropertyName));
#line default
#line hidden
- #line 186 "C:\Dev\worktrees\fixdatetimes\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt"
+ #line 186 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt"
this.Write(" in context.ResponseData.GetHeaderNames())\r\n\t\t\t{\r\n\t\t\t\tvar keyToUse = name");
#line default
#line hidden
- #line 188 "C:\Dev\worktrees\fixdatetimes\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt"
+ #line 188 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt"
this.Write(this.ToStringHelper.ToStringWithCulture(member.PropertyName));
#line default
#line hidden
- #line 188 "C:\Dev\worktrees\fixdatetimes\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt"
+ #line 188 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt"
this.Write(";\r\n\t\t\t\tif(\"");
#line default
#line hidden
- #line 189 "C:\Dev\worktrees\fixdatetimes\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt"
+ #line 189 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt"
this.Write(this.ToStringHelper.ToStringWithCulture(member.MarshallLocationName));
#line default
#line hidden
- #line 189 "C:\Dev\worktrees\fixdatetimes\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt"
+ #line 189 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt"
this.Write("\".Length > 0 && keyToUse.StartsWith(\"");
#line default
#line hidden
- #line 189 "C:\Dev\worktrees\fixdatetimes\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt"
+ #line 189 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt"
this.Write(this.ToStringHelper.ToStringWithCulture(member.MarshallLocationName));
#line default
#line hidden
- #line 189 "C:\Dev\worktrees\fixdatetimes\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt"
+ #line 189 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt"
this.Write("\")) {\r\n\t\t\t\t\tkeyToUse = keyToUse.Substring(\"");
#line default
#line hidden
- #line 190 "C:\Dev\worktrees\fixdatetimes\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt"
+ #line 190 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt"
this.Write(this.ToStringHelper.ToStringWithCulture(member.MarshallLocationName));
#line default
#line hidden
- #line 190 "C:\Dev\worktrees\fixdatetimes\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt"
+ #line 190 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt"
this.Write("\".Length);\r\n\t\t\t\t}\r\n\r\n\t\t\t\tif (context.ResponseData.IsHeaderPresent($\"");
#line default
#line hidden
- #line 193 "C:\Dev\worktrees\fixdatetimes\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt"
+ #line 193 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt"
this.Write(this.ToStringHelper.ToStringWithCulture(member.MarshallLocationName));
#line default
#line hidden
- #line 193 "C:\Dev\worktrees\fixdatetimes\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt"
+ #line 193 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt"
this.Write("{keyToUse}\"))\r\n\t\t\t\t{\r\n\t\t\t\t\theadersFor");
#line default
#line hidden
- #line 195 "C:\Dev\worktrees\fixdatetimes\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt"
+ #line 195 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt"
this.Write(this.ToStringHelper.ToStringWithCulture(member.PropertyName));
#line default
#line hidden
- #line 195 "C:\Dev\worktrees\fixdatetimes\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt"
+ #line 195 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt"
this.Write(".Add(\r\n\t\t\t\t\t\tkeyToUse,\r\n\t\t\t\t\t\tcontext.ResponseData.GetHeaderValue($\"");
#line default
#line hidden
- #line 197 "C:\Dev\worktrees\fixdatetimes\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt"
+ #line 197 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt"
this.Write(this.ToStringHelper.ToStringWithCulture(member.MarshallLocationName));
#line default
#line hidden
- #line 197 "C:\Dev\worktrees\fixdatetimes\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt"
+ #line 197 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt"
this.Write("{keyToUse}\").Split(\',\').ToList()\r\n\t\t\t\t\t);\r\n\t\t\t\t}\r\n\t\t\t}\r\n\t\t\tif(headersFor");
#line default
#line hidden
- #line 201 "C:\Dev\worktrees\fixdatetimes\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt"
+ #line 201 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt"
this.Write(this.ToStringHelper.ToStringWithCulture(member.PropertyName));
#line default
#line hidden
- #line 201 "C:\Dev\worktrees\fixdatetimes\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt"
+ #line 201 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt"
this.Write(".Count > 0)\r\n\t\t\t\tresponse.");
#line default
#line hidden
- #line 202 "C:\Dev\worktrees\fixdatetimes\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt"
+ #line 202 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt"
this.Write(this.ToStringHelper.ToStringWithCulture(member.PropertyName));
#line default
#line hidden
- #line 202 "C:\Dev\worktrees\fixdatetimes\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt"
+ #line 202 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt"
this.Write(" = headersFor");
#line default
#line hidden
- #line 202 "C:\Dev\worktrees\fixdatetimes\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt"
+ #line 202 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt"
this.Write(this.ToStringHelper.ToStringWithCulture(member.PropertyName));
#line default
#line hidden
- #line 202 "C:\Dev\worktrees\fixdatetimes\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt"
+ #line 202 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt"
this.Write(";\r\n");
#line default
#line hidden
- #line 203 "C:\Dev\worktrees\fixdatetimes\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt"
+ #line 203 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt"
}
else
@@ -717,7 +717,7 @@ protected void UnmarshallHeaders()
#line default
#line hidden
- #line 210 "C:\Dev\worktrees\fixdatetimes\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt"
+ #line 210 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt"
continue;
}
@@ -726,28 +726,28 @@ protected void UnmarshallHeaders()
#line default
#line hidden
- #line 213 "C:\Dev\worktrees\fixdatetimes\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt"
+ #line 213 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt"
this.Write("\t\t\tif (context.ResponseData.IsHeaderPresent(\"");
#line default
#line hidden
- #line 214 "C:\Dev\worktrees\fixdatetimes\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt"
+ #line 214 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt"
this.Write(this.ToStringHelper.ToStringWithCulture(member.MarshallLocationName));
#line default
#line hidden
- #line 214 "C:\Dev\worktrees\fixdatetimes\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt"
+ #line 214 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt"
this.Write("\"))\r\n");
#line default
#line hidden
- #line 215 "C:\Dev\worktrees\fixdatetimes\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt"
+ #line 215 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt"
if (member.Shape.IsString)
{
@@ -758,7 +758,7 @@ protected void UnmarshallHeaders()
#line default
#line hidden
- #line 220 "C:\Dev\worktrees\fixdatetimes\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt"
+ #line 220 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt"
this.Write("\t\t\t{\r\n\t\t\t\tvar headerBytes = Convert.FromBase64String(context.ResponseData.GetHead" +
"erValue(\"");
@@ -766,35 +766,35 @@ protected void UnmarshallHeaders()
#line default
#line hidden
- #line 222 "C:\Dev\worktrees\fixdatetimes\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt"
+ #line 222 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt"
this.Write(this.ToStringHelper.ToStringWithCulture(member.MarshallLocationName));
#line default
#line hidden
- #line 222 "C:\Dev\worktrees\fixdatetimes\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt"
+ #line 222 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt"
this.Write("\"));\r\n\t\t\t\tresponse.");
#line default
#line hidden
- #line 223 "C:\Dev\worktrees\fixdatetimes\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt"
+ #line 223 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt"
this.Write(this.ToStringHelper.ToStringWithCulture(member.PropertyName));
#line default
#line hidden
- #line 223 "C:\Dev\worktrees\fixdatetimes\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt"
+ #line 223 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt"
this.Write(" = Encoding.UTF8.GetString(headerBytes, 0, headerBytes.Length);\r\n\t\t\t}\r\n");
#line default
#line hidden
- #line 225 "C:\Dev\worktrees\fixdatetimes\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt"
+ #line 225 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt"
}
else
@@ -804,42 +804,42 @@ protected void UnmarshallHeaders()
#line default
#line hidden
- #line 229 "C:\Dev\worktrees\fixdatetimes\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt"
+ #line 229 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt"
this.Write("\t\t\t\tresponse.");
#line default
#line hidden
- #line 230 "C:\Dev\worktrees\fixdatetimes\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt"
+ #line 230 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt"
this.Write(this.ToStringHelper.ToStringWithCulture(member.PropertyName));
#line default
#line hidden
- #line 230 "C:\Dev\worktrees\fixdatetimes\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt"
+ #line 230 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt"
this.Write(" = context.ResponseData.GetHeaderValue(\"");
#line default
#line hidden
- #line 230 "C:\Dev\worktrees\fixdatetimes\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt"
+ #line 230 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt"
this.Write(this.ToStringHelper.ToStringWithCulture(member.MarshallLocationName));
#line default
#line hidden
- #line 230 "C:\Dev\worktrees\fixdatetimes\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt"
+ #line 230 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt"
this.Write("\");\r\n");
#line default
#line hidden
- #line 231 "C:\Dev\worktrees\fixdatetimes\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt"
+ #line 231 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt"
}
}
@@ -850,28 +850,28 @@ protected void UnmarshallHeaders()
#line default
#line hidden
- #line 236 "C:\Dev\worktrees\fixdatetimes\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt"
+ #line 236 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt"
this.Write("\t\t\t//Map of headers with prefix \"");
#line default
#line hidden
- #line 237 "C:\Dev\worktrees\fixdatetimes\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt"
+ #line 237 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt"
this.Write(this.ToStringHelper.ToStringWithCulture(member.MarshallLocationName));
#line default
#line hidden
- #line 237 "C:\Dev\worktrees\fixdatetimes\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt"
+ #line 237 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt"
this.Write("\".\r\n\r\n");
#line default
#line hidden
- #line 239 "C:\Dev\worktrees\fixdatetimes\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt"
+ #line 239 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt"
// Dictionary
if (member.ModelShape.ValueShape.IsString)
@@ -881,182 +881,182 @@ protected void UnmarshallHeaders()
#line default
#line hidden
- #line 243 "C:\Dev\worktrees\fixdatetimes\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt"
+ #line 243 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt"
this.Write(" var headersFor");
#line default
#line hidden
- #line 244 "C:\Dev\worktrees\fixdatetimes\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt"
+ #line 244 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt"
this.Write(this.ToStringHelper.ToStringWithCulture(member.PropertyName));
#line default
#line hidden
- #line 244 "C:\Dev\worktrees\fixdatetimes\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt"
+ #line 244 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt"
this.Write(" = new Dictionary();\r\n\t\t\tforeach (var name");
#line default
#line hidden
- #line 245 "C:\Dev\worktrees\fixdatetimes\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt"
+ #line 245 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt"
this.Write(this.ToStringHelper.ToStringWithCulture(member.PropertyName));
#line default
#line hidden
- #line 245 "C:\Dev\worktrees\fixdatetimes\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt"
+ #line 245 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt"
this.Write(" in context.ResponseData.GetHeaderNames())\r\n\t\t\t{\r\n\t\t\t\tvar keyToUse = name");
#line default
#line hidden
- #line 247 "C:\Dev\worktrees\fixdatetimes\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt"
+ #line 247 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt"
this.Write(this.ToStringHelper.ToStringWithCulture(member.PropertyName));
#line default
#line hidden
- #line 247 "C:\Dev\worktrees\fixdatetimes\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt"
+ #line 247 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt"
this.Write(";\r\n\t\t\t\tif(\"");
#line default
#line hidden
- #line 248 "C:\Dev\worktrees\fixdatetimes\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt"
+ #line 248 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt"
this.Write(this.ToStringHelper.ToStringWithCulture(member.MarshallLocationName));
#line default
#line hidden
- #line 248 "C:\Dev\worktrees\fixdatetimes\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt"
+ #line 248 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt"
this.Write("\".Length > 0 && keyToUse.StartsWith(\"");
#line default
#line hidden
- #line 248 "C:\Dev\worktrees\fixdatetimes\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt"
+ #line 248 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt"
this.Write(this.ToStringHelper.ToStringWithCulture(member.MarshallLocationName));
#line default
#line hidden
- #line 248 "C:\Dev\worktrees\fixdatetimes\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt"
+ #line 248 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt"
this.Write("\")) {\r\n\t\t\t\t\tkeyToUse = keyToUse.Substring(\"");
#line default
#line hidden
- #line 249 "C:\Dev\worktrees\fixdatetimes\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt"
+ #line 249 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt"
this.Write(this.ToStringHelper.ToStringWithCulture(member.MarshallLocationName));
#line default
#line hidden
- #line 249 "C:\Dev\worktrees\fixdatetimes\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt"
+ #line 249 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt"
this.Write("\".Length);\r\n\t\t\t\t}\r\n\r\n\t\t\t\tif (context.ResponseData.IsHeaderPresent($\"");
#line default
#line hidden
- #line 252 "C:\Dev\worktrees\fixdatetimes\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt"
+ #line 252 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt"
this.Write(this.ToStringHelper.ToStringWithCulture(member.MarshallLocationName));
#line default
#line hidden
- #line 252 "C:\Dev\worktrees\fixdatetimes\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt"
+ #line 252 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt"
this.Write("{keyToUse}\"))\r\n\t\t\t\t{\r\n\t\t\t\t\theadersFor");
#line default
#line hidden
- #line 254 "C:\Dev\worktrees\fixdatetimes\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt"
+ #line 254 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt"
this.Write(this.ToStringHelper.ToStringWithCulture(member.PropertyName));
#line default
#line hidden
- #line 254 "C:\Dev\worktrees\fixdatetimes\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt"
+ #line 254 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt"
this.Write(".Add(\r\n\t\t\t\t\t\tkeyToUse,\r\n\t\t\t\t\t\tcontext.ResponseData.GetHeaderValue($\"");
#line default
#line hidden
- #line 256 "C:\Dev\worktrees\fixdatetimes\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt"
+ #line 256 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt"
this.Write(this.ToStringHelper.ToStringWithCulture(member.MarshallLocationName));
#line default
#line hidden
- #line 256 "C:\Dev\worktrees\fixdatetimes\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt"
+ #line 256 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt"
this.Write("{keyToUse}\")\r\n\t\t\t\t\t);\r\n\t\t\t\t}\r\n\t\t\t}\r\n\t\t\tif(headersFor");
#line default
#line hidden
- #line 260 "C:\Dev\worktrees\fixdatetimes\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt"
+ #line 260 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt"
this.Write(this.ToStringHelper.ToStringWithCulture(member.PropertyName));
#line default
#line hidden
- #line 260 "C:\Dev\worktrees\fixdatetimes\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt"
+ #line 260 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt"
this.Write(".Count > 0)\r\n\t\t\t\tresponse.");
#line default
#line hidden
- #line 261 "C:\Dev\worktrees\fixdatetimes\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt"
+ #line 261 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt"
this.Write(this.ToStringHelper.ToStringWithCulture(member.PropertyName));
#line default
#line hidden
- #line 261 "C:\Dev\worktrees\fixdatetimes\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt"
+ #line 261 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt"
this.Write(" = headersFor");
#line default
#line hidden
- #line 261 "C:\Dev\worktrees\fixdatetimes\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt"
+ #line 261 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt"
this.Write(this.ToStringHelper.ToStringWithCulture(member.PropertyName));
#line default
#line hidden
- #line 261 "C:\Dev\worktrees\fixdatetimes\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt"
+ #line 261 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt"
this.Write(";\r\n");
#line default
#line hidden
- #line 262 "C:\Dev\worktrees\fixdatetimes\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt"
+ #line 262 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt"
}
// Dictionary>
@@ -1067,182 +1067,182 @@ protected void UnmarshallHeaders()
#line default
#line hidden
- #line 267 "C:\Dev\worktrees\fixdatetimes\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt"
+ #line 267 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt"
this.Write("\t\t\t var headersFor");
#line default
#line hidden
- #line 268 "C:\Dev\worktrees\fixdatetimes\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt"
+ #line 268 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt"
this.Write(this.ToStringHelper.ToStringWithCulture(member.PropertyName));
#line default
#line hidden
- #line 268 "C:\Dev\worktrees\fixdatetimes\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt"
+ #line 268 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt"
this.Write(" = new Dictionary>();\r\n\t\t\tforeach (var name");
#line default
#line hidden
- #line 269 "C:\Dev\worktrees\fixdatetimes\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt"
+ #line 269 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt"
this.Write(this.ToStringHelper.ToStringWithCulture(member.PropertyName));
#line default
#line hidden
- #line 269 "C:\Dev\worktrees\fixdatetimes\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt"
+ #line 269 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt"
this.Write(" in context.ResponseData.GetHeaderNames())\r\n\t\t\t{\r\n\t\t\t\tvar keyToUse = name");
#line default
#line hidden
- #line 271 "C:\Dev\worktrees\fixdatetimes\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt"
+ #line 271 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt"
this.Write(this.ToStringHelper.ToStringWithCulture(member.PropertyName));
#line default
#line hidden
- #line 271 "C:\Dev\worktrees\fixdatetimes\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt"
+ #line 271 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt"
this.Write(";\r\n\t\t\t\tif(\"");
#line default
#line hidden
- #line 272 "C:\Dev\worktrees\fixdatetimes\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt"
+ #line 272 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt"
this.Write(this.ToStringHelper.ToStringWithCulture(member.MarshallLocationName));
#line default
#line hidden
- #line 272 "C:\Dev\worktrees\fixdatetimes\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt"
+ #line 272 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt"
this.Write("\".Length > 0 && keyToUse.StartsWith(\"");
#line default
#line hidden
- #line 272 "C:\Dev\worktrees\fixdatetimes\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt"
+ #line 272 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt"
this.Write(this.ToStringHelper.ToStringWithCulture(member.MarshallLocationName));
#line default
#line hidden
- #line 272 "C:\Dev\worktrees\fixdatetimes\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt"
+ #line 272 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt"
this.Write("\")) {\r\n\t\t\t\t\tkeyToUse = keyToUse.Substring(\"");
#line default
#line hidden
- #line 273 "C:\Dev\worktrees\fixdatetimes\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt"
+ #line 273 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt"
this.Write(this.ToStringHelper.ToStringWithCulture(member.MarshallLocationName));
#line default
#line hidden
- #line 273 "C:\Dev\worktrees\fixdatetimes\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt"
+ #line 273 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt"
this.Write("\".Length);\r\n\t\t\t\t}\r\n\r\n\t\t\t\tif (context.ResponseData.IsHeaderPresent($\"");
#line default
#line hidden
- #line 276 "C:\Dev\worktrees\fixdatetimes\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt"
+ #line 276 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt"
this.Write(this.ToStringHelper.ToStringWithCulture(member.MarshallLocationName));
#line default
#line hidden
- #line 276 "C:\Dev\worktrees\fixdatetimes\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt"
+ #line 276 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt"
this.Write("{keyToUse}\"))\r\n\t\t\t\t{\r\n\t\t\t\t\theadersFor");
#line default
#line hidden
- #line 278 "C:\Dev\worktrees\fixdatetimes\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt"
+ #line 278 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt"
this.Write(this.ToStringHelper.ToStringWithCulture(member.PropertyName));
#line default
#line hidden
- #line 278 "C:\Dev\worktrees\fixdatetimes\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt"
+ #line 278 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt"
this.Write(".Add(\r\n\t\t\t\t\t\tkeyToUse,\r\n\t\t\t\t\t\tcontext.ResponseData.GetHeaderValue($\"");
#line default
#line hidden
- #line 280 "C:\Dev\worktrees\fixdatetimes\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt"
+ #line 280 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt"
this.Write(this.ToStringHelper.ToStringWithCulture(member.MarshallLocationName));
#line default
#line hidden
- #line 280 "C:\Dev\worktrees\fixdatetimes\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt"
+ #line 280 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt"
this.Write("{keyToUse}\").Split(\',\').ToList()\r\n\t\t\t\t\t);\r\n\t\t\t\t}\r\n\t\t\t}\r\n\t\t\tif(headersFor");
#line default
#line hidden
- #line 284 "C:\Dev\worktrees\fixdatetimes\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt"
+ #line 284 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt"
this.Write(this.ToStringHelper.ToStringWithCulture(member.PropertyName));
#line default
#line hidden
- #line 284 "C:\Dev\worktrees\fixdatetimes\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt"
+ #line 284 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt"
this.Write(".Count > 0)\r\n\t\t\t\tresponse.");
#line default
#line hidden
- #line 285 "C:\Dev\worktrees\fixdatetimes\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt"
+ #line 285 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt"
this.Write(this.ToStringHelper.ToStringWithCulture(member.PropertyName));
#line default
#line hidden
- #line 285 "C:\Dev\worktrees\fixdatetimes\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt"
+ #line 285 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt"
this.Write(" = headersFor");
#line default
#line hidden
- #line 285 "C:\Dev\worktrees\fixdatetimes\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt"
+ #line 285 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt"
this.Write(this.ToStringHelper.ToStringWithCulture(member.PropertyName));
#line default
#line hidden
- #line 285 "C:\Dev\worktrees\fixdatetimes\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt"
+ #line 285 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt"
this.Write(";\r\n");
#line default
#line hidden
- #line 286 "C:\Dev\worktrees\fixdatetimes\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt"
+ #line 286 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt"
}
else
@@ -1254,7 +1254,7 @@ protected void UnmarshallHeaders()
#line default
#line hidden
- #line 294 "C:\Dev\worktrees\fixdatetimes\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt"
+ #line 294 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt"
}
else if (member.Shape.IsList)
@@ -1270,42 +1270,42 @@ protected void UnmarshallHeaders()
#line default
#line hidden
- #line 304 "C:\Dev\worktrees\fixdatetimes\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt"
+ #line 304 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt"
this.Write("\t\t\t\tresponse.");
#line default
#line hidden
- #line 305 "C:\Dev\worktrees\fixdatetimes\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt"
+ #line 305 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt"
this.Write(this.ToStringHelper.ToStringWithCulture(member.PropertyName));
#line default
#line hidden
- #line 305 "C:\Dev\worktrees\fixdatetimes\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt"
+ #line 305 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt"
this.Write(" = MultiValueHeaderParser.ToStringList(context.ResponseData.GetHeaderValue(\"");
#line default
#line hidden
- #line 305 "C:\Dev\worktrees\fixdatetimes\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt"
+ #line 305 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt"
this.Write(this.ToStringHelper.ToStringWithCulture(member.MarshallLocationName));
#line default
#line hidden
- #line 305 "C:\Dev\worktrees\fixdatetimes\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt"
+ #line 305 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt"
this.Write("\"));\r\n");
#line default
#line hidden
- #line 306 "C:\Dev\worktrees\fixdatetimes\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt"
+ #line 306 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt"
}
else if(member.Shape.ListShape.IsTimeStamp)
@@ -1318,56 +1318,56 @@ protected void UnmarshallHeaders()
#line default
#line hidden
- #line 313 "C:\Dev\worktrees\fixdatetimes\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt"
+ #line 313 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt"
this.Write("\t\t\t\tresponse.");
#line default
#line hidden
- #line 314 "C:\Dev\worktrees\fixdatetimes\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt"
+ #line 314 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt"
this.Write(this.ToStringHelper.ToStringWithCulture(member.PropertyName));
#line default
#line hidden
- #line 314 "C:\Dev\worktrees\fixdatetimes\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt"
+ #line 314 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt"
this.Write(" = MultiValueHeaderParser.ToDateTimeList(context.ResponseData.GetHeaderValue(\"");
#line default
#line hidden
- #line 314 "C:\Dev\worktrees\fixdatetimes\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt"
+ #line 314 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt"
this.Write(this.ToStringHelper.ToStringWithCulture(member.MarshallLocationName));
#line default
#line hidden
- #line 314 "C:\Dev\worktrees\fixdatetimes\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt"
+ #line 314 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt"
this.Write("\"), \"");
#line default
#line hidden
- #line 314 "C:\Dev\worktrees\fixdatetimes\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt"
+ #line 314 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt"
this.Write(this.ToStringHelper.ToStringWithCulture(timestampFormat));
#line default
#line hidden
- #line 314 "C:\Dev\worktrees\fixdatetimes\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt"
+ #line 314 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt"
this.Write("\");\r\n");
#line default
#line hidden
- #line 315 "C:\Dev\worktrees\fixdatetimes\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt"
+ #line 315 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt"
}
else
@@ -1383,56 +1383,56 @@ protected void UnmarshallHeaders()
#line default
#line hidden
- #line 325 "C:\Dev\worktrees\fixdatetimes\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt"
+ #line 325 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt"
this.Write("\t\t\t\tresponse.");
#line default
#line hidden
- #line 326 "C:\Dev\worktrees\fixdatetimes\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt"
+ #line 326 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt"
this.Write(this.ToStringHelper.ToStringWithCulture(member.PropertyName));
#line default
#line hidden
- #line 326 "C:\Dev\worktrees\fixdatetimes\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt"
+ #line 326 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt"
this.Write(" = MultiValueHeaderParser.ToValueTypeList<");
#line default
#line hidden
- #line 326 "C:\Dev\worktrees\fixdatetimes\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt"
+ #line 326 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt"
this.Write(this.ToStringHelper.ToStringWithCulture(member.Shape.ListShape.GetPrimitiveType().ToLower()));
#line default
#line hidden
- #line 326 "C:\Dev\worktrees\fixdatetimes\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt"
+ #line 326 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt"
this.Write(">(context.ResponseData.GetHeaderValue(\"");
#line default
#line hidden
- #line 326 "C:\Dev\worktrees\fixdatetimes\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt"
+ #line 326 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt"
this.Write(this.ToStringHelper.ToStringWithCulture(member.MarshallLocationName));
#line default
#line hidden
- #line 326 "C:\Dev\worktrees\fixdatetimes\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt"
+ #line 326 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt"
this.Write("\"));\r\n");
#line default
#line hidden
- #line 327 "C:\Dev\worktrees\fixdatetimes\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt"
+ #line 327 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt"
}
else
@@ -1450,35 +1450,35 @@ protected void UnmarshallHeaders()
#line default
#line hidden
- #line 339 "C:\Dev\worktrees\fixdatetimes\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt"
+ #line 339 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt"
this.Write("\t\t\t\tresponse.");
#line default
#line hidden
- #line 340 "C:\Dev\worktrees\fixdatetimes\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt"
+ #line 340 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt"
this.Write(this.ToStringHelper.ToStringWithCulture(member.PropertyName));
#line default
#line hidden
- #line 340 "C:\Dev\worktrees\fixdatetimes\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt"
+ #line 340 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt"
this.Write(" = DateTime.Parse(context.ResponseData.GetHeaderValue(\"");
#line default
#line hidden
- #line 340 "C:\Dev\worktrees\fixdatetimes\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt"
+ #line 340 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt"
this.Write(this.ToStringHelper.ToStringWithCulture(member.MarshallLocationName));
#line default
#line hidden
- #line 340 "C:\Dev\worktrees\fixdatetimes\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt"
+ #line 340 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt"
this.Write("\"), CultureInfo.InvariantCulture, DateTimeStyles.AssumeUniversal | DateTimeStyles" +
".AdjustToUniversal);\r\n");
@@ -1486,7 +1486,7 @@ protected void UnmarshallHeaders()
#line default
#line hidden
- #line 341 "C:\Dev\worktrees\fixdatetimes\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt"
+ #line 341 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt"
}
else if(member.TimestampFormat == TimestampFormat.UnixTimestamp)
@@ -1496,21 +1496,21 @@ protected void UnmarshallHeaders()
#line default
#line hidden
- #line 345 "C:\Dev\worktrees\fixdatetimes\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt"
+ #line 345 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt"
this.Write("\t\t\t\tresponse.");
#line default
#line hidden
- #line 346 "C:\Dev\worktrees\fixdatetimes\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt"
+ #line 346 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt"
this.Write(this.ToStringHelper.ToStringWithCulture(member.PropertyName));
#line default
#line hidden
- #line 346 "C:\Dev\worktrees\fixdatetimes\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt"
+ #line 346 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt"
this.Write(" = Amazon.Util.AWSSDKUtils.ConvertFromUnixEpochSeconds(int.Parse(context.Response" +
"Data.GetHeaderValue(\"");
@@ -1518,21 +1518,21 @@ protected void UnmarshallHeaders()
#line default
#line hidden
- #line 346 "C:\Dev\worktrees\fixdatetimes\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt"
+ #line 346 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt"
this.Write(this.ToStringHelper.ToStringWithCulture(member.MarshallLocationName));
#line default
#line hidden
- #line 346 "C:\Dev\worktrees\fixdatetimes\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt"
+ #line 346 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt"
this.Write("\"), CultureInfo.InvariantCulture));\r\n");
#line default
#line hidden
- #line 347 "C:\Dev\worktrees\fixdatetimes\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt"
+ #line 347 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt"
}
else
@@ -1547,77 +1547,77 @@ protected void UnmarshallHeaders()
#line default
#line hidden
- #line 356 "C:\Dev\worktrees\fixdatetimes\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt"
+ #line 356 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt"
this.Write("\t\t\t\tresponse.");
#line default
#line hidden
- #line 357 "C:\Dev\worktrees\fixdatetimes\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt"
+ #line 357 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt"
this.Write(this.ToStringHelper.ToStringWithCulture(member.PropertyName));
#line default
#line hidden
- #line 357 "C:\Dev\worktrees\fixdatetimes\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt"
+ #line 357 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt"
this.Write(" = ");
#line default
#line hidden
- #line 357 "C:\Dev\worktrees\fixdatetimes\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt"
+ #line 357 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt"
this.Write(this.ToStringHelper.ToStringWithCulture(member.Shape.GetPrimitiveType().ToLower()));
#line default
#line hidden
- #line 357 "C:\Dev\worktrees\fixdatetimes\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt"
+ #line 357 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt"
this.Write(".Parse(context.ResponseData.GetHeaderValue(\"");
#line default
#line hidden
- #line 357 "C:\Dev\worktrees\fixdatetimes\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt"
+ #line 357 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt"
this.Write(this.ToStringHelper.ToStringWithCulture(member.MarshallLocationName));
#line default
#line hidden
- #line 357 "C:\Dev\worktrees\fixdatetimes\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt"
+ #line 357 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt"
this.Write("\")");
#line default
#line hidden
- #line 357 "C:\Dev\worktrees\fixdatetimes\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt"
+ #line 357 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt"
this.Write(this.ToStringHelper.ToStringWithCulture((member.Shape.IsBoolean)?"":", CultureInfo.InvariantCulture"));
#line default
#line hidden
- #line 357 "C:\Dev\worktrees\fixdatetimes\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt"
+ #line 357 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt"
this.Write(this.ToStringHelper.ToStringWithCulture((!member.Shape.IsTimeStamp)?"":", DateTimeStyles.AssumeUniversal | DateTimeStyles.AdjustToUniversal"));
#line default
#line hidden
- #line 357 "C:\Dev\worktrees\fixdatetimes\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt"
+ #line 357 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt"
this.Write(");\r\n");
#line default
#line hidden
- #line 358 "C:\Dev\worktrees\fixdatetimes\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt"
+ #line 358 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt"
}
else
@@ -1638,28 +1638,28 @@ protected void ProcessStatusCode()
#line default
#line hidden
- #line 373 "C:\Dev\worktrees\fixdatetimes\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt"
+ #line 373 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt"
this.Write("\t\t\tresponse.");
#line default
#line hidden
- #line 374 "C:\Dev\worktrees\fixdatetimes\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt"
+ #line 374 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt"
this.Write(this.ToStringHelper.ToStringWithCulture(this.Operation.ResponseStatusCodeMember.PropertyName));
#line default
#line hidden
- #line 374 "C:\Dev\worktrees\fixdatetimes\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt"
+ #line 374 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt"
this.Write(" = (int)context.ResponseData.StatusCode;\r\n");
#line default
#line hidden
- #line 375 "C:\Dev\worktrees\fixdatetimes\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt"
+ #line 375 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt"
}
}
@@ -1668,7 +1668,7 @@ protected void ProcessStatusCode()
#line default
#line hidden
- #line 379 "C:\Dev\worktrees\fixdatetimes\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt"
+ #line 379 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt"
/* The rules for determining the marshallName for xml-based services is different than json services. Xml based
services are defined as any service which marshalls/unmarshalls an xml document. This includes AWSQueryResponse,
@@ -1680,7 +1680,8 @@ 3. Use the name of the member's target
protected string DetermineXmlMarshallName(Member member, bool withPrefix = true)
{
var locationName = member.data[ServiceModel.LocationNameKey];
- if (locationName == null)
+ // operation can be null if we're determining the xml marshall name for a structure
+ if (locationName == null && this.Operation != null)
{
var payload = this.Operation.ResponsePayloadMember;
var shouldMarshallPayload = (payload != null && payload.IsStructure);
@@ -1695,16 +1696,657 @@ protected string DetermineXmlMarshallName(Member member, bool withPrefix = true)
return colonIndex != -1 ? locationNameString.Substring(colonIndex + 1) : locationNameString;
}
// the locationName and modeled name must only be different for those members which are marshalled on the body.
- if (!string.Equals(locationName.ToString(), member.ModeledName, StringComparison.Ordinal) || member.MarshallLocation != MarshallLocation.Body)
- {
- return locationName.ToString();
- }
+ // S3 / S3 Control don't seem to follow this rule where the location name is used only if it doesn't match the member's name.
+ if (locationName != null)
+ {
+ if (this.Config.ServiceId == "S3" || this.Config.ServiceId == "S3 Control" || !string.Equals(locationName.ToString(), member.ModeledName, StringComparison.Ordinal) || member.MarshallLocation != MarshallLocation.Body)
+ {
+ return locationName.ToString();
+ }
+ }
+
+ // some structure members do not have a locationName.
+ // so if we get to this point, it is guaranteed that the marshall name we are determining is for a
+ // member of a structure. For a member of a structure the marshall name is straightforward.
+ if (locationName == null)
+ {
+ return member.MarshallName;
+ }
var memberTarget = member.Shape.data[ServiceModel.LocationNameKey];
return memberTarget != null ? memberTarget.ToString() : member.Shape.Name;
}
+ #line default
+ #line hidden
+
+ #line 428 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt"
+
+/// Only to be used by rest-xml response unmarshallers
+ protected void ProcessResponseBodyOrStructureMembers(Member member, bool isStructure)
+ {
+ string unmarshalledVariable = isStructure ? "unmarshalledObject" : "response";
+ if (member.Shape.IsList)
+ {
+ var listMarshallName = member.Shape.ListMarshallName ?? "member";
+
+ if (member.IsFlattened || member.Shape.IsFlattened)
+ {
+
+
+ #line default
+ #line hidden
+
+ #line 439 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt"
+this.Write("\t\t\t\t\tif (context.TestExpression(\"");
+
+
+ #line default
+ #line hidden
+
+ #line 440 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt"
+this.Write(this.ToStringHelper.ToStringWithCulture(DetermineXmlMarshallName(member)));
+
+
+ #line default
+ #line hidden
+
+ #line 440 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt"
+this.Write("\", targetDepth))\r\n\t\t\t\t\t{\r\n if (");
+
+
+ #line default
+ #line hidden
+
+ #line 442 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt"
+this.Write(this.ToStringHelper.ToStringWithCulture(unmarshalledVariable));
+
+
+ #line default
+ #line hidden
+
+ #line 442 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt"
+this.Write(".");
+
+
+ #line default
+ #line hidden
+
+ #line 442 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt"
+this.Write(this.ToStringHelper.ToStringWithCulture(member.PropertyName));
+
+
+ #line default
+ #line hidden
+
+ #line 442 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt"
+this.Write(" == null)\r\n {\r\n ");
+
+
+ #line default
+ #line hidden
+
+ #line 444 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt"
+this.Write(this.ToStringHelper.ToStringWithCulture(unmarshalledVariable));
+
+
+ #line default
+ #line hidden
+
+ #line 444 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt"
+this.Write(".");
+
+
+ #line default
+ #line hidden
+
+ #line 444 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt"
+this.Write(this.ToStringHelper.ToStringWithCulture(member.PropertyName));
+
+
+ #line default
+ #line hidden
+
+ #line 444 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt"
+this.Write(" = new ");
+
+
+ #line default
+ #line hidden
+
+ #line 444 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt"
+this.Write(this.ToStringHelper.ToStringWithCulture(member.DetermineType()));
+
+
+ #line default
+ #line hidden
+
+ #line 444 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt"
+this.Write("();\r\n }\r\n\t\t\t\t\t\tvar unmarshaller = ");
+
+
+ #line default
+ #line hidden
+
+ #line 446 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt"
+this.Write(this.ToStringHelper.ToStringWithCulture(member.DetermineTypeUnmarshallerInstantiate()));
+
+
+ #line default
+ #line hidden
+
+ #line 446 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt"
+this.Write(";\r\n\t\t\t\t\t\t");
+
+
+ #line default
+ #line hidden
+
+ #line 447 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt"
+this.Write(this.ToStringHelper.ToStringWithCulture(unmarshalledVariable));
+
+
+ #line default
+ #line hidden
+
+ #line 447 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt"
+this.Write(".");
+
+
+ #line default
+ #line hidden
+
+ #line 447 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt"
+this.Write(this.ToStringHelper.ToStringWithCulture(member.PropertyName));
+
+
+ #line default
+ #line hidden
+
+ #line 447 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt"
+this.Write(".Add(unmarshaller.Unmarshall(context));\r\n\t\t\t\t\t\tcontinue;\r\n\t\t\t\t\t}\r\n");
+
+
+ #line default
+ #line hidden
+
+ #line 450 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt"
+
+ }
+ else
+ {
+
+
+ #line default
+ #line hidden
+
+ #line 454 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt"
+this.Write("\t\t\t\t if (context.TestExpression(\"");
+
+
+ #line default
+ #line hidden
+
+ #line 455 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt"
+this.Write(this.ToStringHelper.ToStringWithCulture(DetermineXmlMarshallName(member)));
+
+
+ #line default
+ #line hidden
+
+ #line 455 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt"
+this.Write("/");
+
+
+ #line default
+ #line hidden
+
+ #line 455 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt"
+this.Write(this.ToStringHelper.ToStringWithCulture(listMarshallName));
+
+
+ #line default
+ #line hidden
+
+ #line 455 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt"
+this.Write("\", targetDepth))\r\n\t\t\t\t {\r\n if (");
+
+
+ #line default
+ #line hidden
+
+ #line 457 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt"
+this.Write(this.ToStringHelper.ToStringWithCulture(unmarshalledVariable));
+
+
+ #line default
+ #line hidden
+
+ #line 457 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt"
+this.Write(".");
+
+
+ #line default
+ #line hidden
+
+ #line 457 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt"
+this.Write(this.ToStringHelper.ToStringWithCulture(member.PropertyName));
+
+
+ #line default
+ #line hidden
+
+ #line 457 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt"
+this.Write(" == null)\r\n {\r\n ");
+
+
+ #line default
+ #line hidden
+
+ #line 459 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt"
+this.Write(this.ToStringHelper.ToStringWithCulture(unmarshalledVariable));
+
+
+ #line default
+ #line hidden
+
+ #line 459 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt"
+this.Write(".");
+
+
+ #line default
+ #line hidden
+
+ #line 459 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt"
+this.Write(this.ToStringHelper.ToStringWithCulture(member.PropertyName));
+
+
+ #line default
+ #line hidden
+
+ #line 459 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt"
+this.Write(" = new ");
+
+
+ #line default
+ #line hidden
+
+ #line 459 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt"
+this.Write(this.ToStringHelper.ToStringWithCulture(member.DetermineType()));
+
+
+ #line default
+ #line hidden
+
+ #line 459 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt"
+this.Write("();\r\n }\r\n\t\t\t\t\t var unmarshaller = ");
+
+
+ #line default
+ #line hidden
+
+ #line 461 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt"
+this.Write(this.ToStringHelper.ToStringWithCulture(member.DetermineTypeUnmarshallerInstantiate()));
+
+
+ #line default
+ #line hidden
+
+ #line 461 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt"
+this.Write(";\r\n\t\t\t\t\t ");
+
+
+ #line default
+ #line hidden
+
+ #line 462 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt"
+this.Write(this.ToStringHelper.ToStringWithCulture(unmarshalledVariable));
+
+
+ #line default
+ #line hidden
+
+ #line 462 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt"
+this.Write(".");
+
+
+ #line default
+ #line hidden
+
+ #line 462 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt"
+this.Write(this.ToStringHelper.ToStringWithCulture(member.PropertyName));
+
+
+ #line default
+ #line hidden
+
+ #line 462 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt"
+this.Write(".Add(unmarshaller.Unmarshall(context));\r\n\t\t\t\t\t continue;\r\n\t\t\t\t }\r\n");
+
+
+ #line default
+ #line hidden
+
+ #line 465 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt"
+
+ }
+ }
+ else if(member.Shape.IsMap)
+ {
+ if(member.IsFlattened)
+ {
+
+
+ #line default
+ #line hidden
+
+ #line 472 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt"
+this.Write("\t\t\t\t\tif (context.TestExpression(\"");
+
+
+ #line default
+ #line hidden
+
+ #line 473 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt"
+this.Write(this.ToStringHelper.ToStringWithCulture(DetermineXmlMarshallName(member)));
+
+
+ #line default
+ #line hidden
+
+ #line 473 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt"
+this.Write("\", targetDepth))\r\n\t\t\t\t\t{\r\n if (response.");
+
+
+ #line default
+ #line hidden
+
+ #line 475 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt"
+this.Write(this.ToStringHelper.ToStringWithCulture(member.PropertyName));
+
+
+ #line default
+ #line hidden
+
+ #line 475 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt"
+this.Write(" == null)\r\n {\r\n response.");
+
+
+ #line default
+ #line hidden
+
+ #line 477 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt"
+this.Write(this.ToStringHelper.ToStringWithCulture(member.PropertyName));
+
+
+ #line default
+ #line hidden
+
+ #line 477 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt"
+this.Write(" = new ");
+
+
+ #line default
+ #line hidden
+
+ #line 477 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt"
+this.Write(this.ToStringHelper.ToStringWithCulture(member.DetermineType()));
+
+
+ #line default
+ #line hidden
+
+ #line 477 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt"
+this.Write("();\r\n }\r\n\t\t\t\t\t\tvar unmarshaller = ");
+
+
+ #line default
+ #line hidden
+
+ #line 479 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt"
+this.Write(this.ToStringHelper.ToStringWithCulture(member.DetermineTypeUnmarshallerInstantiate()));
+
+
+ #line default
+ #line hidden
+
+ #line 479 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt"
+this.Write(";\r\n\t\t\t\t\t\t");
+
+
+ #line default
+ #line hidden
+
+ #line 480 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt"
+this.Write(this.ToStringHelper.ToStringWithCulture(unmarshalledVariable));
+
+
+ #line default
+ #line hidden
+
+ #line 480 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt"
+this.Write(".");
+
+
+ #line default
+ #line hidden
+
+ #line 480 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt"
+this.Write(this.ToStringHelper.ToStringWithCulture(member.PropertyName));
+
+
+ #line default
+ #line hidden
+
+ #line 480 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt"
+this.Write(".Add(unmarshaller.Unmarshall(context));\r\n\t\t\t\t\t\tcontinue;\r\n\t\t\t\t\t}\r\n");
+
+
+ #line default
+ #line hidden
+
+ #line 483 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt"
+
+ }
+ else
+ {
+
+
+ #line default
+ #line hidden
+
+ #line 487 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt"
+this.Write("\t\t\t\t\tif (context.TestExpression(\"");
+
+
+ #line default
+ #line hidden
+
+ #line 488 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt"
+this.Write(this.ToStringHelper.ToStringWithCulture(DetermineXmlMarshallName(member)));
+
+
+ #line default
+ #line hidden
+
+ #line 488 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt"
+this.Write("\", targetDepth))\r\n\t\t\t\t\t{\r\n\t\t\t\t\t\tvar unmarshaller = ");
+
+
+ #line default
+ #line hidden
+
+ #line 490 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt"
+this.Write(this.ToStringHelper.ToStringWithCulture(member.DetermineTypeUnmarshallerInstantiate()));
+
+
+ #line default
+ #line hidden
+
+ #line 490 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt"
+this.Write(";\r\n\t\t\t\t\t\t");
+
+
+ #line default
+ #line hidden
+
+ #line 491 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt"
+this.Write(this.ToStringHelper.ToStringWithCulture(unmarshalledVariable));
+
+
+ #line default
+ #line hidden
+
+ #line 491 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt"
+this.Write(".");
+
+
+ #line default
+ #line hidden
+
+ #line 491 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt"
+this.Write(this.ToStringHelper.ToStringWithCulture(member.PropertyName));
+
+
+ #line default
+ #line hidden
+
+ #line 491 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt"
+this.Write(" = unmarshaller.Unmarshall(context);\r\n\t\t\t\t\t\tcontinue;\r\n\t\t\t\t\t}\r\n");
+
+
+ #line default
+ #line hidden
+
+ #line 494 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt"
+
+ }
+ }
+ else
+ {
+ if (!member.IsXmlAttribute)
+ {
+
+
+ #line default
+ #line hidden
+
+ #line 501 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt"
+this.Write("\t\t\t\t\tif (context.TestExpression(\"");
+
+
+ #line default
+ #line hidden
+
+ #line 502 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt"
+this.Write(this.ToStringHelper.ToStringWithCulture(DetermineXmlMarshallName(member)));
+
+
+ #line default
+ #line hidden
+
+ #line 502 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt"
+this.Write("\", targetDepth))\r\n");
+
+
+ #line default
+ #line hidden
+
+ #line 503 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt"
+
+ }
+ else
+ {
+
+
+ #line default
+ #line hidden
+
+ #line 507 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt"
+this.Write(" if (context.TestExpression(\"@");
+
+
+ #line default
+ #line hidden
+
+ #line 508 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt"
+this.Write(this.ToStringHelper.ToStringWithCulture(DetermineXmlMarshallName(member, false)));
+
+
+ #line default
+ #line hidden
+
+ #line 508 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt"
+this.Write("\", targetDepth - 1))\r\n\r\n");
+
+
+ #line default
+ #line hidden
+
+ #line 510 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt"
+
+ }
+
+
+ #line default
+ #line hidden
+
+ #line 512 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt"
+this.Write("\t\t\t\t\t{\r\n\t\t\t\t\t\tvar unmarshaller = ");
+
+
+ #line default
+ #line hidden
+
+ #line 514 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt"
+this.Write(this.ToStringHelper.ToStringWithCulture(member.DetermineTypeUnmarshallerInstantiate()));
+
+
+ #line default
+ #line hidden
+
+ #line 514 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt"
+this.Write(";\r\n\t\t\t\t\t\t");
+
+
+ #line default
+ #line hidden
+
+ #line 515 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt"
+this.Write(this.ToStringHelper.ToStringWithCulture(unmarshalledVariable));
+
+
+ #line default
+ #line hidden
+
+ #line 515 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt"
+this.Write(".");
+
+
+ #line default
+ #line hidden
+
+ #line 515 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt"
+this.Write(this.ToStringHelper.ToStringWithCulture(member.PropertyName));
+
+
+ #line default
+ #line hidden
+
+ #line 515 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt"
+this.Write(" = unmarshaller.Unmarshall(context);\r\n\t\t\t\t\t\tcontinue;\r\n\t\t\t\t\t}\r\n");
+
+
+ #line default
+ #line hidden
+
+ #line 518 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt"
+
+ }
+ }
+
+
#line default
#line hidden
}
diff --git a/generator/ServiceClientGeneratorLib/Generators/Marshallers/BaseResponseUnmarshaller.tt b/generator/ServiceClientGeneratorLib/Generators/Marshallers/BaseResponseUnmarshaller.tt
index ee71762c112d..576ea4f70ac6 100644
--- a/generator/ServiceClientGeneratorLib/Generators/Marshallers/BaseResponseUnmarshaller.tt
+++ b/generator/ServiceClientGeneratorLib/Generators/Marshallers/BaseResponseUnmarshaller.tt
@@ -387,7 +387,8 @@ using Amazon.Runtime.Internal.Util;
protected string DetermineXmlMarshallName(Member member, bool withPrefix = true)
{
var locationName = member.data[ServiceModel.LocationNameKey];
- if (locationName == null)
+ // operation can be null if we're determining the xml marshall name for a structure
+ if (locationName == null && this.Operation != null)
{
var payload = this.Operation.ResponsePayloadMember;
var shouldMarshallPayload = (payload != null && payload.IsStructure);
@@ -402,12 +403,119 @@ using Amazon.Runtime.Internal.Util;
return colonIndex != -1 ? locationNameString.Substring(colonIndex + 1) : locationNameString;
}
// the locationName and modeled name must only be different for those members which are marshalled on the body.
- if (!string.Equals(locationName.ToString(), member.ModeledName, StringComparison.Ordinal) || member.MarshallLocation != MarshallLocation.Body)
- {
- return locationName.ToString();
- }
+ // S3 / S3 Control don't seem to follow this rule where the location name is used only if it doesn't match the member's name.
+ if (locationName != null)
+ {
+ if (this.Config.ServiceId == "S3" || this.Config.ServiceId == "S3 Control" || !string.Equals(locationName.ToString(), member.ModeledName, StringComparison.Ordinal) || member.MarshallLocation != MarshallLocation.Body)
+ {
+ return locationName.ToString();
+ }
+ }
+
+ // some structure members do not have a locationName.
+ // so if we get to this point, it is guaranteed that the marshall name we are determining is for a
+ // member of a structure. For a member of a structure the marshall name is straightforward.
+ if (locationName == null)
+ {
+ return member.MarshallName;
+ }
var memberTarget = member.Shape.data[ServiceModel.LocationNameKey];
return memberTarget != null ? memberTarget.ToString() : member.Shape.Name;
}
#>
+
+<#+
+/// Only to be used by rest-xml response unmarshallers
+ protected void ProcessResponseBodyOrStructureMembers(Member member, bool isStructure)
+ {
+ string unmarshalledVariable = isStructure ? "unmarshalledObject" : "response";
+ if (member.Shape.IsList)
+ {
+ var listMarshallName = member.Shape.ListMarshallName ?? "member";
+
+ if (member.IsFlattened || member.Shape.IsFlattened)
+ {
+#>
+ if (context.TestExpression("<#=DetermineXmlMarshallName(member)#>", targetDepth))
+ {
+ if (<#=unmarshalledVariable#>.<#=member.PropertyName#> == null)
+ {
+ <#=unmarshalledVariable#>.<#=member.PropertyName#> = new <#=member.DetermineType()#>();
+ }
+ var unmarshaller = <#= member.DetermineTypeUnmarshallerInstantiate() #>;
+ <#=unmarshalledVariable#>.<#=member.PropertyName#>.Add(unmarshaller.Unmarshall(context));
+ continue;
+ }
+<#+
+ }
+ else
+ {
+#>
+ if (context.TestExpression("<#=DetermineXmlMarshallName(member)#>/<#=listMarshallName#>", targetDepth))
+ {
+ if (<#=unmarshalledVariable#>.<#=member.PropertyName#> == null)
+ {
+ <#=unmarshalledVariable#>.<#=member.PropertyName#> = new <#=member.DetermineType()#>();
+ }
+ var unmarshaller = <#= member.DetermineTypeUnmarshallerInstantiate() #>;
+ <#=unmarshalledVariable#>.<#=member.PropertyName#>.Add(unmarshaller.Unmarshall(context));
+ continue;
+ }
+<#+
+ }
+ }
+ else if(member.Shape.IsMap)
+ {
+ if(member.IsFlattened)
+ {
+#>
+ if (context.TestExpression("<#=DetermineXmlMarshallName(member)#>", targetDepth))
+ {
+ if (response.<#=member.PropertyName#> == null)
+ {
+ response.<#=member.PropertyName#> = new <#=member.DetermineType()#>();
+ }
+ var unmarshaller = <#= member.DetermineTypeUnmarshallerInstantiate() #>;
+ <#=unmarshalledVariable#>.<#=member.PropertyName#>.Add(unmarshaller.Unmarshall(context));
+ continue;
+ }
+<#+
+ }
+ else
+ {
+#>
+ if (context.TestExpression("<#=DetermineXmlMarshallName(member)#>", targetDepth))
+ {
+ var unmarshaller = <#= member.DetermineTypeUnmarshallerInstantiate() #>;
+ <#=unmarshalledVariable#>.<#=member.PropertyName#> = unmarshaller.Unmarshall(context);
+ continue;
+ }
+<#+
+ }
+ }
+ else
+ {
+ if (!member.IsXmlAttribute)
+ {
+#>
+ if (context.TestExpression("<#=DetermineXmlMarshallName(member)#>", targetDepth))
+<#+
+ }
+ else
+ {
+#>
+ if (context.TestExpression("@<#=DetermineXmlMarshallName(member, false)#>", targetDepth - 1))
+
+<#+
+ }
+#>
+ {
+ var unmarshaller = <#= member.DetermineTypeUnmarshallerInstantiate() #>;
+ <#=unmarshalledVariable#>.<#=member.PropertyName#> = unmarshaller.Unmarshall(context);
+ continue;
+ }
+<#+
+ }
+ }
+#>
\ No newline at end of file
diff --git a/generator/ServiceClientGeneratorLib/Generators/Marshallers/RestXmlRequestMarshaller.cs b/generator/ServiceClientGeneratorLib/Generators/Marshallers/RestXmlRequestMarshaller.cs
index c19ad4eda9c4..204b38e05929 100644
--- a/generator/ServiceClientGeneratorLib/Generators/Marshallers/RestXmlRequestMarshaller.cs
+++ b/generator/ServiceClientGeneratorLib/Generators/Marshallers/RestXmlRequestMarshaller.cs
@@ -1875,7 +1875,7 @@ void ProcessStructure(int level, string variableName, Member member)
// Use shape's ListMarshallName if the structure is a list.
var marshallName = member.Shape.IsList ? member.Shape.ListMarshallName ?? "member" : member.MarshallName;
- if(member.IsFlattened)
+ if(member.Shape.IsFlattened || member.IsFlattened)
marshallName = member.LocationName ?? member.ModeledName;
@@ -2121,7 +2121,7 @@ void ProcessList(int level, string variableName, Member member)
#line 427 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt"
- if (!member.IsFlattened)
+ if (!member.IsFlattened && !member.Shape.IsFlattened)
{
if (string.IsNullOrEmpty(member.XmlNamespace))
{
@@ -2743,7 +2743,7 @@ void ProcessList(int level, string variableName, Member member)
#line 530 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt"
- if (!member.IsFlattened)
+ if (!member.IsFlattened && !member.Shape.IsFlattened)
{
diff --git a/generator/ServiceClientGeneratorLib/Generators/Marshallers/RestXmlRequestMarshaller.tt b/generator/ServiceClientGeneratorLib/Generators/Marshallers/RestXmlRequestMarshaller.tt
index 3f253f85bf48..e517734993b2 100644
--- a/generator/ServiceClientGeneratorLib/Generators/Marshallers/RestXmlRequestMarshaller.tt
+++ b/generator/ServiceClientGeneratorLib/Generators/Marshallers/RestXmlRequestMarshaller.tt
@@ -401,7 +401,7 @@ WriteXmlAttributeString(level + 1, member, variableName, isPayload: true, operat
// Use shape's ListMarshallName if the structure is a list.
var marshallName = member.Shape.IsList ? member.Shape.ListMarshallName ?? "member" : member.MarshallName;
- if(member.IsFlattened)
+ if(member.Shape.IsFlattened || member.IsFlattened)
marshallName = member.LocationName ?? member.ModeledName;
#>
<#=new string(' ', level * 4)#> if (<#=variableName#> != null)
@@ -425,7 +425,7 @@ WriteXmlAttributeString(level + 1, member, variableName, isPayload: true, operat
<#=new string(' ', level * 4)#> if (<#=listVariable#> != null && (<#=listVariable#>.Count > 0 || !AWSConfigs.InitializeCollections))
<#=new string(' ', level * 4)#> {
<#+
- if (!member.IsFlattened)
+ if (!member.IsFlattened && !member.Shape.IsFlattened)
{
if (string.IsNullOrEmpty(member.XmlNamespace))
{
@@ -528,7 +528,7 @@ WriteXmlAttributeString(level + 1, member, variableName, isPayload: true, operat
#>
<#=new string(' ', level * 4)#> }
<#+
- if (!member.IsFlattened)
+ if (!member.IsFlattened && !member.Shape.IsFlattened)
{
#>
<#=new string(' ', level * 4)#> xmlWriter.WriteEndElement();
diff --git a/generator/ServiceClientGeneratorLib/Generators/Marshallers/RestXmlResponseUnmarshaller.cs b/generator/ServiceClientGeneratorLib/Generators/Marshallers/RestXmlResponseUnmarshaller.cs
index e12b248adc62..6c62758922f6 100644
--- a/generator/ServiceClientGeneratorLib/Generators/Marshallers/RestXmlResponseUnmarshaller.cs
+++ b/generator/ServiceClientGeneratorLib/Generators/Marshallers/RestXmlResponseUnmarshaller.cs
@@ -288,308 +288,12 @@ public override AmazonWebServiceResponse Unmarshall(XmlUnmarshallerContext conte
foreach (var member in this.Operation.ResponseBodyMembers)
{
- if (member.Shape.IsList)
- {
- var listMarshallName = member.Shape.ListMarshallName ?? "member";
-
- if (member.IsFlattened || member.Shape.IsFlattened)
- {
-
-
- #line default
- #line hidden
- this.Write("\t\t\t\t\tif (context.TestExpression(\"");
-
- #line 145 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlResponseUnmarshaller.tt"
- this.Write(this.ToStringHelper.ToStringWithCulture(DetermineXmlMarshallName(member)));
-
- #line default
- #line hidden
- this.Write("\", targetDepth))\r\n\t\t\t\t\t{\r\n if (response.");
-
- #line 147 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlResponseUnmarshaller.tt"
- this.Write(this.ToStringHelper.ToStringWithCulture(member.PropertyName));
-
- #line default
- #line hidden
- this.Write(" == null)\r\n {\r\n response.");
-
- #line 149 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlResponseUnmarshaller.tt"
- this.Write(this.ToStringHelper.ToStringWithCulture(member.PropertyName));
-
- #line default
- #line hidden
- this.Write(" = new ");
-
- #line 149 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlResponseUnmarshaller.tt"
- this.Write(this.ToStringHelper.ToStringWithCulture(member.DetermineType()));
-
- #line default
- #line hidden
- this.Write("();\r\n }\r\n\t\t\t\t\t\tvar unmarshaller = ");
-
- #line 151 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlResponseUnmarshaller.tt"
- this.Write(this.ToStringHelper.ToStringWithCulture(member.DetermineTypeUnmarshallerInstantiate()));
-
- #line default
- #line hidden
- this.Write(";\r\n\t\t\t\t\t\tresponse.");
-
- #line 152 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlResponseUnmarshaller.tt"
- this.Write(this.ToStringHelper.ToStringWithCulture(member.PropertyName));
-
- #line default
- #line hidden
- this.Write(".Add(unmarshaller.Unmarshall(context));\r\n\t\t\t\t\t\tcontinue;\r\n\t\t\t\t\t}\r\n");
-
- #line 155 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlResponseUnmarshaller.tt"
-
- }
-
-
- else
- {
-
-
- #line default
- #line hidden
- this.Write("\t\t\t\t if (context.TestExpression(\"");
-
- #line 162 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlResponseUnmarshaller.tt"
- this.Write(this.ToStringHelper.ToStringWithCulture(DetermineXmlMarshallName(member)));
-
- #line default
- #line hidden
- this.Write("/");
-
- #line 162 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlResponseUnmarshaller.tt"
- this.Write(this.ToStringHelper.ToStringWithCulture(listMarshallName));
-
- #line default
- #line hidden
- this.Write("\", targetDepth))\r\n\t\t\t\t {\r\n if (response.");
-
- #line 164 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlResponseUnmarshaller.tt"
- this.Write(this.ToStringHelper.ToStringWithCulture(member.PropertyName));
-
- #line default
- #line hidden
- this.Write(" == null)\r\n {\r\n response.");
-
- #line 166 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlResponseUnmarshaller.tt"
- this.Write(this.ToStringHelper.ToStringWithCulture(member.PropertyName));
-
- #line default
- #line hidden
- this.Write(" = new ");
-
- #line 166 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlResponseUnmarshaller.tt"
- this.Write(this.ToStringHelper.ToStringWithCulture(member.DetermineType()));
-
- #line default
- #line hidden
- this.Write("();\r\n }\r\n\t\t\t\t\t var unmarshaller = ");
-
- #line 168 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlResponseUnmarshaller.tt"
- this.Write(this.ToStringHelper.ToStringWithCulture(member.DetermineTypeUnmarshallerInstantiate()));
-
- #line default
- #line hidden
- this.Write(";\r\n\t\t\t\t\t response.");
-
- #line 169 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlResponseUnmarshaller.tt"
- this.Write(this.ToStringHelper.ToStringWithCulture(member.PropertyName));
-
- #line default
- #line hidden
- this.Write(".Add(unmarshaller.Unmarshall(context));\r\n\t\t\t\t\t continue;\r\n\t\t\t\t }\r\n");
-
- #line 172 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlResponseUnmarshaller.tt"
-
- }
- }
- else if(member.Shape.IsMap)
- {
- if(member.IsFlattened)
- {
-
-
- #line default
- #line hidden
- this.Write("\t\t\t\t\tif (context.TestExpression(\"");
-
- #line 180 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlResponseUnmarshaller.tt"
- this.Write(this.ToStringHelper.ToStringWithCulture(DetermineXmlMarshallName(member)));
-
- #line default
- #line hidden
- this.Write("\", targetDepth))\r\n\t\t\t\t\t{\r\n if (response.");
-
- #line 182 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlResponseUnmarshaller.tt"
- this.Write(this.ToStringHelper.ToStringWithCulture(member.PropertyName));
-
- #line default
- #line hidden
- this.Write(" == null)\r\n {\r\n response.");
-
- #line 184 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlResponseUnmarshaller.tt"
- this.Write(this.ToStringHelper.ToStringWithCulture(member.PropertyName));
-
- #line default
- #line hidden
- this.Write(" = new ");
-
- #line 184 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlResponseUnmarshaller.tt"
- this.Write(this.ToStringHelper.ToStringWithCulture(member.DetermineType()));
-
- #line default
- #line hidden
- this.Write("();\r\n }\r\n\t\t\t\t\t\tvar unmarshaller = ");
-
- #line 186 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlResponseUnmarshaller.tt"
- this.Write(this.ToStringHelper.ToStringWithCulture(member.DetermineTypeUnmarshallerInstantiate()));
-
- #line default
- #line hidden
- this.Write(";\r\n\t\t\t\t\t\tresponse.");
-
- #line 187 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlResponseUnmarshaller.tt"
- this.Write(this.ToStringHelper.ToStringWithCulture(member.PropertyName));
-
- #line default
- #line hidden
- this.Write(".Add(unmarshaller.Unmarshall(context));\r\n\t\t\t\t\t\tcontinue;\r\n\t\t\t\t\t}\r\n");
-
- #line 190 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlResponseUnmarshaller.tt"
-
- }
- else
- {
-
-
- #line default
- #line hidden
- this.Write("\t\t\t\t\tif (context.TestExpression(\"");
-
- #line 195 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlResponseUnmarshaller.tt"
- this.Write(this.ToStringHelper.ToStringWithCulture(DetermineXmlMarshallName(member)));
-
- #line default
- #line hidden
- this.Write("\", targetDepth))\r\n\t\t\t\t\t{\r\n\t\t\t\t\t\tvar unmarshaller = ");
-
- #line 197 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlResponseUnmarshaller.tt"
- this.Write(this.ToStringHelper.ToStringWithCulture(member.DetermineTypeUnmarshallerInstantiate()));
-
- #line default
- #line hidden
- this.Write(";\r\n\t\t\t\t\t\tresponse.");
-
- #line 198 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlResponseUnmarshaller.tt"
- this.Write(this.ToStringHelper.ToStringWithCulture(member.PropertyName));
-
- #line default
- #line hidden
- this.Write(" = unmarshaller.Unmarshall(context);\r\n\t\t\t\t\t\tcontinue;\r\n\t\t\t\t\t}\r\n");
-
- #line 201 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlResponseUnmarshaller.tt"
-
- }
- }
- else
- {
- if (!member.IsXmlAttribute)
- {
-
-
- #line default
- #line hidden
- this.Write("\t\t\t\t\tif (context.TestExpression(\"");
-
- #line 209 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlResponseUnmarshaller.tt"
- this.Write(this.ToStringHelper.ToStringWithCulture(DetermineXmlMarshallName(member)));
-
- #line default
- #line hidden
- this.Write("\", targetDepth))\r\n");
-
- #line 210 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlResponseUnmarshaller.tt"
-
- }
- else
- {
-
-
- #line default
- #line hidden
- this.Write(" if (context.TestExpression(\"@");
-
- #line 215 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlResponseUnmarshaller.tt"
- this.Write(this.ToStringHelper.ToStringWithCulture(DetermineXmlMarshallName(member, false)));
-
- #line default
- #line hidden
- this.Write("\", targetDepth - 1))\r\n");
-
- #line 216 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlResponseUnmarshaller.tt"
-
- }
-
-
- #line default
- #line hidden
- this.Write("\t\t\t\t\t{\r\n\t\t\t\t\t\tvar unmarshaller = ");
-
- #line 220 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlResponseUnmarshaller.tt"
- this.Write(this.ToStringHelper.ToStringWithCulture(member.DetermineTypeUnmarshallerInstantiate()));
-
- #line default
- #line hidden
- this.Write(";\r\n\t\t\t\t\t\tresponse.");
-
- #line 221 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlResponseUnmarshaller.tt"
- this.Write(this.ToStringHelper.ToStringWithCulture(member.PropertyName));
-
- #line default
- #line hidden
- this.Write(" = unmarshaller.Unmarshall(context);\r\n\t\t\t\t\t\tcontinue;\r\n\t\t\t\t\t}\r\n");
-
- #line 224 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlResponseUnmarshaller.tt"
-
- }
+ ProcessResponseBodyOrStructureMembers(member, false);
}
if (shouldMarshallPayload)
{
-
-
- #line default
- #line hidden
- this.Write("\t\t\t\t\tif (context.TestExpression(\"");
-
- #line 231 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlResponseUnmarshaller.tt"
- this.Write(this.ToStringHelper.ToStringWithCulture(DetermineXmlMarshallName(payload)));
-
- #line default
- #line hidden
- this.Write("\", targetDepth))\r\n\t\t\t\t\t{\r\n\t\t\t\t\t\tvar unmarshaller = ");
-
- #line 233 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlResponseUnmarshaller.tt"
- this.Write(this.ToStringHelper.ToStringWithCulture(payload.DetermineTypeUnmarshallerInstantiate()));
-
- #line default
- #line hidden
- this.Write(";\r\n\t\t\t\t\t\tresponse.");
-
- #line 234 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlResponseUnmarshaller.tt"
- this.Write(this.ToStringHelper.ToStringWithCulture(payload.PropertyName));
-
- #line default
- #line hidden
- this.Write(" = unmarshaller.Unmarshall(context);\r\n\t\t\t\t\t\tcontinue;\r\n\t\t\t\t\t}\r\n");
-
- #line 237 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlResponseUnmarshaller.tt"
-
+ ProcessResponseBodyOrStructureMembers(payload, false);
}
@@ -599,7 +303,7 @@ public override AmazonWebServiceResponse Unmarshall(XmlUnmarshallerContext conte
"\r\n {\r\n return;\r\n }\r\n " +
" }\r\n \r\n return;\r\n }\r\n");
- #line 249 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlResponseUnmarshaller.tt"
+ #line 155 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlResponseUnmarshaller.tt"
}
@@ -619,7 +323,7 @@ public override AmazonServiceException UnmarshallException(XmlUnmarshallerContex
{
");
- #line 262 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlResponseUnmarshaller.tt"
+ #line 168 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlResponseUnmarshaller.tt"
if (this.Config.ServiceId == "S3")
{
@@ -630,7 +334,7 @@ public override AmazonServiceException UnmarshallException(XmlUnmarshallerContex
this.Write(" S3ErrorResponse errorResponse = S3ErrorResponseUnmarshaller.Instance." +
"Unmarshall(context);\r\n");
- #line 267 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlResponseUnmarshaller.tt"
+ #line 173 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlResponseUnmarshaller.tt"
}
else
@@ -642,7 +346,7 @@ public override AmazonServiceException UnmarshallException(XmlUnmarshallerContex
this.Write(" ErrorResponse errorResponse = XmlErrorResponseUnmarshaller.GetInstanc" +
"e().Unmarshall(context);\r\n");
- #line 273 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlResponseUnmarshaller.tt"
+ #line 179 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlResponseUnmarshaller.tt"
}
@@ -659,7 +363,7 @@ public override AmazonServiceException UnmarshallException(XmlUnmarshallerContex
{
");
- #line 284 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlResponseUnmarshaller.tt"
+ #line 190 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlResponseUnmarshaller.tt"
foreach (var exception in this.Operation.Exceptions)
{
@@ -669,14 +373,14 @@ public override AmazonServiceException UnmarshallException(XmlUnmarshallerContex
#line hidden
this.Write(" if (errorResponse.Code != null && errorResponse.Code.Equals(\"");
- #line 288 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlResponseUnmarshaller.tt"
+ #line 194 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlResponseUnmarshaller.tt"
this.Write(this.ToStringHelper.ToStringWithCulture(exception.Code));
#line default
#line hidden
this.Write("\"))\r\n {\r\n return ");
- #line 290 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlResponseUnmarshaller.tt"
+ #line 196 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlResponseUnmarshaller.tt"
this.Write(this.ToStringHelper.ToStringWithCulture(exception.Name));
#line default
@@ -684,7 +388,7 @@ public override AmazonServiceException UnmarshallException(XmlUnmarshallerContex
this.Write("Unmarshaller.Instance.Unmarshall(contextCopy, errorResponse);\r\n }\r" +
"\n");
- #line 292 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlResponseUnmarshaller.tt"
+ #line 198 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlResponseUnmarshaller.tt"
}
@@ -693,7 +397,7 @@ public override AmazonServiceException UnmarshallException(XmlUnmarshallerContex
#line hidden
this.Write(" }\r\n");
- #line 296 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlResponseUnmarshaller.tt"
+ #line 202 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlResponseUnmarshaller.tt"
if (this.Config.ServiceId == "S3")
{
@@ -704,7 +408,7 @@ public override AmazonServiceException UnmarshallException(XmlUnmarshallerContex
this.Write(" return base.ConstructS3Exception(context, errorResponse, innerExcepti" +
"on, statusCode);\r\n");
- #line 301 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlResponseUnmarshaller.tt"
+ #line 207 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlResponseUnmarshaller.tt"
}
else
@@ -715,7 +419,7 @@ public override AmazonServiceException UnmarshallException(XmlUnmarshallerContex
#line hidden
this.Write(" return new ");
- #line 306 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlResponseUnmarshaller.tt"
+ #line 212 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlResponseUnmarshaller.tt"
this.Write(this.ToStringHelper.ToStringWithCulture(this.BaseException));
#line default
@@ -723,7 +427,7 @@ public override AmazonServiceException UnmarshallException(XmlUnmarshallerContex
this.Write("(errorResponse.Message, innerException, errorResponse.Type, errorResponse.Code, e" +
"rrorResponse.RequestId, statusCode);\r\n");
- #line 307 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlResponseUnmarshaller.tt"
+ #line 213 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlResponseUnmarshaller.tt"
}
@@ -732,7 +436,7 @@ public override AmazonServiceException UnmarshallException(XmlUnmarshallerContex
#line hidden
this.Write(" }\r\n\r\n");
- #line 312 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlResponseUnmarshaller.tt"
+ #line 218 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlResponseUnmarshaller.tt"
this.AddResponseSingletonMethod();
diff --git a/generator/ServiceClientGeneratorLib/Generators/Marshallers/RestXmlResponseUnmarshaller.tt b/generator/ServiceClientGeneratorLib/Generators/Marshallers/RestXmlResponseUnmarshaller.tt
index 81596ec01147..a5d2fc9da6dc 100644
--- a/generator/ServiceClientGeneratorLib/Generators/Marshallers/RestXmlResponseUnmarshaller.tt
+++ b/generator/ServiceClientGeneratorLib/Generators/Marshallers/RestXmlResponseUnmarshaller.tt
@@ -135,106 +135,12 @@ namespace <#=this.Config.Namespace #>.Model.Internal.MarshallTransformations
<#
foreach (var member in this.Operation.ResponseBodyMembers)
{
- if (member.Shape.IsList)
- {
- var listMarshallName = member.Shape.ListMarshallName ?? "member";
-
- if (member.IsFlattened || member.Shape.IsFlattened)
- {
-#>
- if (context.TestExpression("<#=DetermineXmlMarshallName(member)#>", targetDepth))
- {
- if (response.<#=member.PropertyName#> == null)
- {
- response.<#=member.PropertyName#> = new <#=member.DetermineType()#>();
- }
- var unmarshaller = <#= member.DetermineTypeUnmarshallerInstantiate() #>;
- response.<#=member.PropertyName#>.Add(unmarshaller.Unmarshall(context));
- continue;
- }
-<#
- }
-
-
- else
- {
-#>
- if (context.TestExpression("<#=DetermineXmlMarshallName(member)#>/<#=listMarshallName#>", targetDepth))
- {
- if (response.<#=member.PropertyName#> == null)
- {
- response.<#=member.PropertyName#> = new <#=member.DetermineType()#>();
- }
- var unmarshaller = <#= member.DetermineTypeUnmarshallerInstantiate() #>;
- response.<#=member.PropertyName#>.Add(unmarshaller.Unmarshall(context));
- continue;
- }
-<#
- }
- }
- else if(member.Shape.IsMap)
- {
- if(member.IsFlattened)
- {
-#>
- if (context.TestExpression("<#=DetermineXmlMarshallName(member)#>", targetDepth))
- {
- if (response.<#=member.PropertyName#> == null)
- {
- response.<#=member.PropertyName#> = new <#=member.DetermineType()#>();
- }
- var unmarshaller = <#= member.DetermineTypeUnmarshallerInstantiate() #>;
- response.<#=member.PropertyName#>.Add(unmarshaller.Unmarshall(context));
- continue;
- }
-<#
- }
- else
- {
-#>
- if (context.TestExpression("<#=DetermineXmlMarshallName(member)#>", targetDepth))
- {
- var unmarshaller = <#= member.DetermineTypeUnmarshallerInstantiate() #>;
- response.<#=member.PropertyName#> = unmarshaller.Unmarshall(context);
- continue;
- }
-<#
- }
- }
- else
- {
- if (!member.IsXmlAttribute)
- {
-#>
- if (context.TestExpression("<#=DetermineXmlMarshallName(member)#>", targetDepth))
-<#
- }
- else
- {
-#>
- if (context.TestExpression("@<#=DetermineXmlMarshallName(member, false)#>", targetDepth - 1))
-<#
- }
-#>
- {
- var unmarshaller = <#= member.DetermineTypeUnmarshallerInstantiate() #>;
- response.<#=member.PropertyName#> = unmarshaller.Unmarshall(context);
- continue;
- }
-<#
- }
+ ProcessResponseBodyOrStructureMembers(member, false);
}
if (shouldMarshallPayload)
{
-#>
- if (context.TestExpression("<#=DetermineXmlMarshallName(payload)#>", targetDepth))
- {
- var unmarshaller = <#=payload.DetermineTypeUnmarshallerInstantiate()#>;
- response.<#=payload.PropertyName#> = unmarshaller.Unmarshall(context);
- continue;
- }
-<#
+ ProcessResponseBodyOrStructureMembers(payload, false);
}
#>
}
diff --git a/generator/ServiceClientGeneratorLib/Generators/Marshallers/RestXmlStructureUnmarshaller.cs b/generator/ServiceClientGeneratorLib/Generators/Marshallers/RestXmlStructureUnmarshaller.cs
index edb58da33d98..58139ad3056a 100644
--- a/generator/ServiceClientGeneratorLib/Generators/Marshallers/RestXmlStructureUnmarshaller.cs
+++ b/generator/ServiceClientGeneratorLib/Generators/Marshallers/RestXmlStructureUnmarshaller.cs
@@ -177,129 +177,14 @@ public override string TransformText()
// For every member, generate code to add the unmarshalled member to the response object
foreach (var member in this.Structure.Members)
{
- if(member.Shape.IsList)
- {
- var listMarshallName = member.Shape.ListMarshallName ?? "member";
+ ProcessResponseBodyOrStructureMembers(member, true);
#line default
#line hidden
- this.Write("\t\t\t\t\tif (context.TestExpression(\"");
- #line 77 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlStructureUnmarshaller.tt"
- this.Write(this.ToStringHelper.ToStringWithCulture(member.MarshallName));
-
- #line default
- #line hidden
- this.Write("/");
-
- #line 77 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlStructureUnmarshaller.tt"
- this.Write(this.ToStringHelper.ToStringWithCulture(listMarshallName));
-
- #line default
- #line hidden
- this.Write("\", targetDepth))\r\n\t\t\t\t\t{\r\n if (unmarshalledObject.");
-
- #line 79 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlStructureUnmarshaller.tt"
- this.Write(this.ToStringHelper.ToStringWithCulture(member.PropertyName));
-
- #line default
- #line hidden
- this.Write(" == null)\r\n {\r\n unmarshalledObj" +
- "ect.");
-
- #line 81 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlStructureUnmarshaller.tt"
- this.Write(this.ToStringHelper.ToStringWithCulture(member.PropertyName));
-
- #line default
- #line hidden
- this.Write(" = new ");
-
- #line 81 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlStructureUnmarshaller.tt"
- this.Write(this.ToStringHelper.ToStringWithCulture(member.DetermineType()));
-
- #line default
- #line hidden
- this.Write("();\r\n }\r\n\t\t\t\t\t\tvar unmarshaller = ");
-
- #line 83 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlStructureUnmarshaller.tt"
- this.Write(this.ToStringHelper.ToStringWithCulture(member.DetermineTypeUnmarshallerInstantiate()));
-
- #line default
- #line hidden
- this.Write(";\r\n\t\t\t\t\t\tunmarshalledObject.");
-
- #line 84 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlStructureUnmarshaller.tt"
- this.Write(this.ToStringHelper.ToStringWithCulture(member.PropertyName));
-
- #line default
- #line hidden
- this.Write(".Add(unmarshaller.Unmarshall(context));\r\n\t\t\t\t\t\tcontinue;\r\n\t\t\t\t\t}\r\n");
-
- #line 87 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlStructureUnmarshaller.tt"
-
- }
- else
- {
- if(!member.IsXmlAttribute)
- {
-
-
- #line default
- #line hidden
- this.Write("\t\t\t\t\tif (context.TestExpression(\"");
-
- #line 94 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlStructureUnmarshaller.tt"
- this.Write(this.ToStringHelper.ToStringWithCulture(member.MarshallName));
-
- #line default
- #line hidden
- this.Write("\", targetDepth))\r\n");
-
- #line 95 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlStructureUnmarshaller.tt"
-
- }
- else
- {
+ #line 75 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlStructureUnmarshaller.tt"
-
- #line default
- #line hidden
- this.Write(" if (context.TestExpression(\"@");
-
- #line 100 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlStructureUnmarshaller.tt"
- this.Write(this.ToStringHelper.ToStringWithCulture(DetermineXmlMarshallName(member, false)));
-
- #line default
- #line hidden
- this.Write("\", targetDepth - 1))\r\n");
-
- #line 101 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlStructureUnmarshaller.tt"
-
- }
-
-
- #line default
- #line hidden
- this.Write("\t\t\t\t\t{\r\n\t\t\t\t\t\tvar unmarshaller = ");
-
- #line 105 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlStructureUnmarshaller.tt"
- this.Write(this.ToStringHelper.ToStringWithCulture(member.DetermineTypeUnmarshallerInstantiate()));
-
- #line default
- #line hidden
- this.Write(";\r\n\t\t\t\t\t\tunmarshalledObject.");
-
- #line 106 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlStructureUnmarshaller.tt"
- this.Write(this.ToStringHelper.ToStringWithCulture(member.PropertyName));
-
- #line default
- #line hidden
- this.Write(" = unmarshaller.Unmarshall(context);\r\n\t\t\t\t\t\tcontinue;\r\n\t\t\t\t\t}\r\n");
-
- #line 109 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlStructureUnmarshaller.tt"
-
- }
}
}
@@ -316,7 +201,7 @@ public override string TransformText()
}
");
- #line 122 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlStructureUnmarshaller.tt"
+ #line 87 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlStructureUnmarshaller.tt"
this.AddStructureSingletonMethod();
diff --git a/generator/ServiceClientGeneratorLib/Generators/Marshallers/RestXmlStructureUnmarshaller.tt b/generator/ServiceClientGeneratorLib/Generators/Marshallers/RestXmlStructureUnmarshaller.tt
index 1cc56dbbf1de..390c42ea3c87 100644
--- a/generator/ServiceClientGeneratorLib/Generators/Marshallers/RestXmlStructureUnmarshaller.tt
+++ b/generator/ServiceClientGeneratorLib/Generators/Marshallers/RestXmlStructureUnmarshaller.tt
@@ -70,44 +70,9 @@ namespace <#=this.Config.Namespace #>.Model.Internal.MarshallTransformations
// For every member, generate code to add the unmarshalled member to the response object
foreach (var member in this.Structure.Members)
{
- if(member.Shape.IsList)
- {
- var listMarshallName = member.Shape.ListMarshallName ?? "member";
+ ProcessResponseBodyOrStructureMembers(member, true);
#>
- if (context.TestExpression("<#=member.MarshallName#>/<#=listMarshallName#>", targetDepth))
- {
- if (unmarshalledObject.<#=member.PropertyName#> == null)
- {
- unmarshalledObject.<#=member.PropertyName#> = new <#=member.DetermineType()#>();
- }
- var unmarshaller = <#= member.DetermineTypeUnmarshallerInstantiate() #>;
- unmarshalledObject.<#=member.PropertyName#>.Add(unmarshaller.Unmarshall(context));
- continue;
- }
<#
- }
- else
- {
- if(!member.IsXmlAttribute)
- {
-#>
- if (context.TestExpression("<#=member.MarshallName#>", targetDepth))
-<#
- }
- else
- {
-#>
- if (context.TestExpression("@<#=DetermineXmlMarshallName(member, false)#>", targetDepth - 1))
-<#
- }
-#>
- {
- var unmarshaller = <#= member.DetermineTypeUnmarshallerInstantiate() #>;
- unmarshalledObject.<#=member.PropertyName#> = unmarshaller.Unmarshall(context);
- continue;
- }
-<#
- }
}
}
#>
diff --git a/generator/ServiceClientGeneratorLib/ServiceModel.cs b/generator/ServiceClientGeneratorLib/ServiceModel.cs
index 7096af58986e..da54d9694430 100644
--- a/generator/ServiceClientGeneratorLib/ServiceModel.cs
+++ b/generator/ServiceClientGeneratorLib/ServiceModel.cs
@@ -480,9 +480,9 @@ public List S3AllowListOperations
new Operation(this, "DeleteBucketReplication", DocumentRoot[OperationsKey]["DeleteBucketReplication"]),
new Operation(this, "DeleteBucketTagging", DocumentRoot[OperationsKey]["DeleteBucketTagging"]),
new Operation(this, "DeletePublicAccessBlock", DocumentRoot[OperationsKey]["DeletePublicAccessBlock"]),
- //new Operation(this, "GetBucketAccelerateConfiguration", DocumentRoot[OperationsKey]["GetBucketAccelerateConfiguration"]),
+ new Operation(this, "GetBucketAccelerateConfiguration", DocumentRoot[OperationsKey]["GetBucketAccelerateConfiguration"]),
//new Operation(this, "GetBucketAnalyticsConfiguration", DocumentRoot[OperationsKey]["GetBucketAnalyticsConfiguration"]),
- //new Operation(this, "GetBucketEncryption", DocumentRoot[OperationsKey]["GetBucketEncryption"]),
+ new Operation(this, "GetBucketEncryption", DocumentRoot[OperationsKey]["GetBucketEncryption"]),
//new Operation(this, "GetBucketIntelligentTieringConfiguration", DocumentRoot[OperationsKey]["GetBucketIntelligentTieringConfiguration"]),
//new Operation(this, "GetBucketInventoryConfiguration", DocumentRoot[OperationsKey]["GetBucketInventoryConfiguration"]),
//new Operation(this, "GetBucketLocation", DocumentRoot[OperationsKey]["GetBucketLocation"]),
@@ -512,7 +512,7 @@ public List S3AllowListOperations
new Operation(this, "ListDirectoryBuckets", DocumentRoot[OperationsKey]["ListDirectoryBuckets"]),
//new Operation(this, "ListParts", DocumentRoot[OperationsKey]["ListParts"]),
//new Operation(this, "PutBucketAccelerateConfiguration", DocumentRoot[OperationsKey]["PutBucketAccelerateConfiguration"]),
- //new Operation(this, "PutBucketEncryption", DocumentRoot[OperationsKey]["PutBucketEncryption"]),
+ new Operation(this, "PutBucketEncryption", DocumentRoot[OperationsKey]["PutBucketEncryption"]),
//new Operation(this, "PutBucketPolicy", DocumentRoot[OperationsKey]["PutBucketPolicy"]),
//new Operation(this, "PutObjectLegalHold", DocumentRoot[OperationsKey]["PutObjectLegalHold"]),
//new Operation(this, "PutObjectLockConfiguration", DocumentRoot[OperationsKey]["PutObjectLockConfiguration"]),
diff --git a/generator/ServiceModels/s3/s3.customizations.json b/generator/ServiceModels/s3/s3.customizations.json
index b69e9e5aa9f6..68a672f84874 100644
--- a/generator/ServiceModels/s3/s3.customizations.json
+++ b/generator/ServiceModels/s3/s3.customizations.json
@@ -197,6 +197,30 @@
}
]
},
+ "ServerSideEncryptionRule":{
+ "modify":[
+ {
+ "ApplyServerSideEncryptionByDefault": { "emitPropertyName": "ServerSideEncryptionByDefault"}
+ }
+ ]
+ },
+ "ServerSideEncryptionConfiguration":{
+ "modify":[
+ {
+ "Rules" : { "emitPropertyName": "ServerSideEncryptionRules" }
+ }
+ ]
+ },
+ "ServerSideEncryptionByDefault":{
+ "modify": [
+ {
+ "KMSMasterKeyID": {"emitPropertyName": "ServerSideEncryptionKeyManagementServiceKeyId"}
+ },
+ {
+ "SSEAlgorithm": {"emitPropertyName": "ServerSideEncryptionAlgorithm"}
+ }
+ ]
+ },
"UploadPartCopyRequest": {
"modify": [
{
@@ -297,6 +321,9 @@
"shapeSubstitutions":{
"Bucket":{
"renameShape":"S3Bucket"
+ },
+ "ServerSideEncryption":{
+ "renameShape":"ServerSideEncryptionMethod"
}
}
}
diff --git a/sdk/src/Services/S3/Custom/Model/GetBucketEncryptionRequest.cs b/sdk/src/Services/S3/Custom/Model/GetBucketEncryptionRequest.cs
deleted file mode 100644
index f372974eb2c8..000000000000
--- a/sdk/src/Services/S3/Custom/Model/GetBucketEncryptionRequest.cs
+++ /dev/null
@@ -1,126 +0,0 @@
-/*
- * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
- *
- * Licensed under the Apache License, Version 2.0 (the "License").
- * You may not use this file except in compliance with the License.
- * A copy of the License is located at
- *
- * http://aws.amazon.com/apache2.0
- *
- * or in the "license" file accompanying this file. This file is distributed
- * on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either
- * express or implied. See the License for the specific language governing
- * permissions and limitations under the License.
- */
-using System;
-using System.Collections.Generic;
-using System.Xml.Serialization;
-using System.Text;
-using System.IO;
-
-using Amazon.Runtime;
-using Amazon.Runtime.Internal;
-
-namespace Amazon.S3.Model
-{
- ///
- /// Container for the parameters to the GetBucketEncryption operation.
- ///
- ///
- /// This operation is not supported by directory buckets.
- ///
- ///
- ///
- /// Returns the default encryption configuration for an Amazon S3 bucket. By default,
- /// all buckets have a default encryption configuration that uses server-side encryption
- /// with Amazon S3 managed keys (SSE-S3). For information about the bucket default encryption
- /// feature, see Amazon
- /// S3 Bucket Default Encryption in the Amazon S3 User Guide.
- ///
- ///
- ///
- /// To use this operation, you must have permission to perform the s3:GetEncryptionConfiguration
- /// action. The bucket owner has this permission by default. The bucket owner can grant
- /// this permission to others. For more information about permissions, see Permissions
- /// Related to Bucket Subresource Operations and Managing
- /// Access Permissions to Your Amazon S3 Resources.
- ///
- ///
- ///
- /// The following operations are related to GetBucketEncryption
:
- ///
- ///
- ///
- public partial class GetBucketEncryptionRequest : AmazonWebServiceRequest
- {
- private string bucketName;
- private string expectedBucketOwner;
-
- ///
- ///
- /// The name of the bucket from which the server-side encryption configuration is retrieved.
- ///
- ///
- ///
- /// Directory buckets - When you use this operation with a directory bucket, you must use path-style requests
- /// in the format https://s3express-control.region_code.amazonaws.com/bucket-name.
- ///
- /// Virtual-hosted-style requests aren't supported.
- /// Directory bucket names must be unique in the chosen Availability Zone.
- /// Bucket names must also follow the format bucket_base_name--az_id--x-s3 (for example, amzn-s3-demo-bucket--usw2-az1--x-s3).
- ///
- /// For information about bucket naming restrictions, see Directory bucket naming rules
- /// in the Amazon S3 User Guide.
- ///
- ///
- public string BucketName
- {
- get { return this.bucketName; }
- set { this.bucketName = value; }
- }
-
- // Check to see if BucketName property is set
- internal bool IsSetBucketName()
- {
- return this.BucketName != null;
- }
-
- ///
- /// Gets and sets the property ExpectedBucketOwner.
- ///
- /// The account ID of the expected bucket owner. If the account ID that you provide does
- /// not match the actual owner of the bucket, the request fails with the HTTP status code
- /// 403 Forbidden (access denied).
- ///
- ///
- ///
- /// For directory buckets, this header is not supported in this API operation.
- /// If you specify this header, the request fails with the HTTP status code 501 Not Implemented.
- ///
- ///
- public string ExpectedBucketOwner
- {
- get { return this.expectedBucketOwner; }
- set { this.expectedBucketOwner = value; }
- }
-
- ///
- /// Checks to see if ExpectedBucketOwner is set.
- ///
- /// true, if ExpectedBucketOwner property is set.
- internal bool IsSetExpectedBucketOwner()
- {
- return !String.IsNullOrEmpty(this.expectedBucketOwner);
- }
- }
-}
\ No newline at end of file
diff --git a/sdk/src/Services/S3/Custom/Model/Internal/MarshallTransformations/GetBucketAccelerateConfigurationRequestMarshaller.cs b/sdk/src/Services/S3/Custom/Model/Internal/MarshallTransformations/GetBucketAccelerateConfigurationRequestMarshaller.cs
deleted file mode 100644
index 9a6a988fbc50..000000000000
--- a/sdk/src/Services/S3/Custom/Model/Internal/MarshallTransformations/GetBucketAccelerateConfigurationRequestMarshaller.cs
+++ /dev/null
@@ -1,75 +0,0 @@
-/*
- * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
- *
- * Licensed under the Apache License, Version 2.0 (the "License").
- * You may not use this file except in compliance with the License.
- * A copy of the License is located at
- *
- * http://aws.amazon.com/apache2.0
- *
- * or in the "license" file accompanying this file. This file is distributed
- * on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either
- * express or implied. See the License for the specific language governing
- * permissions and limitations under the License.
- */
-
-using Amazon.Runtime.Internal;
-using Amazon.Runtime.Internal.Transform;
-using Amazon.S3.Util;
-using System.Globalization;
-
-#pragma warning disable 1591
-
-namespace Amazon.S3.Model.Internal.MarshallTransformations
-{
- ///
- /// Get Object Accelerate Configuration Request Marshaller
- ///
- public class GetBucketAccelerateConfigurationRequestMarshaller : IMarshaller, IMarshaller
- {
- public IRequest Marshall(Amazon.Runtime.AmazonWebServiceRequest input)
- {
- return this.Marshall((GetBucketAccelerateConfigurationRequest)input);
- }
-
- public IRequest Marshall(GetBucketAccelerateConfigurationRequest getBucketAccelerateRequest)
- {
- IRequest request = new DefaultRequest(getBucketAccelerateRequest, "AmazonS3");
-
- request.HttpMethod = "GET";
-
- if (getBucketAccelerateRequest.IsSetExpectedBucketOwner())
- request.Headers.Add(S3Constants.AmzHeaderExpectedBucketOwner, S3Transforms.ToStringValue(getBucketAccelerateRequest.ExpectedBucketOwner));
-
- if (string.IsNullOrEmpty(getBucketAccelerateRequest.BucketName))
- throw new System.ArgumentException("BucketName is a required property and must be set before making this call.", "GetBucketAccelerateConfigurationRequest.BucketName");
-
- if (getBucketAccelerateRequest.IsSetRequestPayer())
- request.Headers.Add(S3Constants.AmzHeaderRequestPayer, S3Transforms.ToStringValue(getBucketAccelerateRequest.RequestPayer));
-
- request.ResourcePath = "/";
- request.AddSubResource("accelerate");
- request.UseQueryString = true;
-
- return request;
- }
-
- private static GetBucketAccelerateConfigurationRequestMarshaller _instance;
-
- ///
- /// Singleton for marshaller
- ///
- public static GetBucketAccelerateConfigurationRequestMarshaller Instance
- {
- get
- {
- if (_instance == null)
- {
- _instance = new GetBucketAccelerateConfigurationRequestMarshaller();
- }
- return _instance;
- }
- }
- }
-}
-
diff --git a/sdk/src/Services/S3/Custom/Model/Internal/MarshallTransformations/GetBucketAccelerateConfigurationResponseUnmarshaller.cs b/sdk/src/Services/S3/Custom/Model/Internal/MarshallTransformations/GetBucketAccelerateConfigurationResponseUnmarshaller.cs
deleted file mode 100644
index d75f4ff8a6cb..000000000000
--- a/sdk/src/Services/S3/Custom/Model/Internal/MarshallTransformations/GetBucketAccelerateConfigurationResponseUnmarshaller.cs
+++ /dev/null
@@ -1,100 +0,0 @@
-/*
- * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
- *
- * Licensed under the Apache License, Version 2.0 (the "License").
- * You may not use this file except in compliance with the License.
- * A copy of the License is located at
- *
- * http://aws.amazon.com/apache2.0
- *
- * or in the "license" file accompanying this file. This file is distributed
- * on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either
- * express or implied. See the License for the specific language governing
- * permissions and limitations under the License.
- */
-using System;
-using System.Net;
-using System.Collections.Generic;
-using Amazon.S3.Model;
-using Amazon.Runtime;
-using Amazon.Runtime.Internal;
-using Amazon.Runtime.Internal.Transform;
-using Amazon.S3.Util;
-
-namespace Amazon.S3.Model.Internal.MarshallTransformations
-{
- ///
- /// Response Unmarshaller for GetACL operation
- ///
- public class GetBucketAccelerateConfigurationResponseUnmarshaller : S3ReponseUnmarshaller
- {
- ///
- /// Unmarshaller the response from the service to the response class.
- ///
- ///
- ///
- public override AmazonWebServiceResponse Unmarshall(XmlUnmarshallerContext context)
- {
- var response = new GetBucketAccelerateConfigurationResponse();
-
- while (context.Read())
- {
- if (context.IsStartElement)
- {
- UnmarshallResult(context,response);
- continue;
- }
- }
-
- IWebResponseData responseData = context.ResponseData;
- if (responseData.IsHeaderPresent(S3Constants.AmzHeaderRequestCharged))
- response.RequestCharged = RequestCharged.FindValue(responseData.GetHeaderValue(S3Constants.AmzHeaderRequestCharged));
-
- return response;
- }
-
- private static void UnmarshallResult(XmlUnmarshallerContext context, GetBucketAccelerateConfigurationResponse response)
- {
-
- int originalDepth = context.CurrentDepth;
- int targetDepth = originalDepth + 1;
-
- if (context.IsStartOfDocument)
- targetDepth += 2;
-
- while (context.Read())
- {
- if (context.IsStartElement || context.IsAttribute)
- {
- if (context.TestExpression("Status", targetDepth))
- {
- response.Status = StringUnmarshaller.GetInstance().Unmarshall(context);
- }
- }
- else if (context.IsEndElement && context.CurrentDepth < originalDepth)
- {
- return;
- }
- }
- return;
- }
-
- private static GetBucketAccelerateConfigurationResponseUnmarshaller _instance;
-
- ///
- /// Singleton for the unmarshaller
- ///
- public static GetBucketAccelerateConfigurationResponseUnmarshaller Instance
- {
- get
- {
- if (_instance == null)
- {
- _instance = new GetBucketAccelerateConfigurationResponseUnmarshaller();
- }
- return _instance;
- }
- }
- }
-}
-
diff --git a/sdk/src/Services/S3/Custom/Model/Internal/MarshallTransformations/GetBucketEncryptionRequestMarshaller.cs b/sdk/src/Services/S3/Custom/Model/Internal/MarshallTransformations/GetBucketEncryptionRequestMarshaller.cs
index 9fb1e6b551ff..f29210aac415 100644
--- a/sdk/src/Services/S3/Custom/Model/Internal/MarshallTransformations/GetBucketEncryptionRequestMarshaller.cs
+++ b/sdk/src/Services/S3/Custom/Model/Internal/MarshallTransformations/GetBucketEncryptionRequestMarshaller.cs
@@ -1,68 +1,29 @@
/*
- * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
- *
- * Licensed under the Apache License, Version 2.0 (the "License").
- * You may not use this file except in compliance with the License.
- * A copy of the License is located at
- *
- * http://aws.amazon.com/apache2.0
- *
- * or in the "license" file accompanying this file. This file is distributed
- * on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either
- * express or implied. See the License for the specific language governing
- * permissions and limitations under the License.
- */
+* Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
+*
+* Licensed under the Apache License, Version 2.0 (the "License").
+* You may not use this file except in compliance with the License.
+* A copy of the License is located at
+*
+* http://aws.amazon.com/apache2.0
+*
+* or in the "license" file accompanying this file. This file is distributed
+* on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either
+* express or implied. See the License for the specific language governing
+* permissions and limitations under the License.
+*/
using Amazon.Runtime.Internal;
using Amazon.Runtime.Internal.Transform;
using Amazon.S3.Util;
-#pragma warning disable 1591
-
namespace Amazon.S3.Model.Internal.MarshallTransformations
{
- public class GetBucketEncryptionRequestMarshaller : IMarshaller, IMarshaller
+ public partial class GetBucketEncryptionRequestMarshaller : IMarshaller, IMarshaller
{
- public IRequest Marshall(Amazon.Runtime.AmazonWebServiceRequest input)
- {
- return this.Marshall((GetBucketEncryptionRequest)input);
- }
-
- public IRequest Marshall(GetBucketEncryptionRequest getEncryptionRequest)
- {
- IRequest request = new DefaultRequest(getEncryptionRequest, "AmazonS3");
-
- request.Suppress404Exceptions = true;
- request.HttpMethod = "GET";
-
- if (getEncryptionRequest.IsSetExpectedBucketOwner())
- request.Headers.Add(S3Constants.AmzHeaderExpectedBucketOwner, S3Transforms.ToStringValue(getEncryptionRequest.ExpectedBucketOwner));
-
- if (string.IsNullOrEmpty(getEncryptionRequest.BucketName))
- throw new System.ArgumentException("BucketName is a required property and must be set before making this call.", "GetBucketEncryptionRequest.BucketName");
-
- request.ResourcePath = "/";
- request.AddSubResource("encryption");
- request.UseQueryString = true;
-
- return request;
- }
-
- private static GetBucketEncryptionRequestMarshaller _instance;
-
- ///
- /// Singleton for marshaller
- ///
- public static GetBucketEncryptionRequestMarshaller Instance
+ partial void PostMarshallCustomization(DefaultRequest defaultRequest, GetBucketEncryptionRequest publicRequest)
{
- get
- {
- if (_instance == null)
- {
- _instance = new GetBucketEncryptionRequestMarshaller();
- }
- return _instance;
- }
+ defaultRequest.Suppress404Exceptions = true;
}
}
-}
\ No newline at end of file
+}
diff --git a/sdk/src/Services/S3/Custom/Model/Internal/MarshallTransformations/PutBucketEncryptionRequestMarshaller.cs b/sdk/src/Services/S3/Custom/Model/Internal/MarshallTransformations/PutBucketEncryptionRequestMarshaller.cs
deleted file mode 100644
index 5a81e2065b20..000000000000
--- a/sdk/src/Services/S3/Custom/Model/Internal/MarshallTransformations/PutBucketEncryptionRequestMarshaller.cs
+++ /dev/null
@@ -1,144 +0,0 @@
-/*
- * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
- *
- * Licensed under the Apache License, Version 2.0 (the "License").
- * You may not use this file except in compliance with the License.
- * A copy of the License is located at
- *
- * http://aws.amazon.com/apache2.0
- *
- * or in the "license" file accompanying this file. This file is distributed
- * on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either
- * express or implied. See the License for the specific language governing
- * permissions and limitations under the License.
- */
-
-using System;
-using System.IO;
-using System.Xml;
-using System.Text;
-using Amazon.S3.Util;
-using Amazon.Runtime;
-using Amazon.Runtime.Internal;
-using Amazon.Runtime.Internal.Transform;
-using Amazon.Util;
-using System.Globalization;
-using Amazon.Runtime.Internal.Util;
-
-#pragma warning disable 1591
-
-namespace Amazon.S3.Model.Internal.MarshallTransformations
-{
- public class PutBucketEncryptionRequestMarshaller : IMarshaller, IMarshaller
- {
- public IRequest Marshall(Amazon.Runtime.AmazonWebServiceRequest input)
- {
- return this.Marshall((PutBucketEncryptionRequest)input);
- }
- public IRequest Marshall(PutBucketEncryptionRequest putBucketEncryptionRequest)
- {
- IRequest request = new DefaultRequest(putBucketEncryptionRequest, "AmazonS3");
-
- request.HttpMethod = "PUT";
-
- if (putBucketEncryptionRequest.IsSetChecksumAlgorithm())
- request.Headers.Add(S3Constants.AmzHeaderSdkChecksumAlgorithm, S3Transforms.ToStringValue(putBucketEncryptionRequest.ChecksumAlgorithm));
-
- if (putBucketEncryptionRequest.IsSetExpectedBucketOwner())
- request.Headers.Add(S3Constants.AmzHeaderExpectedBucketOwner, S3Transforms.ToStringValue(putBucketEncryptionRequest.ExpectedBucketOwner));
-
- if (putBucketEncryptionRequest.IsSetContentMD5())
- request.Headers.Add(HeaderKeys.ContentMD5Header, S3Transforms.ToStringValue(putBucketEncryptionRequest.ContentMD5));
-
- if (string.IsNullOrEmpty(putBucketEncryptionRequest.BucketName))
- throw new System.ArgumentException("BucketName is a required property and must be set before making this call.", "PutBucketEncryptionRequest.BucketName");
-
- request.ResourcePath = "/";
-
- request.AddSubResource("encryption");
-
- var stringWriter = new XMLEncodedStringWriter(System.Globalization.CultureInfo.InvariantCulture);
- using (var xmlWriter = XmlWriter.Create(stringWriter, new XmlWriterSettings() { Encoding = Encoding.UTF8, OmitXmlDeclaration = true, NewLineHandling = NewLineHandling.Entitize }))
- {
- if (putBucketEncryptionRequest.IsSetServerSideEncryptionConfiguration())
- {
- var sseConfiguration = putBucketEncryptionRequest.ServerSideEncryptionConfiguration;
- xmlWriter.WriteStartElement("ServerSideEncryptionConfiguration", S3Constants.S3RequestXmlNamespace);
- if (sseConfiguration != null)
- {
- if (sseConfiguration.ServerSideEncryptionRules != null)
- {
- foreach (var serverSideEncryptionRule in sseConfiguration.ServerSideEncryptionRules)
- {
- xmlWriter.WriteStartElement("Rule");
- if (serverSideEncryptionRule != null)
- {
- if (serverSideEncryptionRule.IsSetServerSideEncryptionByDefault())
- {
- xmlWriter.WriteStartElement("ApplyServerSideEncryptionByDefault");
- var sseDefault = serverSideEncryptionRule.ServerSideEncryptionByDefault;
- if (sseDefault.IsSetServerSideEncryptionAlgorithm())
- {
- xmlWriter.WriteElementString("SSEAlgorithm", S3Transforms.ToXmlStringValue(sseDefault.ServerSideEncryptionAlgorithm));
- }
- if (sseDefault.IsSetServerSideEncryptionKeyManagementServiceKeyId())
- {
- xmlWriter.WriteElementString("KMSMasterKeyID", S3Transforms.ToXmlStringValue(sseDefault.ServerSideEncryptionKeyManagementServiceKeyId));
- }
- xmlWriter.WriteEndElement();
- }
-
- if (serverSideEncryptionRule.IsSetBucketKeyEnabled())
- {
- xmlWriter.WriteElementString("BucketKeyEnabled", S3Transforms.ToXmlStringValue(serverSideEncryptionRule.BucketKeyEnabled.Value));
- }
- }
- xmlWriter.WriteEndElement();
- }
- }
- }
- xmlWriter.WriteEndElement();
- }
- }
-
- try
- {
- var content = stringWriter.ToString();
- request.Content = Encoding.UTF8.GetBytes(content);
- request.Headers[HeaderKeys.ContentTypeHeader] = "application/xml";
-
- ChecksumUtils.SetChecksumData(
- request,
- putBucketEncryptionRequest.ChecksumAlgorithm,
- fallbackToMD5: false,
- isRequestChecksumRequired: true,
- headerName: S3Constants.AmzHeaderSdkChecksumAlgorithm
- );
- }
- catch (EncoderFallbackException e)
- {
- throw new AmazonServiceException("Unable to marshall request to XML", e);
- }
-
- return request;
- }
-
- private static PutBucketEncryptionRequestMarshaller _instance;
-
- ///
- /// Singleton for marshaller
- ///
- public static PutBucketEncryptionRequestMarshaller Instance
- {
- get
- {
- if (_instance == null)
- {
- _instance = new PutBucketEncryptionRequestMarshaller();
- }
- return _instance;
- }
- }
-
- }
-}
\ No newline at end of file
diff --git a/sdk/src/Services/S3/Custom/Model/Internal/MarshallTransformations/PutBucketEncryptionResponseUnmarshaller.cs b/sdk/src/Services/S3/Custom/Model/Internal/MarshallTransformations/PutBucketEncryptionResponseUnmarshaller.cs
deleted file mode 100644
index e3c15cf8098c..000000000000
--- a/sdk/src/Services/S3/Custom/Model/Internal/MarshallTransformations/PutBucketEncryptionResponseUnmarshaller.cs
+++ /dev/null
@@ -1,61 +0,0 @@
-/*
- * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
- *
- * Licensed under the Apache License, Version 2.0 (the "License").
- * You may not use this file except in compliance with the License.
- * A copy of the License is located at
- *
- * http://aws.amazon.com/apache2.0
- *
- * or in the "license" file accompanying this file. This file is distributed
- * on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either
- * express or implied. See the License for the specific language governing
- * permissions and limitations under the License.
- */
-using System;
-using System.Net;
-using System.Collections.Generic;
-using Amazon.S3.Model;
-using Amazon.Runtime;
-using Amazon.Runtime.Internal;
-using Amazon.Runtime.Internal.Transform;
-
-namespace Amazon.S3.Model.Internal.MarshallTransformations
-{
- ///
- /// PutBucketEncryptionResponse unmarshaller
- ///
- public class PutBucketEncryptionResponseUnmarshaller : S3ReponseUnmarshaller
- {
- ///
- /// Unmarshaller the response from the service to the response class.
- ///
- ///
- ///
- public override AmazonWebServiceResponse Unmarshall(XmlUnmarshallerContext context)
- {
- PutBucketEncryptionResponse response = new PutBucketEncryptionResponse();
-
-
- return response;
- }
-
- private static PutBucketEncryptionResponseUnmarshaller _instance;
-
- ///
- /// Singleton for the unmarshaller
- ///
- public static PutBucketEncryptionResponseUnmarshaller Instance
- {
- get
- {
- if (_instance == null)
- {
- _instance = new PutBucketEncryptionResponseUnmarshaller();
- }
- return _instance;
- }
- }
-
- }
-}
\ No newline at end of file
diff --git a/sdk/src/Services/S3/Custom/Model/PutBucketEncryptionRequest.cs b/sdk/src/Services/S3/Custom/Model/PutBucketEncryptionRequest.cs
deleted file mode 100644
index d74b800b243f..000000000000
--- a/sdk/src/Services/S3/Custom/Model/PutBucketEncryptionRequest.cs
+++ /dev/null
@@ -1,219 +0,0 @@
-/*
- * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
- *
- * Licensed under the Apache License, Version 2.0 (the "License").
- * You may not use this file except in compliance with the License.
- * A copy of the License is located at
- *
- * http://aws.amazon.com/apache2.0
- *
- * or in the "license" file accompanying this file. This file is distributed
- * on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either
- * express or implied. See the License for the specific language governing
- * permissions and limitations under the License.
- */
-using System;
-using System.Collections.Generic;
-using System.Xml.Serialization;
-using System.Text;
-
-using Amazon.Runtime;
-
-namespace Amazon.S3.Model
-{
- ///
- /// Container for the parameters to the PutBucketEncryption operation.
- ///
- ///
- /// This operation is not supported by directory buckets.
- ///
- ///
- ///
- /// This action uses the encryption
subresource to configure default encryption
- /// and Amazon S3 Bucket Keys for an existing bucket.
- ///
- ///
- ///
- /// By default, all buckets have a default encryption configuration that uses server-side
- /// encryption with Amazon S3 managed keys (SSE-S3). You can optionally configure default
- /// encryption for a bucket by using server-side encryption with Key Management Service
- /// (KMS) keys (SSE-KMS) or dual-layer server-side encryption with Amazon Web Services
- /// KMS keys (DSSE-KMS). If you specify default encryption by using SSE-KMS, you can also
- /// configure Amazon
- /// S3 Bucket Keys. If you use PutBucketEncryption to set your default
- /// bucket encryption to SSE-KMS, you should verify that your KMS key ID is correct.
- /// Amazon S3 does not validate the KMS key ID provided in PutBucketEncryption requests.
- ///
- ///
- ///
- /// This action requires Amazon Web Services Signature Version 4. For more information,
- /// see
- /// Authenticating Requests (Amazon Web Services Signature Version 4).
- ///
- ///
- ///
- /// To use this operation, you must have permission to perform the s3:PutEncryptionConfiguration
- /// action. The bucket owner has this permission by default. The bucket owner can grant
- /// this permission to others. For more information about permissions, see Permissions
- /// Related to Bucket Subresource Operations and Managing
- /// Access Permissions to Your Amazon S3 Resources in the Amazon S3 User Guide.
- ///
- ///
- ///
- ///
- /// The following operations are related to PutBucketEncryption
:
- ///
- ///
- ///
- public class PutBucketEncryptionRequest : AmazonWebServiceRequest
- {
- private string bucketName;
- private ChecksumAlgorithm _checksumAlgorithm;
- private string contentMD5;
- private ServerSideEncryptionConfiguration serverSideEncryptionConfiguration;
- private string expectedBucketOwner;
-
- ///
- /// Gets and sets the property BucketName.
- ///
- /// Specifies default encryption for a bucket using server-side encryption with different key options.
- ///
- ///
- ///
- /// Directory buckets - When you use this operation with a directory bucket, you must use path-style requests
- /// in the format https://s3express-control.region_code.amazonaws.com/bucket-name.
- ///
- /// Virtual-hosted-style requests aren't supported.
- /// Directory bucket names must be unique in the chosen Availability Zone.
- /// Bucket names must also follow the format bucket_base_name--az_id--x-s3 (for example, amzn-s3-demo-bucket--usw2-az1--x-s3).
- ///
- /// For information about bucket naming restrictions, see Directory bucket naming rules
- /// in the Amazon S3 User Guide.
- ///
- ///
- public string BucketName
- {
- get { return this.bucketName; }
- set { this.bucketName = value; }
- }
-
- // Check to see if Bucket property is set
- internal bool IsSetBucketName()
- {
- return !(string.IsNullOrEmpty(this.bucketName));
- }
-
- ///
- /// Gets and sets the property ChecksumAlgorithm.
- ///
- /// Indicates the algorithm used to create the checksum for the object when you use the
- /// SDK. This header will not provide any additional functionality if you don't use the
- /// SDK. When you send this header, there must be a corresponding x-amz-checksum
- /// or x-amz-trailer header sent. Otherwise, Amazon S3 fails the request
- /// with the HTTP status code 400 Bad Request. For more information, see
- /// Checking
- /// object integrity in the Amazon S3 User Guide.
- ///
- ///
- ///
- /// If you provide an individual checksum, Amazon S3 ignores any provided ChecksumAlgorithm
- /// parameter.
- ///
- ///
- ///
- /// For directory buckets, when you use Amazon Web Services SDKs, CRC32 is the default checksum algorithm that's used for performance.
- ///
- ///
- public ChecksumAlgorithm ChecksumAlgorithm
- {
- get { return this._checksumAlgorithm; }
- set { this._checksumAlgorithm = value; }
- }
-
- // Check to see if ChecksumAlgorithm property is set
- internal bool IsSetChecksumAlgorithm()
- {
- return this._checksumAlgorithm != null;
- }
-
- ///
- /// Gets and sets the property ContentMD5.
- ///
- /// The Base64 encoded 128-bit MD5 digest of the server-side encryption configuration.
- ///
- ///
- ///
- /// For requests made using the Amazon Web Services Command Line Interface (CLI) or Amazon
- /// Web Services SDKs, this field is calculated automatically.
- ///
- ///
- ///
- /// This functionality is not supported for directory buckets.
- ///
- ///
- public string ContentMD5
- {
- get { return this.contentMD5; }
- set { this.contentMD5 = value; }
- }
-
- // Check to see if ContentMD5 property is set
- internal bool IsSetContentMD5()
- {
- return this.contentMD5 != null;
- }
-
- ///
- /// Container for server-side encryption configuration rules. Currently S3 supports one rule only.
- ///
- public ServerSideEncryptionConfiguration ServerSideEncryptionConfiguration
- {
- get { return this.serverSideEncryptionConfiguration; }
- set { this.serverSideEncryptionConfiguration = value; }
- }
-
- // Check to see if ServerSideEncryptionConfiguration property is set
- internal bool IsSetServerSideEncryptionConfiguration()
- {
- return this.serverSideEncryptionConfiguration != null;
- }
-
- ///
- /// Gets and sets the property ExpectedBucketOwner.
- ///
- /// The account ID of the expected bucket owner. If the account ID that you provide does
- /// not match the actual owner of the bucket, the request fails with the HTTP status code
- /// 403 Forbidden (access denied).
- ///
- ///
- ///
- /// For directory buckets, this header is not supported in this API operation.
- /// If you specify this header, the request fails with the HTTP status code 501 Not Implemented.
- ///
- ///
- public string ExpectedBucketOwner
- {
- get { return this.expectedBucketOwner; }
- set { this.expectedBucketOwner = value; }
- }
-
- ///
- /// Checks to see if ExpectedBucketOwner is set.
- ///
- /// true, if ExpectedBucketOwner property is set.
- internal bool IsSetExpectedBucketOwner()
- {
- return !String.IsNullOrEmpty(this.expectedBucketOwner);
- }
- }
-}
\ No newline at end of file
diff --git a/sdk/src/Services/S3/Custom/Model/ServerSideEncryptionByDefault.cs b/sdk/src/Services/S3/Custom/Model/ServerSideEncryptionByDefault.cs
deleted file mode 100644
index 81e45271876f..000000000000
--- a/sdk/src/Services/S3/Custom/Model/ServerSideEncryptionByDefault.cs
+++ /dev/null
@@ -1,168 +0,0 @@
-/*
- * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
- *
- * Licensed under the Apache License, Version 2.0 (the "License").
- * You may not use this file except in compliance with the License.
- * A copy of the License is located at
- *
- * http://aws.amazon.com/apache2.0
- *
- * or in the "license" file accompanying this file. This file is distributed
- * on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either
- * express or implied. See the License for the specific language governing
- * permissions and limitations under the License.
- */
-
-using System;
-using System.Collections.Generic;
-using System.Xml.Serialization;
-using System.Text;
-using System.IO;
-
-using Amazon.Runtime.Internal;
-
-namespace Amazon.S3.Model
-{
- ///
- ///
- /// Describes the default server-side encryption to apply to new objects in the bucket.
- /// If a PUT Object request doesn't specify any server-side encryption, this default encryption will be applied.
- /// For more information, see PutBucketEncryption.
- ///
- ///
- ///
- ///
- ///
- /// -
- ///
- /// General purpose buckets - If you don't specify a customer managed key at configuration, Amazon S3 automatically creates an Amazon Web Services KMS key (aws/s3)
- /// in your Amazon Web Services account the first time that you add an object encrypted with SSE-KMS to a bucket.
- /// By default, Amazon S3 uses this KMS key for SSE-KMS.
- ///
- ///
- ///
- /// -
- ///
- /// Directory buckets - Your SSE-KMS configuration can only support 1 customer managed key
- /// per directory bucket for the lifetime of the bucket.
- /// Amazon Web Services managed key (aws/s3) isn't supported.
- ///
- ///
- ///
- /// -
- ///
- /// Directory buckets - For directory buckets, there are only two supported options for server-side encryption: SSE-S3 and SSE-KMS.
- ///
- ///
- ///
- ///
- ///
- ///
- public class ServerSideEncryptionByDefault
- {
- private string serverSideEncryptionKeyManagementServiceKeyId;
- private ServerSideEncryptionMethod serverSideEncryptionAlgorithm;
-
- ///
- /// Gets and sets the property ServerSideEncryptionKeyManagementServiceKeyId.
- ///
- /// Amazon Web Services Key Management Service (KMS) customer managed key ID to use for the default encryption.
- ///
- ///
- ///
- ///
- /// -
- /// General purpose buckets - This parameter is allowed if and only if SSEAlgorithm is set to aws:kms or aws:kms:dsse.
- ///
- ///
- /// -
- /// Directory buckets - This parameter is allowed if and only if SSEAlgorithm is set to aws:kms.
- ///
- ///
- ///
- ///
- /// You can specify the key ID, key alias, or the Amazon Resource Name (ARN) of the KMS key.
- ///
- /// -
- /// Key ID: 1234abcd-12ab-34cd-56ef-1234567890ab
- ///
- /// -
- /// Key ARN: arn:aws:kms:us-east-2:111122223333:key/1234abcd-12ab-34cd-56ef-1234567890ab
- ///
- ///
- /// - Key Alias: alias/alias-name
- ///
- ///
- ///
- /// If you are using encryption with cross-account or Amazon Web Services service operations, you must use a fully qualified KMS key ARN.
- /// For more information, see Using encryption
- /// for cross-account operations.
- ///
- ///
- ///
- ///
- /// -
- ///
- /// General purpose buckets - If you're specifying a customer managed KMS key, we recommend using a fully qualified KMS key ARN.
- /// If you use a KMS key alias instead, then KMS resolves the key within the requester’s account. This behavior can result in data that's encrypted with a KMS key that
- /// belongs to the requester, and not the bucket owner.
- /// Also, if you use a key ID, you can run into a LogDestination undeliverable error when creating a VPC flow log.
- ///
- ///
- ///
- /// -
- ///
- /// Directory buckets - When you specify an KMS customer managed key
- /// for encryption in your directory bucket, only use the key ID or key ARN.
- /// The key alias format of the KMS key isn't supported.
- ///
- ///
- ///
- ///
- ///
- ///
- ///
- /// Amazon S3 only supports symmetric encryption KMS keys.
- /// For more information, see Asymmetric keys in Amazon Web Services KMS
- /// in the Amazon Web Services Key Management Service Developer Guide.
- ///
- ///
- ///
- [AWSProperty(Sensitive=true)]
- public string ServerSideEncryptionKeyManagementServiceKeyId
- {
- get { return this.serverSideEncryptionKeyManagementServiceKeyId; }
- set { this.serverSideEncryptionKeyManagementServiceKeyId = value; }
- }
-
- // Check to see if ServerSideEncryptionKeyManagementServiceKeyId property is set
- internal bool IsSetServerSideEncryptionKeyManagementServiceKeyId()
- {
- return this.serverSideEncryptionKeyManagementServiceKeyId != null;
- }
-
- ///
- ///
- /// Server-side encryption algorithm to use for the default encryption.
- ///
- ///
- ///
- ///
- /// For directory buckets, there are only two supported values for server-side encryption: AES256 and aws:kms.
- ///
- ///
- ///
- public ServerSideEncryptionMethod ServerSideEncryptionAlgorithm
- {
- get { return this.serverSideEncryptionAlgorithm; }
- set { this.serverSideEncryptionAlgorithm = value; }
- }
-
- // Check to see if ServerSideEncryptionAlgorithm property is set
- internal bool IsSetServerSideEncryptionAlgorithm()
- {
- return this.serverSideEncryptionAlgorithm != null;
- }
-
- }
-}
\ No newline at end of file
diff --git a/sdk/src/Services/S3/Custom/Model/ServerSideEncryptionConfiguration.cs b/sdk/src/Services/S3/Custom/Model/ServerSideEncryptionConfiguration.cs
deleted file mode 100644
index 8b342110670f..000000000000
--- a/sdk/src/Services/S3/Custom/Model/ServerSideEncryptionConfiguration.cs
+++ /dev/null
@@ -1,46 +0,0 @@
-/*
- * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
- *
- * Licensed under the Apache License, Version 2.0 (the "License").
- * You may not use this file except in compliance with the License.
- * A copy of the License is located at
- *
- * http://aws.amazon.com/apache2.0
- *
- * or in the "license" file accompanying this file. This file is distributed
- * on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either
- * express or implied. See the License for the specific language governing
- * permissions and limitations under the License.
- */
-
-using System;
-using System.Collections.Generic;
-using System.Xml.Serialization;
-using System.Text;
-using System.IO;
-
-namespace Amazon.S3.Model
-{
- ///
- /// ServerSideEncryptionConfiguration class
- ///
- public class ServerSideEncryptionConfiguration
- {
- private List serverSideEncryptionRules = AWSConfigs.InitializeCollections ? new List() : null;
-
- ///
- /// Container for information about a particular server-side encryption configuration rule.
- ///
- public List ServerSideEncryptionRules
- {
- get { return this.serverSideEncryptionRules; }
- set { this.serverSideEncryptionRules = value; }
- }
-
- // Check to see if ServerSideEncryptionRules property is set
- internal bool IsSetServerSideEncryptionRules()
- {
- return this.serverSideEncryptionRules != null && (this.serverSideEncryptionRules.Count > 0 || !AWSConfigs.InitializeCollections);
- }
- }
-}
\ No newline at end of file
diff --git a/sdk/src/Services/S3/Custom/Model/ServerSideEncryptionRule.cs b/sdk/src/Services/S3/Custom/Model/ServerSideEncryptionRule.cs
deleted file mode 100644
index 9b11eda44036..000000000000
--- a/sdk/src/Services/S3/Custom/Model/ServerSideEncryptionRule.cs
+++ /dev/null
@@ -1,109 +0,0 @@
-/*
- * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
- *
- * Licensed under the Apache License, Version 2.0 (the "License").
- * You may not use this file except in compliance with the License.
- * A copy of the License is located at
- *
- * http://aws.amazon.com/apache2.0
- *
- * or in the "license" file accompanying this file. This file is distributed
- * on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either
- * express or implied. See the License for the specific language governing
- * permissions and limitations under the License.
- */
-
-using System;
-using System.Collections.Generic;
-using System.Xml.Serialization;
-using System.Text;
-using System.IO;
-
-namespace Amazon.S3.Model
-{
- ///
- ///
- /// Specifies the default server-side encryption configuration.
- ///
- ///
- ///
- ///
- ///
- /// -
- ///
- /// General purpose buckets - If you're specifying a customer managed KMS key, we recommend using a fully qualified KMS key ARN.
- /// If you use a KMS key alias instead, then KMS resolves the key within the requester's account.
- /// This behavior can result in data that's encrypted with a KMS key that belongs to the requester, and not the bucket owner.
- ///
- ///
- ///
- /// -
- ///
- /// Directory buckets - When you specify an KMS customer managed key
- /// for encryption in your directory bucket, only use the key ID or key ARN.
- /// The key alias format of the KMS key isn't supported.
- ///
- ///
- ///
- ///
- ///
- ///
- public class ServerSideEncryptionRule
- {
- private ServerSideEncryptionByDefault serverSideEncryptionByDefault;
- private bool? bucketKeyEnabled;
-
- ///
- /// Describes the default server-side encryption to apply to
- /// new objects in the bucket. If Put Object request
- /// does not specify any server-side encryption,
- /// this default encryption will be applied.
- ///
- public ServerSideEncryptionByDefault ServerSideEncryptionByDefault
- {
- get { return this.serverSideEncryptionByDefault; }
- set { this.serverSideEncryptionByDefault = value; }
- }
- // Check to see if ServerSideEncryptionByDefault property is set
- internal bool IsSetServerSideEncryptionByDefault()
- {
- return this.serverSideEncryptionByDefault != null;
- }
-
- ///
- ///
- /// Specifies whether Amazon S3 should use bucket key with
- /// server-side encryption using KMS (SSE-KMS) for new objects in the bucket.
- /// Existing objects are not affected. Setting the BucketKeyEnabled
- /// element to true causes Amazon S3 to use bucket key.
- ///
- ///
- ///
- /// General purpose buckets - By default, S3 Bucket Key is not enabled.
- /// For more information, see Amazon S3 Bucket Keys in the Amazon S3 User Guide.
- ///
- ///
- ///
- /// Directory buckets - S3 Bucket Keys are always enabled for GET and PUT operations in a directory bucket and can't be disabled.
- /// S3 Bucket Keys aren't supported, when you copy SSE-KMS encrypted objects from general purpose buckets to directory buckets,
- /// from directory buckets to general purpose buckets, or between directory buckets, through
- /// CopyObject,
- /// UploadPartCopy,
- /// the Copy operation in Batch Operations,
- /// or the import jobs.
- ///
- /// In this case, Amazon S3 makes a call to KMS every time a copy request is made for a KMS-encrypted object.
- ///
- ///
- public bool? BucketKeyEnabled
- {
- get { return this.bucketKeyEnabled; }
- set { this.bucketKeyEnabled = value; }
- }
-
- internal bool IsSetBucketKeyEnabled()
- {
- return bucketKeyEnabled.HasValue;
- }
- }
-}
diff --git a/sdk/src/Services/S3/Custom/Model/GetBucketAccelerateConfigurationRequest.cs b/sdk/src/Services/S3/Generated/Model/GetBucketAccelerateConfigurationRequest.cs
similarity index 75%
rename from sdk/src/Services/S3/Custom/Model/GetBucketAccelerateConfigurationRequest.cs
rename to sdk/src/Services/S3/Generated/Model/GetBucketAccelerateConfigurationRequest.cs
index 80a4d2c23ef8..f7035e680774 100644
--- a/sdk/src/Services/S3/Custom/Model/GetBucketAccelerateConfigurationRequest.cs
+++ b/sdk/src/Services/S3/Generated/Model/GetBucketAccelerateConfigurationRequest.cs
@@ -12,33 +12,39 @@
* express or implied. See the License for the specific language governing
* permissions and limitations under the License.
*/
+
+/*
+ * Do not modify this file. This file is generated from the s3-2006-03-01.normal.json service model.
+ */
using System;
using System.Collections.Generic;
using System.Xml.Serialization;
using System.Text;
using System.IO;
+using System.Net;
using Amazon.Runtime;
using Amazon.Runtime.Internal;
+#pragma warning disable CS0612,CS0618,CS1570
namespace Amazon.S3.Model
{
///
/// Container for the parameters to the GetBucketAccelerateConfiguration operation.
///
///
- /// This operation is not supported by directory buckets.
+ /// This operation is not supported for directory buckets.
///
///
///
- /// This implementation of the GET action uses the accelerate
subresource
- /// to return the Transfer Acceleration state of a bucket, which is either Enabled
- /// or Suspended
. Amazon S3 Transfer Acceleration is a bucket-level feature
- /// that enables you to perform faster data transfers to and from Amazon S3.
+ /// This implementation of the GET action uses the accelerate subresource to return
+ /// the Transfer Acceleration state of a bucket, which is either Enabled or Suspended.
+ /// Amazon S3 Transfer Acceleration is a bucket-level feature that enables you to perform
+ /// faster data transfers to and from Amazon S3.
///
///
///
- /// To use this operation, you must have permission to perform the s3:GetAccelerateConfiguration
+ /// To use this operation, you must have permission to perform the s3:GetAccelerateConfiguration
/// action. The bucket owner has this permission by default. The bucket owner can grant
/// this permission to others. For more information about permissions, see Permissions
/// Related to Bucket Subresource Operations and Managing
@@ -46,15 +52,15 @@ namespace Amazon.S3.Model
///
///
///
- /// You set the Transfer Acceleration state of an existing bucket to Enabled
- /// or Suspended
by using the PutBucketAccelerateConfiguration
+ /// You set the Transfer Acceleration state of an existing bucket to Enabled or
+ /// Suspended by using the PutBucketAccelerateConfiguration
/// operation.
///
///
///
- /// A GET accelerate
request does not return a state value for a bucket that
- /// has no transfer acceleration state. A bucket has no Transfer Acceleration state if
- /// a state has never been set on the bucket.
+ /// A GET accelerate request does not return a state value for a bucket that has
+ /// no transfer acceleration state. A bucket has no Transfer Acceleration state if a state
+ /// has never been set on the bucket.
///
///
///
@@ -63,7 +69,7 @@ namespace Amazon.S3.Model
///
///
///
- /// The following operations are related to GetBucketAccelerateConfiguration
:
+ /// The following operations are related to GetBucketAccelerateConfiguration:
///
/// -
///
@@ -101,7 +107,7 @@ internal bool IsSetBucketName()
///
/// The account ID of the expected bucket owner. If the account ID that you provide does
/// not match the actual owner of the bucket, the request fails with the HTTP status code
- ///
403 Forbidden
(access denied).
+ /// 403 Forbidden (access denied).
///
///
public string ExpectedBucketOwner
@@ -110,13 +116,10 @@ public string ExpectedBucketOwner
set { this._expectedBucketOwner = value; }
}
- ///
- /// Checks to see if ExpectedBucketOwner is set.
- ///
- /// true, if ExpectedBucketOwner property is set.
+ // Check to see if ExpectedBucketOwner property is set
internal bool IsSetExpectedBucketOwner()
{
- return !String.IsNullOrEmpty(this._expectedBucketOwner);
+ return this._expectedBucketOwner != null;
}
///
@@ -133,6 +136,6 @@ internal bool IsSetRequestPayer()
{
return this._requestPayer != null;
}
+
}
-}
-
+}
\ No newline at end of file
diff --git a/sdk/src/Services/S3/Custom/Model/GetBucketAccelerateConfigurationResponse.cs b/sdk/src/Services/S3/Generated/Model/GetBucketAccelerateConfigurationResponse.cs
similarity index 88%
rename from sdk/src/Services/S3/Custom/Model/GetBucketAccelerateConfigurationResponse.cs
rename to sdk/src/Services/S3/Generated/Model/GetBucketAccelerateConfigurationResponse.cs
index b33e8e34ee7b..b7601aa75ba8 100644
--- a/sdk/src/Services/S3/Custom/Model/GetBucketAccelerateConfigurationResponse.cs
+++ b/sdk/src/Services/S3/Generated/Model/GetBucketAccelerateConfigurationResponse.cs
@@ -12,19 +12,25 @@
* express or implied. See the License for the specific language governing
* permissions and limitations under the License.
*/
+
+/*
+ * Do not modify this file. This file is generated from the s3-2006-03-01.normal.json service model.
+ */
using System;
using System.Collections.Generic;
using System.Xml.Serialization;
using System.Text;
using System.IO;
+using System.Net;
using Amazon.Runtime;
using Amazon.Runtime.Internal;
+#pragma warning disable CS0612,CS0618,CS1570
namespace Amazon.S3.Model
{
///
- /// The response class for GetBucketAccelerateConfiguration operation.
+ /// This is the response object from the GetBucketAccelerateConfiguration operation.
///
public partial class GetBucketAccelerateConfigurationResponse : AmazonWebServiceResponse
{
diff --git a/sdk/src/Services/S3/Generated/Model/GetBucketEncryptionRequest.cs b/sdk/src/Services/S3/Generated/Model/GetBucketEncryptionRequest.cs
new file mode 100644
index 000000000000..91ce83af6b64
--- /dev/null
+++ b/sdk/src/Services/S3/Generated/Model/GetBucketEncryptionRequest.cs
@@ -0,0 +1,152 @@
+/*
+ * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License").
+ * You may not use this file except in compliance with the License.
+ * A copy of the License is located at
+ *
+ * http://aws.amazon.com/apache2.0
+ *
+ * or in the "license" file accompanying this file. This file is distributed
+ * on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either
+ * express or implied. See the License for the specific language governing
+ * permissions and limitations under the License.
+ */
+
+/*
+ * Do not modify this file. This file is generated from the s3-2006-03-01.normal.json service model.
+ */
+using System;
+using System.Collections.Generic;
+using System.Xml.Serialization;
+using System.Text;
+using System.IO;
+using System.Net;
+
+using Amazon.Runtime;
+using Amazon.Runtime.Internal;
+
+#pragma warning disable CS0612,CS0618,CS1570
+namespace Amazon.S3.Model
+{
+ ///
+ /// Container for the parameters to the GetBucketEncryption operation.
+ /// Returns the default encryption configuration for an Amazon S3 bucket. By default,
+ /// all buckets have a default encryption configuration that uses server-side encryption
+ /// with Amazon S3 managed keys (SSE-S3).
+ ///
+ /// - Permissions
-
-
+ ///
+ /// General purpose bucket permissions - The s3:GetEncryptionConfiguration
+ /// permission is required in a policy. The bucket owner has this permission by default.
+ /// The bucket owner can grant this permission to others. For more information about permissions,
+ /// see Permissions
+ /// Related to Bucket Operations and Managing
+ /// Access Permissions to Your Amazon S3 Resources.
+ ///
+ ///
-
+ ///
+ /// Directory bucket permissions - To grant access to this API operation, you
+ /// must have the s3express:GetEncryptionConfiguration permission in an IAM identity-based
+ /// policy instead of a bucket policy. Cross-account access to this API operation isn't
+ /// supported. This operation can only be performed by the Amazon Web Services account
+ /// that owns the resource. For more information about directory bucket policies and permissions,
+ /// see Amazon
+ /// Web Services Identity and Access Management (IAM) for S3 Express One Zone in the
+ /// Amazon S3 User Guide.
+ ///
+ ///
- HTTP Host header syntax
-
+ ///
+ /// Directory buckets - The HTTP Host header syntax is s3express-control.region-code.amazonaws.com.
+ ///
+ ///
+ ///
+ /// The following operations are related to GetBucketEncryption:
+ ///
+ ///
+ ///
+ public partial class GetBucketEncryptionRequest : AmazonWebServiceRequest
+ {
+ private string _bucketName;
+ private string _expectedBucketOwner;
+
+ ///
+ /// Gets and sets the property BucketName.
+ ///
+ /// The name of the bucket from which the server-side encryption configuration is retrieved.
+ ///
+ ///
+ ///
+ /// Directory buckets - When you use this operation with a directory bucket,
+ /// you must use path-style requests in the format https://s3express-control.region-code.amazonaws.com/bucket-name
+ /// . Virtual-hosted-style requests aren't supported. Directory bucket names must
+ /// be unique in the chosen Zone (Availability Zone or Local Zone). Bucket names must
+ /// also follow the format bucket-base-name--zone-id--x-s3 (for
+ /// example, DOC-EXAMPLE-BUCKET--usw2-az1--x-s3). For information
+ /// about bucket naming restrictions, see Directory
+ /// bucket naming rules in the Amazon S3 User Guide
+ ///
+ ///
+ public string BucketName
+ {
+ get { return this._bucketName; }
+ set { this._bucketName = value; }
+ }
+
+ // Check to see if BucketName property is set
+ internal bool IsSetBucketName()
+ {
+ return this._bucketName != null;
+ }
+
+ ///
+ /// Gets and sets the property ExpectedBucketOwner.
+ ///
+ /// The account ID of the expected bucket owner. If the account ID that you provide does
+ /// not match the actual owner of the bucket, the request fails with the HTTP status code
+ /// 403 Forbidden (access denied).
+ ///
+ ///
+ ///
+ /// For directory buckets, this header is not supported in this API operation. If you
+ /// specify this header, the request fails with the HTTP status code 501 Not Implemented.
+ ///
+ ///
+ ///
+ public string ExpectedBucketOwner
+ {
+ get { return this._expectedBucketOwner; }
+ set { this._expectedBucketOwner = value; }
+ }
+
+ // Check to see if ExpectedBucketOwner property is set
+ internal bool IsSetExpectedBucketOwner()
+ {
+ return this._expectedBucketOwner != null;
+ }
+
+ }
+}
\ No newline at end of file
diff --git a/sdk/src/Services/S3/Custom/Model/GetBucketEncryptionResponse.cs b/sdk/src/Services/S3/Generated/Model/GetBucketEncryptionResponse.cs
similarity index 59%
rename from sdk/src/Services/S3/Custom/Model/GetBucketEncryptionResponse.cs
rename to sdk/src/Services/S3/Generated/Model/GetBucketEncryptionResponse.cs
index 57f4b1dc5f63..39fbe8b8c7e9 100644
--- a/sdk/src/Services/S3/Custom/Model/GetBucketEncryptionResponse.cs
+++ b/sdk/src/Services/S3/Generated/Model/GetBucketEncryptionResponse.cs
@@ -1,4 +1,4 @@
-/*
+/*
* Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
*
* Licensed under the Apache License, Version 2.0 (the "License").
@@ -12,35 +12,44 @@
* express or implied. See the License for the specific language governing
* permissions and limitations under the License.
*/
+
+/*
+ * Do not modify this file. This file is generated from the s3-2006-03-01.normal.json service model.
+ */
using System;
using System.Collections.Generic;
using System.Xml.Serialization;
using System.Text;
+using System.IO;
+using System.Net;
using Amazon.Runtime;
+using Amazon.Runtime.Internal;
+#pragma warning disable CS0612,CS0618,CS1570
namespace Amazon.S3.Model
{
///
- /// GetBucketEncryptionResponse Response
+ /// This is the response object from the GetBucketEncryption operation.
///
- public partial class GetBucketEncryptionResponse: AmazonWebServiceResponse
+ public partial class GetBucketEncryptionResponse : AmazonWebServiceResponse
{
- private ServerSideEncryptionConfiguration serverSideEncryptionConfiguration;
+ private ServerSideEncryptionConfiguration _serverSideEncryptionConfiguration;
///
- /// Container for server-side encryption configuration rules. Currently S3 supports one rule only.
+ /// Gets and sets the property ServerSideEncryptionConfiguration.
///
public ServerSideEncryptionConfiguration ServerSideEncryptionConfiguration
{
- get { return this.serverSideEncryptionConfiguration; }
- set { this.serverSideEncryptionConfiguration = value; }
+ get { return this._serverSideEncryptionConfiguration; }
+ set { this._serverSideEncryptionConfiguration = value; }
}
// Check to see if ServerSideEncryptionConfiguration property is set
internal bool IsSetServerSideEncryptionConfiguration()
{
- return this.serverSideEncryptionConfiguration != null;
+ return this._serverSideEncryptionConfiguration != null;
}
+
}
}
\ No newline at end of file
diff --git a/sdk/src/Services/S3/Generated/Model/Internal/MarshallTransformations/GetBucketAccelerateConfigurationRequestMarshaller.cs b/sdk/src/Services/S3/Generated/Model/Internal/MarshallTransformations/GetBucketAccelerateConfigurationRequestMarshaller.cs
new file mode 100644
index 000000000000..6915b872ae0b
--- /dev/null
+++ b/sdk/src/Services/S3/Generated/Model/Internal/MarshallTransformations/GetBucketAccelerateConfigurationRequestMarshaller.cs
@@ -0,0 +1,98 @@
+/*
+ * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License").
+ * You may not use this file except in compliance with the License.
+ * A copy of the License is located at
+ *
+ * http://aws.amazon.com/apache2.0
+ *
+ * or in the "license" file accompanying this file. This file is distributed
+ * on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either
+ * express or implied. See the License for the specific language governing
+ * permissions and limitations under the License.
+ */
+
+/*
+ * Do not modify this file. This file is generated from the s3-2006-03-01.normal.json service model.
+ */
+using System;
+using System.Collections.Generic;
+using System.Globalization;
+using System.IO;
+using System.Text;
+using System.Xml.Serialization;
+
+using Amazon.S3.Model;
+using Amazon.Runtime;
+using Amazon.Runtime.Internal;
+using Amazon.Runtime.Internal.Transform;
+using Amazon.Runtime.Internal.Util;
+using System.Xml;
+
+#pragma warning disable CS0612,CS0618
+namespace Amazon.S3.Model.Internal.MarshallTransformations
+{
+ ///
+ /// GetBucketAccelerateConfiguration Request Marshaller
+ ///
+ public partial class GetBucketAccelerateConfigurationRequestMarshaller : IMarshaller , IMarshaller
+ {
+ ///
+ /// Marshaller the request object to the HTTP request.
+ ///
+ ///
+ ///
+ public IRequest Marshall(AmazonWebServiceRequest input)
+ {
+ return this.Marshall((GetBucketAccelerateConfigurationRequest)input);
+ }
+
+ ///
+ /// Marshaller the request object to the HTTP request.
+ ///
+ ///
+ ///
+ public IRequest Marshall(GetBucketAccelerateConfigurationRequest publicRequest)
+ {
+ var request = new DefaultRequest(publicRequest, "Amazon.S3");
+ request.HttpMethod = "GET";
+ request.AddSubResource("accelerate");
+
+ if (publicRequest.IsSetExpectedBucketOwner())
+ {
+ request.Headers["x-amz-expected-bucket-owner"] = publicRequest.ExpectedBucketOwner;
+ }
+
+ if (publicRequest.IsSetRequestPayer())
+ {
+ request.Headers["x-amz-request-payer"] = publicRequest.RequestPayer;
+ }
+ if (string.IsNullOrEmpty(publicRequest.BucketName))
+ throw new System.ArgumentException("BucketName is a required property and must be set before making this call.", "GetBucketAccelerateConfigurationRequest.BucketName");
+ request.ResourcePath = "/";
+
+ PostMarshallCustomization(request, publicRequest);
+ return request;
+ }
+ private static GetBucketAccelerateConfigurationRequestMarshaller _instance = new GetBucketAccelerateConfigurationRequestMarshaller();
+
+ internal static GetBucketAccelerateConfigurationRequestMarshaller GetInstance()
+ {
+ return _instance;
+ }
+
+ ///
+ /// Gets the singleton.
+ ///
+ public static GetBucketAccelerateConfigurationRequestMarshaller Instance
+ {
+ get
+ {
+ return _instance;
+ }
+ }
+
+ partial void PostMarshallCustomization(DefaultRequest defaultRequest, GetBucketAccelerateConfigurationRequest publicRequest);
+ }
+}
\ No newline at end of file
diff --git a/sdk/src/Services/S3/Generated/Model/Internal/MarshallTransformations/GetBucketAccelerateConfigurationResponseUnmarshaller.cs b/sdk/src/Services/S3/Generated/Model/Internal/MarshallTransformations/GetBucketAccelerateConfigurationResponseUnmarshaller.cs
new file mode 100644
index 000000000000..a02eaa2fd51b
--- /dev/null
+++ b/sdk/src/Services/S3/Generated/Model/Internal/MarshallTransformations/GetBucketAccelerateConfigurationResponseUnmarshaller.cs
@@ -0,0 +1,128 @@
+/*
+ * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License").
+ * You may not use this file except in compliance with the License.
+ * A copy of the License is located at
+ *
+ * http://aws.amazon.com/apache2.0
+ *
+ * or in the "license" file accompanying this file. This file is distributed
+ * on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either
+ * express or implied. See the License for the specific language governing
+ * permissions and limitations under the License.
+ */
+
+/*
+ * Do not modify this file. This file is generated from the s3-2006-03-01.normal.json service model.
+ */
+using System;
+using System.Collections.Generic;
+using System.Globalization;
+using System.IO;
+using System.Net;
+using System.Text;
+using System.Xml.Serialization;
+
+using Amazon.S3.Model;
+using Amazon.Runtime;
+using Amazon.Runtime.Internal;
+using Amazon.Runtime.Internal.Transform;
+using Amazon.Runtime.Internal.Util;
+
+#pragma warning disable CS0612,CS0618
+namespace Amazon.S3.Model.Internal.MarshallTransformations
+{
+ ///
+ /// Response Unmarshaller for GetBucketAccelerateConfiguration operation
+ ///
+ public class GetBucketAccelerateConfigurationResponseUnmarshaller : S3ReponseUnmarshaller
+ {
+ ///
+ /// Unmarshaller the response from the service to the response class.
+ ///
+ ///
+ ///
+ public override AmazonWebServiceResponse Unmarshall(XmlUnmarshallerContext context)
+ {
+ GetBucketAccelerateConfigurationResponse response = new GetBucketAccelerateConfigurationResponse();
+ UnmarshallResult(context,response);
+ if (context.ResponseData.IsHeaderPresent("x-amz-request-charged"))
+ response.RequestCharged = context.ResponseData.GetHeaderValue("x-amz-request-charged");
+
+ return response;
+ }
+
+ private static void UnmarshallResult(XmlUnmarshallerContext context, GetBucketAccelerateConfigurationResponse response)
+ {
+ int originalDepth = context.CurrentDepth;
+ int targetDepth = originalDepth + 1;
+ if (context.IsStartOfDocument)
+ targetDepth += 1;
+ if (context.IsEmptyResponse)
+ {
+ return;
+ }
+ while (context.Read())
+ {
+ if (context.IsStartElement || context.IsAttribute)
+ {
+ if (context.TestExpression("Status", targetDepth))
+ {
+ var unmarshaller = StringUnmarshaller.Instance;
+ response.Status = unmarshaller.Unmarshall(context);
+ continue;
+ }
+ }
+ else if (context.IsEndElement && context.CurrentDepth < originalDepth)
+ {
+ return;
+ }
+ }
+
+ return;
+ }
+
+
+ ///
+ /// Unmarshaller error response to exception.
+ ///
+ ///
+ ///
+ ///
+ ///
+ public override AmazonServiceException UnmarshallException(XmlUnmarshallerContext context, Exception innerException, HttpStatusCode statusCode)
+ {
+ S3ErrorResponse errorResponse = S3ErrorResponseUnmarshaller.Instance.Unmarshall(context);
+ errorResponse.InnerException = innerException;
+ errorResponse.StatusCode = statusCode;
+
+ var responseBodyBytes = context.GetResponseBodyBytes();
+
+ using (var streamCopy = new MemoryStream(responseBodyBytes))
+ using (var contextCopy = new XmlUnmarshallerContext(streamCopy, false, null))
+ {
+ }
+ return base.ConstructS3Exception(context, errorResponse, innerException, statusCode);
+ }
+
+ private static GetBucketAccelerateConfigurationResponseUnmarshaller _instance = new GetBucketAccelerateConfigurationResponseUnmarshaller();
+
+ internal static GetBucketAccelerateConfigurationResponseUnmarshaller GetInstance()
+ {
+ return _instance;
+ }
+
+ ///
+ /// Gets the singleton.
+ ///
+ public static GetBucketAccelerateConfigurationResponseUnmarshaller Instance
+ {
+ get
+ {
+ return _instance;
+ }
+ }
+
+ }
+}
\ No newline at end of file
diff --git a/sdk/src/Services/S3/Generated/Model/Internal/MarshallTransformations/GetBucketEncryptionRequestMarshaller.cs b/sdk/src/Services/S3/Generated/Model/Internal/MarshallTransformations/GetBucketEncryptionRequestMarshaller.cs
new file mode 100644
index 000000000000..0125dda50a2d
--- /dev/null
+++ b/sdk/src/Services/S3/Generated/Model/Internal/MarshallTransformations/GetBucketEncryptionRequestMarshaller.cs
@@ -0,0 +1,93 @@
+/*
+ * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License").
+ * You may not use this file except in compliance with the License.
+ * A copy of the License is located at
+ *
+ * http://aws.amazon.com/apache2.0
+ *
+ * or in the "license" file accompanying this file. This file is distributed
+ * on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either
+ * express or implied. See the License for the specific language governing
+ * permissions and limitations under the License.
+ */
+
+/*
+ * Do not modify this file. This file is generated from the s3-2006-03-01.normal.json service model.
+ */
+using System;
+using System.Collections.Generic;
+using System.Globalization;
+using System.IO;
+using System.Text;
+using System.Xml.Serialization;
+
+using Amazon.S3.Model;
+using Amazon.Runtime;
+using Amazon.Runtime.Internal;
+using Amazon.Runtime.Internal.Transform;
+using Amazon.Runtime.Internal.Util;
+using System.Xml;
+
+#pragma warning disable CS0612,CS0618
+namespace Amazon.S3.Model.Internal.MarshallTransformations
+{
+ ///
+ /// GetBucketEncryption Request Marshaller
+ ///
+ public partial class GetBucketEncryptionRequestMarshaller : IMarshaller , IMarshaller
+ {
+ ///
+ /// Marshaller the request object to the HTTP request.
+ ///
+ ///
+ ///
+ public IRequest Marshall(AmazonWebServiceRequest input)
+ {
+ return this.Marshall((GetBucketEncryptionRequest)input);
+ }
+
+ ///
+ /// Marshaller the request object to the HTTP request.
+ ///
+ ///
+ ///
+ public IRequest Marshall(GetBucketEncryptionRequest publicRequest)
+ {
+ var request = new DefaultRequest(publicRequest, "Amazon.S3");
+ request.HttpMethod = "GET";
+ request.AddSubResource("encryption");
+
+ if (publicRequest.IsSetExpectedBucketOwner())
+ {
+ request.Headers["x-amz-expected-bucket-owner"] = publicRequest.ExpectedBucketOwner;
+ }
+ if (string.IsNullOrEmpty(publicRequest.BucketName))
+ throw new System.ArgumentException("BucketName is a required property and must be set before making this call.", "GetBucketEncryptionRequest.BucketName");
+ request.ResourcePath = "/";
+
+ PostMarshallCustomization(request, publicRequest);
+ return request;
+ }
+ private static GetBucketEncryptionRequestMarshaller _instance = new GetBucketEncryptionRequestMarshaller();
+
+ internal static GetBucketEncryptionRequestMarshaller GetInstance()
+ {
+ return _instance;
+ }
+
+ ///
+ /// Gets the singleton.
+ ///
+ public static GetBucketEncryptionRequestMarshaller Instance
+ {
+ get
+ {
+ return _instance;
+ }
+ }
+
+ partial void PostMarshallCustomization(DefaultRequest defaultRequest, GetBucketEncryptionRequest publicRequest);
+ }
+}
\ No newline at end of file
diff --git a/sdk/src/Services/S3/Custom/Model/Internal/MarshallTransformations/GetBucketEncryptionResponseUnmarshaller.cs b/sdk/src/Services/S3/Generated/Model/Internal/MarshallTransformations/GetBucketEncryptionResponseUnmarshaller.cs
similarity index 53%
rename from sdk/src/Services/S3/Custom/Model/Internal/MarshallTransformations/GetBucketEncryptionResponseUnmarshaller.cs
rename to sdk/src/Services/S3/Generated/Model/Internal/MarshallTransformations/GetBucketEncryptionResponseUnmarshaller.cs
index 9911eb066d94..7f92423f5be1 100644
--- a/sdk/src/Services/S3/Custom/Model/Internal/MarshallTransformations/GetBucketEncryptionResponseUnmarshaller.cs
+++ b/sdk/src/Services/S3/Generated/Model/Internal/MarshallTransformations/GetBucketEncryptionResponseUnmarshaller.cs
@@ -1,4 +1,4 @@
-/*
+/*
* Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
*
* Licensed under the Apache License, Version 2.0 (the "License").
@@ -12,63 +12,61 @@
* express or implied. See the License for the specific language governing
* permissions and limitations under the License.
*/
+
+/*
+ * Do not modify this file. This file is generated from the s3-2006-03-01.normal.json service model.
+ */
using System;
-using System.Net;
using System.Collections.Generic;
+using System.Globalization;
+using System.IO;
+using System.Net;
+using System.Text;
+using System.Xml.Serialization;
+
using Amazon.S3.Model;
using Amazon.Runtime;
using Amazon.Runtime.Internal;
using Amazon.Runtime.Internal.Transform;
+using Amazon.Runtime.Internal.Util;
+#pragma warning disable CS0612,CS0618
namespace Amazon.S3.Model.Internal.MarshallTransformations
{
///
- /// Get bucket encryption unmarshaller
- ///
+ /// Response Unmarshaller for GetBucketEncryption operation
+ ///
public class GetBucketEncryptionResponseUnmarshaller : S3ReponseUnmarshaller
{
///
/// Unmarshaller the response from the service to the response class.
- ///
+ ///
///
///
public override AmazonWebServiceResponse Unmarshall(XmlUnmarshallerContext context)
{
GetBucketEncryptionResponse response = new GetBucketEncryptionResponse();
-
- while (context.Read())
- {
- if (context.IsStartElement)
- {
- UnmarshallResult(context, response);
- continue;
- }
- }
-
-
+ UnmarshallResult(context,response);
+
return response;
- }
+ }
private static void UnmarshallResult(XmlUnmarshallerContext context, GetBucketEncryptionResponse response)
{
int originalDepth = context.CurrentDepth;
int targetDepth = originalDepth + 1;
-
- if (context.IsStartOfDocument)
- targetDepth += 2;
-
- response.ServerSideEncryptionConfiguration = new ServerSideEncryptionConfiguration();
+ if (context.IsEmptyResponse)
+ {
+ return;
+ }
while (context.Read())
{
if (context.IsStartElement || context.IsAttribute)
{
- if (context.TestExpression("Rule", targetDepth))
+ if (context.TestExpression("ServerSideEncryptionConfiguration", targetDepth))
{
- if (response.ServerSideEncryptionConfiguration.ServerSideEncryptionRules == null)
- {
- response.ServerSideEncryptionConfiguration.ServerSideEncryptionRules = new List();
- }
- response.ServerSideEncryptionConfiguration.ServerSideEncryptionRules.Add(ServerSideEncryptionRuleUnmarshaller.Instance.Unmarshall(context));
+ var unmarshaller = ServerSideEncryptionConfigurationUnmarshaller.Instance;
+ response.ServerSideEncryptionConfiguration = unmarshaller.Unmarshall(context);
continue;
}
}
@@ -77,24 +75,50 @@ private static void UnmarshallResult(XmlUnmarshallerContext context, GetBucketEn
return;
}
}
+
return;
}
+
- private static GetBucketEncryptionResponseUnmarshaller _instance;
+ ///
+ /// Unmarshaller error response to exception.
+ ///
+ ///
+ ///
+ ///
+ ///
+ public override AmazonServiceException UnmarshallException(XmlUnmarshallerContext context, Exception innerException, HttpStatusCode statusCode)
+ {
+ S3ErrorResponse errorResponse = S3ErrorResponseUnmarshaller.Instance.Unmarshall(context);
+ errorResponse.InnerException = innerException;
+ errorResponse.StatusCode = statusCode;
+
+ var responseBodyBytes = context.GetResponseBodyBytes();
+
+ using (var streamCopy = new MemoryStream(responseBodyBytes))
+ using (var contextCopy = new XmlUnmarshallerContext(streamCopy, false, null))
+ {
+ }
+ return base.ConstructS3Exception(context, errorResponse, innerException, statusCode);
+ }
+
+ private static GetBucketEncryptionResponseUnmarshaller _instance = new GetBucketEncryptionResponseUnmarshaller();
+
+ internal static GetBucketEncryptionResponseUnmarshaller GetInstance()
+ {
+ return _instance;
+ }
///
- /// Singleton for the unmarshaller
- ///
+ /// Gets the singleton.
+ ///
public static GetBucketEncryptionResponseUnmarshaller Instance
{
get
{
- if (_instance == null)
- {
- _instance = new GetBucketEncryptionResponseUnmarshaller();
- }
return _instance;
}
}
+
}
}
\ No newline at end of file
diff --git a/sdk/src/Services/S3/Generated/Model/Internal/MarshallTransformations/PutBucketEncryptionRequestMarshaller.cs b/sdk/src/Services/S3/Generated/Model/Internal/MarshallTransformations/PutBucketEncryptionRequestMarshaller.cs
new file mode 100644
index 000000000000..79dcb2fd5377
--- /dev/null
+++ b/sdk/src/Services/S3/Generated/Model/Internal/MarshallTransformations/PutBucketEncryptionRequestMarshaller.cs
@@ -0,0 +1,156 @@
+/*
+ * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License").
+ * You may not use this file except in compliance with the License.
+ * A copy of the License is located at
+ *
+ * http://aws.amazon.com/apache2.0
+ *
+ * or in the "license" file accompanying this file. This file is distributed
+ * on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either
+ * express or implied. See the License for the specific language governing
+ * permissions and limitations under the License.
+ */
+
+/*
+ * Do not modify this file. This file is generated from the s3-2006-03-01.normal.json service model.
+ */
+using System;
+using System.Collections.Generic;
+using System.Globalization;
+using System.IO;
+using System.Text;
+using System.Xml.Serialization;
+
+using Amazon.S3.Model;
+using Amazon.Runtime;
+using Amazon.Runtime.Internal;
+using Amazon.Runtime.Internal.Transform;
+using Amazon.Runtime.Internal.Util;
+using System.Xml;
+
+#pragma warning disable CS0612,CS0618
+namespace Amazon.S3.Model.Internal.MarshallTransformations
+{
+ ///
+ /// PutBucketEncryption Request Marshaller
+ ///
+ public partial class PutBucketEncryptionRequestMarshaller : IMarshaller , IMarshaller
+ {
+ ///
+ /// Marshaller the request object to the HTTP request.
+ ///
+ ///
+ ///
+ public IRequest Marshall(AmazonWebServiceRequest input)
+ {
+ return this.Marshall((PutBucketEncryptionRequest)input);
+ }
+
+ ///
+ /// Marshaller the request object to the HTTP request.
+ ///
+ ///
+ ///
+ public IRequest Marshall(PutBucketEncryptionRequest publicRequest)
+ {
+ var request = new DefaultRequest(publicRequest, "Amazon.S3");
+ request.HttpMethod = "PUT";
+ request.AddSubResource("encryption");
+
+ if (publicRequest.IsSetChecksumAlgorithm())
+ {
+ request.Headers["x-amz-sdk-checksum-algorithm"] = publicRequest.ChecksumAlgorithm;
+ }
+
+ if (publicRequest.IsSetContentMD5())
+ {
+ request.Headers["Content-MD5"] = publicRequest.ContentMD5;
+ }
+
+ if (publicRequest.IsSetExpectedBucketOwner())
+ {
+ request.Headers["x-amz-expected-bucket-owner"] = publicRequest.ExpectedBucketOwner;
+ }
+ if (string.IsNullOrEmpty(publicRequest.BucketName))
+ throw new System.ArgumentException("BucketName is a required property and must be set before making this call.", "PutBucketEncryptionRequest.BucketName");
+ request.ResourcePath = "/";
+ var stringWriter = new XMLEncodedStringWriter(CultureInfo.InvariantCulture);
+ using (var xmlWriter = XmlWriter.Create(stringWriter, new XmlWriterSettings() { Encoding = System.Text.Encoding.UTF8, OmitXmlDeclaration = true, NewLineHandling = NewLineHandling.Entitize }))
+ {
+ if (publicRequest.IsSetServerSideEncryptionConfiguration())
+ {
+ xmlWriter.WriteStartElement("ServerSideEncryptionConfiguration", "http://s3.amazonaws.com/doc/2006-03-01/");
+ var publicRequestServerSideEncryptionConfigurationServerSideEncryptionRules = publicRequest.ServerSideEncryptionConfiguration.ServerSideEncryptionRules;
+ if (publicRequestServerSideEncryptionConfigurationServerSideEncryptionRules != null && (publicRequestServerSideEncryptionConfigurationServerSideEncryptionRules.Count > 0 || !AWSConfigs.InitializeCollections))
+ {
+ foreach (var publicRequestServerSideEncryptionConfigurationServerSideEncryptionRulesValue in publicRequestServerSideEncryptionConfigurationServerSideEncryptionRules)
+ {
+ if (publicRequestServerSideEncryptionConfigurationServerSideEncryptionRulesValue != null)
+ {
+ xmlWriter.WriteStartElement("Rule");
+ if(publicRequestServerSideEncryptionConfigurationServerSideEncryptionRulesValue.IsSetBucketKeyEnabled())
+ xmlWriter.WriteElementString("BucketKeyEnabled", StringUtils.FromBool(publicRequestServerSideEncryptionConfigurationServerSideEncryptionRulesValue.BucketKeyEnabled.Value));
+ if (publicRequestServerSideEncryptionConfigurationServerSideEncryptionRulesValue.ServerSideEncryptionByDefault != null)
+ {
+ xmlWriter.WriteStartElement("ApplyServerSideEncryptionByDefault");
+ if(publicRequestServerSideEncryptionConfigurationServerSideEncryptionRulesValue.ServerSideEncryptionByDefault.IsSetServerSideEncryptionAlgorithm())
+ xmlWriter.WriteElementString("SSEAlgorithm", StringUtils.FromString(publicRequestServerSideEncryptionConfigurationServerSideEncryptionRulesValue.ServerSideEncryptionByDefault.ServerSideEncryptionAlgorithm));
+ if(publicRequestServerSideEncryptionConfigurationServerSideEncryptionRulesValue.ServerSideEncryptionByDefault.IsSetServerSideEncryptionKeyManagementServiceKeyId())
+ xmlWriter.WriteElementString("KMSMasterKeyID", StringUtils.FromString(publicRequestServerSideEncryptionConfigurationServerSideEncryptionRulesValue.ServerSideEncryptionByDefault.ServerSideEncryptionKeyManagementServiceKeyId));
+ xmlWriter.WriteEndElement();
+ }
+ xmlWriter.WriteEndElement();
+ }
+ }
+ }
+
+ xmlWriter.WriteEndElement();
+ }
+ }
+ try
+ {
+ string content = stringWriter.ToString();
+ request.Content = System.Text.Encoding.UTF8.GetBytes(content);
+ request.Headers["Content-Type"] = "application/xml";
+ if (publicRequest.IsSetContentMD5())
+ request.Headers[Amazon.Util.HeaderKeys.ContentMD5Header] = publicRequest.ContentMD5;
+ ChecksumUtils.SetChecksumData(
+ request,
+ publicRequest.ChecksumAlgorithm,
+ fallbackToMD5: false,
+ isRequestChecksumRequired: true,
+ headerName: "x-amz-sdk-checksum-algorithm"
+ );
+ request.Headers[Amazon.Util.HeaderKeys.XAmzApiVersion] = "2006-03-01";
+ }
+ catch (EncoderFallbackException e)
+ {
+ throw new AmazonServiceException("Unable to marshall request to XML", e);
+ }
+
+ PostMarshallCustomization(request, publicRequest);
+ return request;
+ }
+ private static PutBucketEncryptionRequestMarshaller _instance = new PutBucketEncryptionRequestMarshaller();
+
+ internal static PutBucketEncryptionRequestMarshaller GetInstance()
+ {
+ return _instance;
+ }
+
+ ///
+ /// Gets the singleton.
+ ///
+ public static PutBucketEncryptionRequestMarshaller Instance
+ {
+ get
+ {
+ return _instance;
+ }
+ }
+
+ partial void PostMarshallCustomization(DefaultRequest defaultRequest, PutBucketEncryptionRequest publicRequest);
+ }
+}
\ No newline at end of file
diff --git a/sdk/src/Services/S3/Generated/Model/Internal/MarshallTransformations/PutBucketEncryptionResponseUnmarshaller.cs b/sdk/src/Services/S3/Generated/Model/Internal/MarshallTransformations/PutBucketEncryptionResponseUnmarshaller.cs
new file mode 100644
index 000000000000..ba640ee35990
--- /dev/null
+++ b/sdk/src/Services/S3/Generated/Model/Internal/MarshallTransformations/PutBucketEncryptionResponseUnmarshaller.cs
@@ -0,0 +1,95 @@
+/*
+ * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License").
+ * You may not use this file except in compliance with the License.
+ * A copy of the License is located at
+ *
+ * http://aws.amazon.com/apache2.0
+ *
+ * or in the "license" file accompanying this file. This file is distributed
+ * on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either
+ * express or implied. See the License for the specific language governing
+ * permissions and limitations under the License.
+ */
+
+/*
+ * Do not modify this file. This file is generated from the s3-2006-03-01.normal.json service model.
+ */
+using System;
+using System.Collections.Generic;
+using System.Globalization;
+using System.IO;
+using System.Net;
+using System.Text;
+using System.Xml.Serialization;
+
+using Amazon.S3.Model;
+using Amazon.Runtime;
+using Amazon.Runtime.Internal;
+using Amazon.Runtime.Internal.Transform;
+using Amazon.Runtime.Internal.Util;
+
+#pragma warning disable CS0612,CS0618
+namespace Amazon.S3.Model.Internal.MarshallTransformations
+{
+ ///
+ /// Response Unmarshaller for PutBucketEncryption operation
+ ///
+ public class PutBucketEncryptionResponseUnmarshaller : S3ReponseUnmarshaller
+ {
+ ///
+ /// Unmarshaller the response from the service to the response class.
+ ///
+ ///
+ ///
+ public override AmazonWebServiceResponse Unmarshall(XmlUnmarshallerContext context)
+ {
+ PutBucketEncryptionResponse response = new PutBucketEncryptionResponse();
+
+ return response;
+ }
+
+
+ ///
+ /// Unmarshaller error response to exception.
+ ///
+ ///
+ ///
+ ///
+ ///
+ public override AmazonServiceException UnmarshallException(XmlUnmarshallerContext context, Exception innerException, HttpStatusCode statusCode)
+ {
+ S3ErrorResponse errorResponse = S3ErrorResponseUnmarshaller.Instance.Unmarshall(context);
+ errorResponse.InnerException = innerException;
+ errorResponse.StatusCode = statusCode;
+
+ var responseBodyBytes = context.GetResponseBodyBytes();
+
+ using (var streamCopy = new MemoryStream(responseBodyBytes))
+ using (var contextCopy = new XmlUnmarshallerContext(streamCopy, false, null))
+ {
+ }
+ return base.ConstructS3Exception(context, errorResponse, innerException, statusCode);
+ }
+
+ private static PutBucketEncryptionResponseUnmarshaller _instance = new PutBucketEncryptionResponseUnmarshaller();
+
+ internal static PutBucketEncryptionResponseUnmarshaller GetInstance()
+ {
+ return _instance;
+ }
+
+ ///
+ /// Gets the singleton.
+ ///
+ public static PutBucketEncryptionResponseUnmarshaller Instance
+ {
+ get
+ {
+ return _instance;
+ }
+ }
+
+ }
+}
\ No newline at end of file
diff --git a/sdk/src/Services/S3/Custom/Model/Internal/MarshallTransformations/ServerSideEncryptionByDefaultUnmarshaller.cs b/sdk/src/Services/S3/Generated/Model/Internal/MarshallTransformations/ServerSideEncryptionByDefaultUnmarshaller.cs
similarity index 62%
rename from sdk/src/Services/S3/Custom/Model/Internal/MarshallTransformations/ServerSideEncryptionByDefaultUnmarshaller.cs
rename to sdk/src/Services/S3/Generated/Model/Internal/MarshallTransformations/ServerSideEncryptionByDefaultUnmarshaller.cs
index c9c7a0338378..2d1372b771d8 100644
--- a/sdk/src/Services/S3/Custom/Model/Internal/MarshallTransformations/ServerSideEncryptionByDefaultUnmarshaller.cs
+++ b/sdk/src/Services/S3/Generated/Model/Internal/MarshallTransformations/ServerSideEncryptionByDefaultUnmarshaller.cs
@@ -1,4 +1,4 @@
-/*
+/*
* Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
*
* Licensed under the Apache License, Version 2.0 (the "License").
@@ -13,72 +13,80 @@
* permissions and limitations under the License.
*/
+/*
+ * Do not modify this file. This file is generated from the s3-2006-03-01.normal.json service model.
+ */
+using System;
using System.Collections.Generic;
+using System.Globalization;
+using System.IO;
+using System.Net;
+using System.Text;
+using System.Xml.Serialization;
using Amazon.S3.Model;
+using Amazon.Runtime;
+using Amazon.Runtime.Internal;
using Amazon.Runtime.Internal.Transform;
+using Amazon.Runtime.Internal.Util;
+#pragma warning disable CS0612,CS0618
namespace Amazon.S3.Model.Internal.MarshallTransformations
{
///
- /// ServerSideEncryptionByDefault unmarshaller
- ///
+ /// Response Unmarshaller for ServerSideEncryptionByDefault Object
+ ///
public class ServerSideEncryptionByDefaultUnmarshaller : IXmlUnmarshaller
{
///
/// Unmarshaller the response from the service to the response class.
- ///
+ ///
///
///
public ServerSideEncryptionByDefault Unmarshall(XmlUnmarshallerContext context)
{
- ServerSideEncryptionByDefault serverSideEncryptionByDefault = new ServerSideEncryptionByDefault();
+ ServerSideEncryptionByDefault unmarshalledObject = new ServerSideEncryptionByDefault();
int originalDepth = context.CurrentDepth;
int targetDepth = originalDepth + 1;
-
- if (context.IsStartOfDocument)
- targetDepth += 2;
-
+
+ if (context.IsStartOfDocument)
+ targetDepth += 2;
+
while (context.Read())
{
if (context.IsStartElement || context.IsAttribute)
{
if (context.TestExpression("SSEAlgorithm", targetDepth))
{
- serverSideEncryptionByDefault.ServerSideEncryptionAlgorithm = StringUnmarshaller.Instance.Unmarshall(context);
+ var unmarshaller = StringUnmarshaller.Instance;
+ unmarshalledObject.ServerSideEncryptionAlgorithm = unmarshaller.Unmarshall(context);
continue;
}
if (context.TestExpression("KMSMasterKeyID", targetDepth))
{
- serverSideEncryptionByDefault.ServerSideEncryptionKeyManagementServiceKeyId = StringUnmarshaller.Instance.Unmarshall(context);
+ var unmarshaller = StringUnmarshaller.Instance;
+ unmarshalledObject.ServerSideEncryptionKeyManagementServiceKeyId = unmarshaller.Unmarshall(context);
continue;
}
}
else if (context.IsEndElement && context.CurrentDepth < originalDepth)
{
- return serverSideEncryptionByDefault;
+ return unmarshalledObject;
}
- }
-
- return serverSideEncryptionByDefault;
+ }
+ return unmarshalledObject;
}
-
- private static ServerSideEncryptionByDefaultUnmarshaller _instance;
+ private static ServerSideEncryptionByDefaultUnmarshaller _instance = new ServerSideEncryptionByDefaultUnmarshaller();
///
- /// Singleton for the unmarshaller
- ///
+ /// Gets the singleton.
+ ///
public static ServerSideEncryptionByDefaultUnmarshaller Instance
{
get
{
- if (_instance == null)
- {
- _instance = new ServerSideEncryptionByDefaultUnmarshaller();
- }
return _instance;
}
}
-
}
}
\ No newline at end of file
diff --git a/sdk/src/Services/S3/Generated/Model/Internal/MarshallTransformations/ServerSideEncryptionConfigurationUnmarshaller.cs b/sdk/src/Services/S3/Generated/Model/Internal/MarshallTransformations/ServerSideEncryptionConfigurationUnmarshaller.cs
new file mode 100644
index 000000000000..39113efbf936
--- /dev/null
+++ b/sdk/src/Services/S3/Generated/Model/Internal/MarshallTransformations/ServerSideEncryptionConfigurationUnmarshaller.cs
@@ -0,0 +1,90 @@
+/*
+ * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License").
+ * You may not use this file except in compliance with the License.
+ * A copy of the License is located at
+ *
+ * http://aws.amazon.com/apache2.0
+ *
+ * or in the "license" file accompanying this file. This file is distributed
+ * on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either
+ * express or implied. See the License for the specific language governing
+ * permissions and limitations under the License.
+ */
+
+/*
+ * Do not modify this file. This file is generated from the s3-2006-03-01.normal.json service model.
+ */
+using System;
+using System.Collections.Generic;
+using System.Globalization;
+using System.IO;
+using System.Net;
+using System.Text;
+using System.Xml.Serialization;
+
+using Amazon.S3.Model;
+using Amazon.Runtime;
+using Amazon.Runtime.Internal;
+using Amazon.Runtime.Internal.Transform;
+using Amazon.Runtime.Internal.Util;
+
+#pragma warning disable CS0612,CS0618
+namespace Amazon.S3.Model.Internal.MarshallTransformations
+{
+ ///
+ /// Response Unmarshaller for ServerSideEncryptionConfiguration Object
+ ///
+ public class ServerSideEncryptionConfigurationUnmarshaller : IXmlUnmarshaller
+ {
+ ///
+ /// Unmarshaller the response from the service to the response class.
+ ///
+ ///
+ ///
+ public ServerSideEncryptionConfiguration Unmarshall(XmlUnmarshallerContext context)
+ {
+ ServerSideEncryptionConfiguration unmarshalledObject = new ServerSideEncryptionConfiguration();
+ int originalDepth = context.CurrentDepth;
+ int targetDepth = originalDepth + 1;
+
+ if (context.IsStartOfDocument)
+ targetDepth += 2;
+
+ while (context.Read())
+ {
+ if (context.IsStartElement || context.IsAttribute)
+ {
+ if (context.TestExpression("Rule", targetDepth))
+ {
+ if (unmarshalledObject.ServerSideEncryptionRules == null)
+ {
+ unmarshalledObject.ServerSideEncryptionRules = new List();
+ }
+ var unmarshaller = ServerSideEncryptionRuleUnmarshaller.Instance;
+ unmarshalledObject.ServerSideEncryptionRules.Add(unmarshaller.Unmarshall(context));
+ continue;
+ }
+ }
+ else if (context.IsEndElement && context.CurrentDepth < originalDepth)
+ {
+ return unmarshalledObject;
+ }
+ }
+ return unmarshalledObject;
+ }
+ private static ServerSideEncryptionConfigurationUnmarshaller _instance = new ServerSideEncryptionConfigurationUnmarshaller();
+
+ ///
+ /// Gets the singleton.
+ ///
+ public static ServerSideEncryptionConfigurationUnmarshaller Instance
+ {
+ get
+ {
+ return _instance;
+ }
+ }
+ }
+}
\ No newline at end of file
diff --git a/sdk/src/Services/S3/Custom/Model/Internal/MarshallTransformations/ServerSideEncryptionRuleUnmarshaller.cs b/sdk/src/Services/S3/Generated/Model/Internal/MarshallTransformations/ServerSideEncryptionRuleUnmarshaller.cs
similarity index 62%
rename from sdk/src/Services/S3/Custom/Model/Internal/MarshallTransformations/ServerSideEncryptionRuleUnmarshaller.cs
rename to sdk/src/Services/S3/Generated/Model/Internal/MarshallTransformations/ServerSideEncryptionRuleUnmarshaller.cs
index da555537f6da..0e83dc53bccd 100644
--- a/sdk/src/Services/S3/Custom/Model/Internal/MarshallTransformations/ServerSideEncryptionRuleUnmarshaller.cs
+++ b/sdk/src/Services/S3/Generated/Model/Internal/MarshallTransformations/ServerSideEncryptionRuleUnmarshaller.cs
@@ -1,4 +1,4 @@
-/*
+/*
* Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
*
* Licensed under the Apache License, Version 2.0 (the "License").
@@ -13,77 +13,80 @@
* permissions and limitations under the License.
*/
+/*
+ * Do not modify this file. This file is generated from the s3-2006-03-01.normal.json service model.
+ */
+using System;
using System.Collections.Generic;
+using System.Globalization;
+using System.IO;
+using System.Net;
+using System.Text;
+using System.Xml.Serialization;
using Amazon.S3.Model;
+using Amazon.Runtime;
+using Amazon.Runtime.Internal;
using Amazon.Runtime.Internal.Transform;
-using Amazon.S3.Util;
+using Amazon.Runtime.Internal.Util;
+#pragma warning disable CS0612,CS0618
namespace Amazon.S3.Model.Internal.MarshallTransformations
{
///
- /// ServerSideEncryptionRule unmarshaller
- ///
+ /// Response Unmarshaller for ServerSideEncryptionRule Object
+ ///
public class ServerSideEncryptionRuleUnmarshaller : IXmlUnmarshaller
{
///
/// Unmarshaller the response from the service to the response class.
- ///
+ ///
///
///
public ServerSideEncryptionRule Unmarshall(XmlUnmarshallerContext context)
{
- ServerSideEncryptionRule rule = new ServerSideEncryptionRule();
+ ServerSideEncryptionRule unmarshalledObject = new ServerSideEncryptionRule();
int originalDepth = context.CurrentDepth;
int targetDepth = originalDepth + 1;
-
- if (context.IsStartOfDocument)
- targetDepth += 2;
-
+
+ if (context.IsStartOfDocument)
+ targetDepth += 2;
+
while (context.Read())
{
if (context.IsStartElement || context.IsAttribute)
{
- if (context.TestExpression("ApplyServerSideEncryptionByDefault", targetDepth))
+ if (context.TestExpression("BucketKeyEnabled", targetDepth))
{
- rule.ServerSideEncryptionByDefault = ServerSideEncryptionByDefaultUnmarshaller.Instance.Unmarshall(context);
-
+ var unmarshaller = NullableBoolUnmarshaller.Instance;
+ unmarshalledObject.BucketKeyEnabled = unmarshaller.Unmarshall(context);
continue;
}
-
- if (context.TestExpression("BucketKeyEnabled", targetDepth))
+ if (context.TestExpression("ApplyServerSideEncryptionByDefault", targetDepth))
{
- rule.BucketKeyEnabled = BoolUnmarshaller.Instance.Unmarshall(context);
-
+ var unmarshaller = ServerSideEncryptionByDefaultUnmarshaller.Instance;
+ unmarshalledObject.ServerSideEncryptionByDefault = unmarshaller.Unmarshall(context);
continue;
}
}
else if (context.IsEndElement && context.CurrentDepth < originalDepth)
{
- return rule;
+ return unmarshalledObject;
}
- }
-
- return rule;
-
+ }
+ return unmarshalledObject;
}
-
- private static ServerSideEncryptionRuleUnmarshaller _instance;
+ private static ServerSideEncryptionRuleUnmarshaller _instance = new ServerSideEncryptionRuleUnmarshaller();
///
- /// Singleton for the unmarshaller
- ///
+ /// Gets the singleton.
+ ///
public static ServerSideEncryptionRuleUnmarshaller Instance
{
get
{
- if (_instance == null)
- {
- _instance = new ServerSideEncryptionRuleUnmarshaller();
- }
return _instance;
}
}
-
}
}
\ No newline at end of file
diff --git a/sdk/src/Services/S3/Generated/Model/ListBucketsResponse.cs b/sdk/src/Services/S3/Generated/Model/ListBucketsResponse.cs
index 66e8ddcb9384..55f5adf4afc8 100644
--- a/sdk/src/Services/S3/Generated/Model/ListBucketsResponse.cs
+++ b/sdk/src/Services/S3/Generated/Model/ListBucketsResponse.cs
@@ -44,6 +44,11 @@ public partial class ListBucketsResponse : AmazonWebServiceResponse
///
/// The list of buckets owned by the requester.
///
+ ///
+ /// Starting with version 4 of the SDK this property will default to null. If no data for this property is returned
+ /// from the service the property will also be null. This was changed to improve performance and allow the SDK and caller
+ /// to distinguish between a property not set or a property being empty to clear out a value. To retain the previous
+ /// SDK behavior set the AWSConfigs.InitializeCollections static property to true.
///
public List Buckets
{
diff --git a/sdk/src/Services/S3/Generated/Model/ListDirectoryBucketsResponse.cs b/sdk/src/Services/S3/Generated/Model/ListDirectoryBucketsResponse.cs
index 9cea377f54a7..7e2ff95dc9c7 100644
--- a/sdk/src/Services/S3/Generated/Model/ListDirectoryBucketsResponse.cs
+++ b/sdk/src/Services/S3/Generated/Model/ListDirectoryBucketsResponse.cs
@@ -42,6 +42,11 @@ public partial class ListDirectoryBucketsResponse : AmazonWebServiceResponse
///
/// The list of buckets owned by the requester.
///
+ ///
+ /// Starting with version 4 of the SDK this property will default to null. If no data for this property is returned
+ /// from the service the property will also be null. This was changed to improve performance and allow the SDK and caller
+ /// to distinguish between a property not set or a property being empty to clear out a value. To retain the previous
+ /// SDK behavior set the AWSConfigs.InitializeCollections static property to true.
///
public List Buckets
{
diff --git a/sdk/src/Services/S3/Generated/Model/PutBucketEncryptionRequest.cs b/sdk/src/Services/S3/Generated/Model/PutBucketEncryptionRequest.cs
new file mode 100644
index 000000000000..b536df68270e
--- /dev/null
+++ b/sdk/src/Services/S3/Generated/Model/PutBucketEncryptionRequest.cs
@@ -0,0 +1,319 @@
+/*
+ * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License").
+ * You may not use this file except in compliance with the License.
+ * A copy of the License is located at
+ *
+ * http://aws.amazon.com/apache2.0
+ *
+ * or in the "license" file accompanying this file. This file is distributed
+ * on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either
+ * express or implied. See the License for the specific language governing
+ * permissions and limitations under the License.
+ */
+
+/*
+ * Do not modify this file. This file is generated from the s3-2006-03-01.normal.json service model.
+ */
+using System;
+using System.Collections.Generic;
+using System.Xml.Serialization;
+using System.Text;
+using System.IO;
+using System.Net;
+
+using Amazon.Runtime;
+using Amazon.Runtime.Internal;
+
+#pragma warning disable CS0612,CS0618,CS1570
+namespace Amazon.S3.Model
+{
+ ///
+ /// Container for the parameters to the PutBucketEncryption operation.
+ /// This operation configures default encryption and Amazon S3 Bucket Keys for an existing
+ /// bucket.
+ ///
+ ///
+ ///
+ /// Directory buckets - For directory buckets, you must make requests for this
+ /// API operation to the Regional endpoint. These endpoints support path-style requests
+ /// in the format https://s3express-control.region-code.amazonaws.com/bucket-name
+ /// . Virtual-hosted-style requests aren't supported. For more information about endpoints
+ /// in Availability Zones, see Regional
+ /// and Zonal endpoints for directory buckets in Availability Zones in the Amazon
+ /// S3 User Guide. For more information about endpoints in Local Zones, see Concepts
+ /// for directory buckets in Local Zones in the Amazon S3 User Guide.
+ ///
+ ///
+ ///
+ /// By default, all buckets have a default encryption configuration that uses server-side
+ /// encryption with Amazon S3 managed keys (SSE-S3).
+ ///
+ /// -
+ ///
+ /// General purpose buckets
+ ///
+ ///
-
+ ///
+ /// You can optionally configure default encryption for a bucket by using server-side
+ /// encryption with Key Management Service (KMS) keys (SSE-KMS) or dual-layer server-side
+ /// encryption with Amazon Web Services KMS keys (DSSE-KMS). If you specify default encryption
+ /// by using SSE-KMS, you can also configure Amazon
+ /// S3 Bucket Keys. For information about the bucket default encryption feature, see
+ /// Amazon
+ /// S3 Bucket Default Encryption in the Amazon S3 User Guide.
+ ///
+ ///
-
+ ///
+ /// If you use PutBucketEncryption to set your default
+ /// bucket encryption to SSE-KMS, you should verify that your KMS key ID is correct.
+ /// Amazon S3 doesn't validate the KMS key ID provided in PutBucketEncryption requests.
+ ///
+ ///
-
+ ///
+ /// Directory buckets - You can optionally configure default encryption for a
+ /// bucket by using server-side encryption with Key Management Service (KMS) keys (SSE-KMS).
+ ///
+ ///
-
+ ///
+ /// We recommend that the bucket's default encryption uses the desired encryption configuration
+ /// and you don't override the bucket default encryption in your CreateSession
+ /// requests or PUT object requests. Then, new objects are automatically encrypted
+ /// with the desired encryption settings. For more information about the encryption overriding
+ /// behaviors in directory buckets, see Specifying
+ /// server-side encryption with KMS for new object uploads.
+ ///
+ ///
-
+ ///
+ /// Your SSE-KMS configuration can only support 1 customer
+ /// managed key per directory bucket's lifetime. The Amazon
+ /// Web Services managed key (aws/s3) isn't supported.
+ ///
+ ///
-
+ ///
+ /// S3 Bucket Keys are always enabled for GET and PUT operations in a directory
+ /// bucket and can’t be disabled. S3 Bucket Keys aren't supported, when you copy SSE-KMS
+ /// encrypted objects from general purpose buckets to directory buckets, from directory
+ /// buckets to general purpose buckets, or between directory buckets, through CopyObject,
+ /// UploadPartCopy,
+ /// the
+ /// Copy operation in Batch Operations, or the
+ /// import jobs. In this case, Amazon S3 makes a call to KMS every time a copy request
+ /// is made for a KMS-encrypted object.
+ ///
+ ///
-
+ ///
+ /// When you specify an KMS
+ /// customer managed key for encryption in your directory bucket, only use the key
+ /// ID or key ARN. The key alias format of the KMS key isn't supported.
+ ///
+ ///
-
+ ///
+ /// For directory buckets, if you use PutBucketEncryption to set your default
+ /// bucket encryption to SSE-KMS, Amazon S3 validates the KMS key ID provided in PutBucketEncryption
+ /// requests.
+ ///
+ ///
+ ///
+ /// If you're specifying a customer managed KMS key, we recommend using a fully qualified
+ /// KMS key ARN. If you use a KMS key alias instead, then KMS resolves the key within
+ /// the requester’s account. This behavior can result in data that's encrypted with a
+ /// KMS key that belongs to the requester, and not the bucket owner.
+ ///
+ ///
+ ///
+ /// Also, this action requires Amazon Web Services Signature Version 4. For more information,
+ /// see
+ /// Authenticating Requests (Amazon Web Services Signature Version 4).
+ ///
+ /// - Permissions
-
-
+ ///
+ /// General purpose bucket permissions - The s3:PutEncryptionConfiguration
+ /// permission is required in a policy. The bucket owner has this permission by default.
+ /// The bucket owner can grant this permission to others. For more information about permissions,
+ /// see Permissions
+ /// Related to Bucket Operations and Managing
+ /// Access Permissions to Your Amazon S3 Resources in the Amazon S3 User Guide.
+ ///
+ ///
-
+ ///
+ /// Directory bucket permissions - To grant access to this API operation, you
+ /// must have the s3express:PutEncryptionConfiguration permission in an IAM identity-based
+ /// policy instead of a bucket policy. Cross-account access to this API operation isn't
+ /// supported. This operation can only be performed by the Amazon Web Services account
+ /// that owns the resource. For more information about directory bucket policies and permissions,
+ /// see Amazon
+ /// Web Services Identity and Access Management (IAM) for S3 Express One Zone in the
+ /// Amazon S3 User Guide.
+ ///
+ ///
+ ///
+ /// To set a directory bucket default encryption with SSE-KMS, you must also have the
+ /// kms:GenerateDataKey and the kms:Decrypt permissions in IAM identity-based
+ /// policies and KMS key policies for the target KMS key.
+ ///
+ ///
- HTTP Host header syntax
-
+ ///
+ /// Directory buckets - The HTTP Host header syntax is s3express-control.region-code.amazonaws.com.
+ ///
+ ///
+ ///
+ /// The following operations are related to PutBucketEncryption:
+ ///
+ ///
+ ///
+ public partial class PutBucketEncryptionRequest : AmazonWebServiceRequest
+ {
+ private string _bucketName;
+ private ChecksumAlgorithm _checksumAlgorithm;
+ private string _contentMD5;
+ private string _expectedBucketOwner;
+ private ServerSideEncryptionConfiguration _serverSideEncryptionConfiguration;
+
+ ///
+ /// Gets and sets the property BucketName.
+ ///
+ /// Specifies default encryption for a bucket using server-side encryption with different
+ /// key options.
+ ///
+ ///
+ ///
+ /// Directory buckets - When you use this operation with a directory bucket,
+ /// you must use path-style requests in the format https://s3express-control.region-code.amazonaws.com/bucket-name
+ /// . Virtual-hosted-style requests aren't supported. Directory bucket names must
+ /// be unique in the chosen Zone (Availability Zone or Local Zone). Bucket names must
+ /// also follow the format bucket-base-name--zone-id--x-s3 (for
+ /// example, DOC-EXAMPLE-BUCKET--usw2-az1--x-s3). For information
+ /// about bucket naming restrictions, see Directory
+ /// bucket naming rules in the Amazon S3 User Guide
+ ///
+ ///
+ public string BucketName
+ {
+ get { return this._bucketName; }
+ set { this._bucketName = value; }
+ }
+
+ // Check to see if BucketName property is set
+ internal bool IsSetBucketName()
+ {
+ return this._bucketName != null;
+ }
+
+ ///
+ /// Gets and sets the property ChecksumAlgorithm.
+ ///
+ /// Indicates the algorithm used to create the checksum for the request when you use the
+ /// SDK. This header will not provide any additional functionality if you don't use the
+ /// SDK. When you send this header, there must be a corresponding x-amz-checksum
+ /// or x-amz-trailer header sent. Otherwise, Amazon S3 fails the request with the
+ /// HTTP status code 400 Bad Request. For more information, see Checking
+ /// object integrity in the Amazon S3 User Guide.
+ ///
+ ///
+ ///
+ /// If you provide an individual checksum, Amazon S3 ignores any provided ChecksumAlgorithm
+ /// parameter.
+ ///
+ ///
+ ///
+ /// For directory buckets, when you use Amazon Web Services SDKs, CRC32 is the
+ /// default checksum algorithm that's used for performance.
+ ///
+ ///
+ ///
+ public ChecksumAlgorithm ChecksumAlgorithm
+ {
+ get { return this._checksumAlgorithm; }
+ set { this._checksumAlgorithm = value; }
+ }
+
+ // Check to see if ChecksumAlgorithm property is set
+ internal bool IsSetChecksumAlgorithm()
+ {
+ return this._checksumAlgorithm != null;
+ }
+
+ ///
+ /// Gets and sets the property ContentMD5.
+ ///
+ /// The Base64 encoded 128-bit MD5 digest of the server-side encryption configuration.
+ ///
+ ///
+ ///
+ /// For requests made using the Amazon Web Services Command Line Interface (CLI) or Amazon
+ /// Web Services SDKs, this field is calculated automatically.
+ ///
+ ///
+ ///
+ /// This functionality is not supported for directory buckets.
+ ///
+ ///
+ ///
+ public string ContentMD5
+ {
+ get { return this._contentMD5; }
+ set { this._contentMD5 = value; }
+ }
+
+ // Check to see if ContentMD5 property is set
+ internal bool IsSetContentMD5()
+ {
+ return this._contentMD5 != null;
+ }
+
+ ///
+ /// Gets and sets the property ExpectedBucketOwner.
+ ///
+ /// The account ID of the expected bucket owner. If the account ID that you provide does
+ /// not match the actual owner of the bucket, the request fails with the HTTP status code
+ /// 403 Forbidden (access denied).
+ ///
+ ///
+ ///
+ /// For directory buckets, this header is not supported in this API operation. If you
+ /// specify this header, the request fails with the HTTP status code 501 Not Implemented.
+ ///
+ ///
+ ///
+ public string ExpectedBucketOwner
+ {
+ get { return this._expectedBucketOwner; }
+ set { this._expectedBucketOwner = value; }
+ }
+
+ // Check to see if ExpectedBucketOwner property is set
+ internal bool IsSetExpectedBucketOwner()
+ {
+ return this._expectedBucketOwner != null;
+ }
+
+ ///
+ /// Gets and sets the property ServerSideEncryptionConfiguration.
+ ///
+ [AWSProperty(Required=true)]
+ public ServerSideEncryptionConfiguration ServerSideEncryptionConfiguration
+ {
+ get { return this._serverSideEncryptionConfiguration; }
+ set { this._serverSideEncryptionConfiguration = value; }
+ }
+
+ // Check to see if ServerSideEncryptionConfiguration property is set
+ internal bool IsSetServerSideEncryptionConfiguration()
+ {
+ return this._serverSideEncryptionConfiguration != null;
+ }
+
+ }
+}
\ No newline at end of file
diff --git a/sdk/src/Services/S3/Custom/Model/PutBucketEncryptionResponse.cs b/sdk/src/Services/S3/Generated/Model/PutBucketEncryptionResponse.cs
similarity index 71%
rename from sdk/src/Services/S3/Custom/Model/PutBucketEncryptionResponse.cs
rename to sdk/src/Services/S3/Generated/Model/PutBucketEncryptionResponse.cs
index 00bdef8a4801..972235010f6b 100644
--- a/sdk/src/Services/S3/Custom/Model/PutBucketEncryptionResponse.cs
+++ b/sdk/src/Services/S3/Generated/Model/PutBucketEncryptionResponse.cs
@@ -1,4 +1,4 @@
-/*
+/*
* Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
*
* Licensed under the Apache License, Version 2.0 (the "License").
@@ -12,19 +12,28 @@
* express or implied. See the License for the specific language governing
* permissions and limitations under the License.
*/
+
+/*
+ * Do not modify this file. This file is generated from the s3-2006-03-01.normal.json service model.
+ */
using System;
using System.Collections.Generic;
using System.Xml.Serialization;
using System.Text;
+using System.IO;
+using System.Net;
using Amazon.Runtime;
+using Amazon.Runtime.Internal;
-namespace Amazon.S3
+#pragma warning disable CS0612,CS0618,CS1570
+namespace Amazon.S3.Model
{
///
- /// The response from the PutBucketEncryption operation.
+ /// This is the response object from the PutBucketEncryption operation.
///
public partial class PutBucketEncryptionResponse : AmazonWebServiceResponse
{
+
}
}
\ No newline at end of file
diff --git a/sdk/src/Services/S3/Generated/Model/ServerSideEncryptionByDefault.cs b/sdk/src/Services/S3/Generated/Model/ServerSideEncryptionByDefault.cs
new file mode 100644
index 000000000000..b3f42f41cf2d
--- /dev/null
+++ b/sdk/src/Services/S3/Generated/Model/ServerSideEncryptionByDefault.cs
@@ -0,0 +1,164 @@
+/*
+ * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License").
+ * You may not use this file except in compliance with the License.
+ * A copy of the License is located at
+ *
+ * http://aws.amazon.com/apache2.0
+ *
+ * or in the "license" file accompanying this file. This file is distributed
+ * on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either
+ * express or implied. See the License for the specific language governing
+ * permissions and limitations under the License.
+ */
+
+/*
+ * Do not modify this file. This file is generated from the s3-2006-03-01.normal.json service model.
+ */
+using System;
+using System.Collections.Generic;
+using System.Xml.Serialization;
+using System.Text;
+using System.IO;
+using System.Net;
+
+using Amazon.Runtime;
+using Amazon.Runtime.Internal;
+
+#pragma warning disable CS0612,CS0618,CS1570
+namespace Amazon.S3.Model
+{
+ ///
+ /// Describes the default server-side encryption to apply to new objects in the bucket.
+ /// If a PUT Object request doesn't specify any server-side encryption, this default encryption
+ /// will be applied. For more information, see PutBucketEncryption.
+ ///
+ /// -
+ ///
+ /// General purpose buckets - If you don't specify a customer managed key at configuration,
+ /// Amazon S3 automatically creates an Amazon Web Services KMS key (aws/s3) in
+ /// your Amazon Web Services account the first time that you add an object encrypted with
+ /// SSE-KMS to a bucket. By default, Amazon S3 uses this KMS key for SSE-KMS.
+ ///
+ ///
-
+ ///
+ /// Directory buckets - Your SSE-KMS configuration can only support 1 customer
+ /// managed key per directory bucket's lifetime. The Amazon
+ /// Web Services managed key (aws/s3) isn't supported.
+ ///
+ ///
-
+ ///
+ /// Directory buckets - For directory buckets, there are only two supported options
+ /// for server-side encryption: SSE-S3 and SSE-KMS.
+ ///
+ ///
+ ///
+ public partial class ServerSideEncryptionByDefault
+ {
+ private ServerSideEncryptionMethod _serverSideEncryptionAlgorithm;
+ private string _serverSideEncryptionKeyManagementServiceKeyId;
+
+ ///
+ /// Gets and sets the property ServerSideEncryptionAlgorithm.
+ ///
+ /// Server-side encryption algorithm to use for the default encryption.
+ ///
+ ///
+ ///
+ /// For directory buckets, there are only two supported values for server-side encryption:
+ /// AES256 and aws:kms.
+ ///
+ ///
+ ///
+ public ServerSideEncryptionMethod ServerSideEncryptionAlgorithm
+ {
+ get { return this._serverSideEncryptionAlgorithm; }
+ set { this._serverSideEncryptionAlgorithm = value; }
+ }
+
+ // Check to see if ServerSideEncryptionAlgorithm property is set
+ internal bool IsSetServerSideEncryptionAlgorithm()
+ {
+ return this._serverSideEncryptionAlgorithm != null;
+ }
+
+ ///
+ /// Gets and sets the property ServerSideEncryptionKeyManagementServiceKeyId.
+ ///
+ /// Amazon Web Services Key Management Service (KMS) customer managed key ID to use for
+ /// the default encryption.
+ ///
+ /// -
+ ///
+ /// General purpose buckets - This parameter is allowed if and only if SSEAlgorithm
+ /// is set to aws:kms or aws:kms:dsse.
+ ///
+ ///
-
+ ///
+ /// Directory buckets - This parameter is allowed if and only if SSEAlgorithm
+ /// is set to aws:kms.
+ ///
+ ///
+ ///
+ /// You can specify the key ID, key alias, or the Amazon Resource Name (ARN) of the KMS
+ /// key.
+ ///
+ /// -
+ ///
+ /// Key ID: 1234abcd-12ab-34cd-56ef-1234567890ab
+ ///
+ ///
-
+ ///
+ /// Key ARN: arn:aws:kms:us-east-2:111122223333:key/1234abcd-12ab-34cd-56ef-1234567890ab
+ ///
+ ///
+ ///
-
+ ///
+ /// Key Alias: alias/alias-name
+ ///
+ ///
+ ///
+ /// If you are using encryption with cross-account or Amazon Web Services service operations,
+ /// you must use a fully qualified KMS key ARN. For more information, see Using
+ /// encryption for cross-account operations.
+ ///
+ /// -
+ ///
+ /// General purpose buckets - If you're specifying a customer managed KMS key,
+ /// we recommend using a fully qualified KMS key ARN. If you use a KMS key alias instead,
+ /// then KMS resolves the key within the requester’s account. This behavior can result
+ /// in data that's encrypted with a KMS key that belongs to the requester, and not the
+ /// bucket owner. Also, if you use a key ID, you can run into a LogDestination undeliverable
+ /// error when creating a VPC flow log.
+ ///
+ ///
-
+ ///
+ /// Directory buckets - When you specify an KMS
+ /// customer managed key for encryption in your directory bucket, only use the key
+ /// ID or key ARN. The key alias format of the KMS key isn't supported.
+ ///
+ ///
+ ///
+ /// Amazon S3 only supports symmetric encryption KMS keys. For more information, see Asymmetric
+ /// keys in Amazon Web Services KMS in the Amazon Web Services Key Management Service
+ /// Developer Guide.
+ ///
+ ///
+ ///
+ [AWSProperty(Sensitive=true)]
+ public string ServerSideEncryptionKeyManagementServiceKeyId
+ {
+ get { return this._serverSideEncryptionKeyManagementServiceKeyId; }
+ set { this._serverSideEncryptionKeyManagementServiceKeyId = value; }
+ }
+
+ // Check to see if ServerSideEncryptionKeyManagementServiceKeyId property is set
+ internal bool IsSetServerSideEncryptionKeyManagementServiceKeyId()
+ {
+ return this._serverSideEncryptionKeyManagementServiceKeyId != null;
+ }
+
+ }
+}
\ No newline at end of file
diff --git a/sdk/src/Services/S3/Generated/Model/ServerSideEncryptionConfiguration.cs b/sdk/src/Services/S3/Generated/Model/ServerSideEncryptionConfiguration.cs
new file mode 100644
index 000000000000..edd7be43d8c0
--- /dev/null
+++ b/sdk/src/Services/S3/Generated/Model/ServerSideEncryptionConfiguration.cs
@@ -0,0 +1,64 @@
+/*
+ * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License").
+ * You may not use this file except in compliance with the License.
+ * A copy of the License is located at
+ *
+ * http://aws.amazon.com/apache2.0
+ *
+ * or in the "license" file accompanying this file. This file is distributed
+ * on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either
+ * express or implied. See the License for the specific language governing
+ * permissions and limitations under the License.
+ */
+
+/*
+ * Do not modify this file. This file is generated from the s3-2006-03-01.normal.json service model.
+ */
+using System;
+using System.Collections.Generic;
+using System.Xml.Serialization;
+using System.Text;
+using System.IO;
+using System.Net;
+
+using Amazon.Runtime;
+using Amazon.Runtime.Internal;
+
+#pragma warning disable CS0612,CS0618,CS1570
+namespace Amazon.S3.Model
+{
+ ///
+ /// Specifies the default server-side-encryption configuration.
+ ///
+ public partial class ServerSideEncryptionConfiguration
+ {
+ private List _serverSideEncryptionRules = AWSConfigs.InitializeCollections ? new List() : null;
+
+ ///
+ /// Gets and sets the property ServerSideEncryptionRules.
+ ///
+ /// Container for information about a particular server-side encryption configuration
+ /// rule.
+ ///
+ ///
+ /// Starting with version 4 of the SDK this property will default to null. If no data for this property is returned
+ /// from the service the property will also be null. This was changed to improve performance and allow the SDK and caller
+ /// to distinguish between a property not set or a property being empty to clear out a value. To retain the previous
+ /// SDK behavior set the AWSConfigs.InitializeCollections static property to true.
+ ///
+ public List ServerSideEncryptionRules
+ {
+ get { return this._serverSideEncryptionRules; }
+ set { this._serverSideEncryptionRules = value; }
+ }
+
+ // Check to see if ServerSideEncryptionRules property is set
+ internal bool IsSetServerSideEncryptionRules()
+ {
+ return this._serverSideEncryptionRules != null && (this._serverSideEncryptionRules.Count > 0 || !AWSConfigs.InitializeCollections);
+ }
+
+ }
+}
\ No newline at end of file
diff --git a/sdk/src/Services/S3/Generated/Model/ServerSideEncryptionRule.cs b/sdk/src/Services/S3/Generated/Model/ServerSideEncryptionRule.cs
new file mode 100644
index 000000000000..832b9249ff6e
--- /dev/null
+++ b/sdk/src/Services/S3/Generated/Model/ServerSideEncryptionRule.cs
@@ -0,0 +1,118 @@
+/*
+ * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License").
+ * You may not use this file except in compliance with the License.
+ * A copy of the License is located at
+ *
+ * http://aws.amazon.com/apache2.0
+ *
+ * or in the "license" file accompanying this file. This file is distributed
+ * on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either
+ * express or implied. See the License for the specific language governing
+ * permissions and limitations under the License.
+ */
+
+/*
+ * Do not modify this file. This file is generated from the s3-2006-03-01.normal.json service model.
+ */
+using System;
+using System.Collections.Generic;
+using System.Xml.Serialization;
+using System.Text;
+using System.IO;
+using System.Net;
+
+using Amazon.Runtime;
+using Amazon.Runtime.Internal;
+
+#pragma warning disable CS0612,CS0618,CS1570
+namespace Amazon.S3.Model
+{
+ ///
+ /// Specifies the default server-side encryption configuration.
+ ///
+ /// -
+ ///
+ /// General purpose buckets - If you're specifying a customer managed KMS key,
+ /// we recommend using a fully qualified KMS key ARN. If you use a KMS key alias instead,
+ /// then KMS resolves the key within the requester’s account. This behavior can result
+ /// in data that's encrypted with a KMS key that belongs to the requester, and not the
+ /// bucket owner.
+ ///
+ ///
-
+ ///
+ /// Directory buckets - When you specify an KMS
+ /// customer managed key for encryption in your directory bucket, only use the key
+ /// ID or key ARN. The key alias format of the KMS key isn't supported.
+ ///
+ ///
+ ///
+ public partial class ServerSideEncryptionRule
+ {
+ private bool? _bucketKeyEnabled;
+ private ServerSideEncryptionByDefault _serverSideEncryptionByDefault;
+
+ ///
+ /// Gets and sets the property BucketKeyEnabled.
+ ///
+ /// Specifies whether Amazon S3 should use an S3 Bucket Key with server-side encryption
+ /// using KMS (SSE-KMS) for new objects in the bucket. Existing objects are not affected.
+ /// Setting the BucketKeyEnabled element to true causes Amazon S3 to use
+ /// an S3 Bucket Key.
+ ///
+ /// -
+ ///
+ /// General purpose buckets - By default, S3 Bucket Key is not enabled. For more
+ /// information, see Amazon
+ /// S3 Bucket Keys in the Amazon S3 User Guide.
+ ///
+ ///
-
+ ///
+ /// Directory buckets - S3 Bucket Keys are always enabled for GET and PUT
+ /// operations in a directory bucket and can’t be disabled. S3 Bucket Keys aren't supported,
+ /// when you copy SSE-KMS encrypted objects from general purpose buckets to directory
+ /// buckets, from directory buckets to general purpose buckets, or between directory buckets,
+ /// through CopyObject,
+ /// UploadPartCopy,
+ /// the
+ /// Copy operation in Batch Operations, or the
+ /// import jobs. In this case, Amazon S3 makes a call to KMS every time a copy request
+ /// is made for a KMS-encrypted object.
+ ///
+ ///
+ ///
+ public bool? BucketKeyEnabled
+ {
+ get { return this._bucketKeyEnabled; }
+ set { this._bucketKeyEnabled = value; }
+ }
+
+ // Check to see if BucketKeyEnabled property is set
+ internal bool IsSetBucketKeyEnabled()
+ {
+ return this._bucketKeyEnabled.HasValue;
+ }
+
+ ///
+ /// Gets and sets the property ServerSideEncryptionByDefault.
+ ///
+ /// Specifies the default server-side encryption to apply to new objects in the bucket.
+ /// If a PUT Object request doesn't specify any server-side encryption, this default encryption
+ /// will be applied.
+ ///
+ ///
+ public ServerSideEncryptionByDefault ServerSideEncryptionByDefault
+ {
+ get { return this._serverSideEncryptionByDefault; }
+ set { this._serverSideEncryptionByDefault = value; }
+ }
+
+ // Check to see if ServerSideEncryptionByDefault property is set
+ internal bool IsSetServerSideEncryptionByDefault()
+ {
+ return this._serverSideEncryptionByDefault != null;
+ }
+
+ }
+}
\ No newline at end of file