diff --git a/generator/.DevConfigs/79b46eff-9dd1-4281-88f0-22c700a96506.json b/generator/.DevConfigs/79b46eff-9dd1-4281-88f0-22c700a96506.json new file mode 100644 index 000000000000..d91219099c9a --- /dev/null +++ b/generator/.DevConfigs/79b46eff-9dd1-4281-88f0-22c700a96506.json @@ -0,0 +1,19 @@ +{ + "core": { + "updateMinimum": true, + "type": "patch", + "changeLogMessages": [ + "Remove extra Content MD5 setting in BaseMarshaller. Minor Xml namespace logic updates. Update all rest-xml service response unmarshallers to generate partial method PostUnmarshallCustomization. Generator updates." + ] + }, + "services": [ + { + "serviceName": "S3", + "type": "patch", + "changeLogMessages": [ + "Generate PutBucketAcl PutBucketCors,PutObjectAcl, GetObjectAcl, ListObjectsV2, ListVersions, HeadObject.", + "As part of generating S3, all response unmarshallers will implement UnmarshallException. GetObjectACL will now throw NoSuchKeyException if no such key exists. This is not a breaking change." + ] + } + ] +} \ No newline at end of file diff --git a/generator/ServiceClientGeneratorLib/Customizations.cs b/generator/ServiceClientGeneratorLib/Customizations.cs index 0ef0183934c8..6b30418d8242 100644 --- a/generator/ServiceClientGeneratorLib/Customizations.cs +++ b/generator/ServiceClientGeneratorLib/Customizations.cs @@ -809,6 +809,20 @@ public PropertyModifier GetPropertyModifier(string shapeName, string propertyNam return null; } + /// + /// Gets the property modifier for a property if it exists. Otherwise returns false. + /// + /// + /// + /// + /// + public bool TryGetPropertyModifier(string shapeName, string propertyName, out PropertyModifier propertyModifier) + { + propertyModifier = null; + propertyModifier = GetPropertyModifier(shapeName, propertyName) ?? null; + return propertyModifier != null ? true : false; + } + /// /// Determines if the property has a customization to be set to nullable /// @@ -1020,6 +1034,7 @@ public class ShapeModifier public const string ShapeModifierXmlNamespaceKey = "xmlNamespace"; public const string OriginalMemberIsOutsideContainingShapeKey = "originalMemberIsOutsideContainingShape"; public const string PredicateListUnmarshallersKey = "predicateListUnmarshallers"; + public const string ExcludeFromUnmarshallingKey = "excludeFromUnmarshalling"; private readonly HashSet _excludedProperties; private readonly Dictionary _modifiedProperties; @@ -1030,6 +1045,7 @@ public class ShapeModifier private readonly HashSet _shapeDocumentation; private readonly string _shapeModifierXmlNamespace; private readonly Dictionary _predicateListUnmarshallers; + private readonly HashSet _excludedUnmarshallingProperties; public string DeprecationMessage { get; private set; } @@ -1049,6 +1065,7 @@ public ShapeModifier(JsonData data) _shapeDocumentation = ParseShapeDocumentation(data); _shapeModifierXmlNamespace = ParseXmlNamespace(data); _predicateListUnmarshallers = ParsePredicateListUnmarshallers(data); + _excludedUnmarshallingProperties = ParseExcludedUnmarshallingProperties(data); Validate(data); } @@ -1317,6 +1334,7 @@ private static Dictionary ParsePredicateListUnmarshallers(Json ?? new Dictionary(); } + /// /// This customization tells the generator that the member's shape is a filter type that has predicates /// and operators and that it should be unmarshalled with the PredicateListUnmarshaller type that each @@ -1327,6 +1345,35 @@ private static Dictionary ParsePredicateListUnmarshallers(Json public Dictionary PredicateListUnmarshallers { get { return _predicateListUnmarshallers; } } #endregion + + #region ExcludedUnmarshallingProperties + + private static HashSet ParseExcludedUnmarshallingProperties(JsonData data) + { + var excludedUnmarshallingProperties = data[ShapeModifier.ExcludeFromUnmarshallingKey]?.Cast() + .Select(x => x.ToString()); + + return new HashSet(excludedUnmarshallingProperties ?? new string[0]); + } + + /// + /// Properties that should be excluded from unmarshalling. Example usage: + /// + /// The members that should be excluded are in the array. + /// "S3Grantee":{ + /// "modify": [ + /// { + /// "ID": {"emitPropertyName": "CanonicalUser"} + /// } + /// ], + /// "excludeFromUnmarshalling": + /// [ + /// "Type" + /// ] + /// }, + /// + public HashSet ExcludedUnmarshallingProperties { get { return _excludedUnmarshallingProperties; } } + #endregion } /// @@ -1393,14 +1440,17 @@ public class PropertyModifier public const string EmitPropertyNameKey = "emitPropertyName"; public const string LocationNameKey = "locationName"; public const string AccessModifierKey = "accessModifier"; + public const string InjectXmlUnmarshallCodeKey = "injectXmlUnmarshallCode"; + public const string SkipContextTestExpressionUnmarshallingLogicKey = "skipContextTestExpressionUnmarshallingLogic"; private readonly string _modelPropertyName; // for debug inspection assist private readonly JsonData _modifierData; - + private readonly HashSet _injectXmlUnmarshallCode; internal PropertyModifier(string modelPropertyName, JsonData modifierData) { this._modelPropertyName = modelPropertyName; this._modifierData = modifierData; + _injectXmlUnmarshallCode = ParseInjectXmlUnmarshallCode(); } // The access modifier for the property. Defaults to public if not set in the customization. @@ -1473,14 +1523,56 @@ public bool UseCustomMarshall } public string DeprecationMessage - { - get { + get + { return _modifierData[ShapeModifier.DeprecatedMessageKey].CastToString(); + } } - } + + private HashSet ParseInjectXmlUnmarshallCode() + { + var data = _modifierData[InjectXmlUnmarshallCodeKey]?.Cast() + .Select(x => x.ToString()); + + return new HashSet(data ?? new string[0]); } + /// + /// Use this customization for rest-xml services when you want to inject some code into the "Context.TestExpression" portion + /// of the member. + /// + /// A prime example of this is here https://github.com/aws/aws-sdk-net/blob/79cbc392fc3f1c74fcdf34efd77ad681da8af328/sdk/src/Services/S3/Custom/Model/Internal/MarshallTransformations/ListObjectsV2ResponseUnmarshaller.cs#L85 + /// How to use this customization (within the modify array of a property) : + /// Within the "Contents" member while this member is being unmarshalled the code in the "injectXmlUnmarshallCode" will be added line by line + /// right before the "continue" statement within each "context.TestExpression" call. + /// { + /// "Contents" : { + /// "emitPropertyName" : "S3Objects", + /// "injectXmlUnmarshallCode":[ + /// "response.S3Objects[response.S3Objects.Count - 1].BucketName = response.Name;" + /// ] + /// } + /// }, + /// + public HashSet InjectXmlUnmarshallCode + { + get { return _injectXmlUnmarshallCode; } + } + + /// + /// If this is set, all the logic inside of the "context.testExpression" code block for that member won't be generated. this is meant + /// to be used in conjunction with InjectXmlUnmarshallCode, but can be used separately as well. For example: + /// "Versions":{ + /// "skipContextTestExpressionUnmarshallingLogic" : true, + /// "injectXmlUnmarshallCode" :[ + /// "VersionsItemCustomUnmarshall(context, response);" + /// ] + /// } + /// + public bool SkipContextTestExpressionUnmarshallingLogic { get { return _modifierData[SkipContextTestExpressionUnmarshallingLogicKey] != null; } } + } + #endregion // Injection modifier is an array of objects, each object being the private Dictionary _shapeModifiers = null; diff --git a/generator/ServiceClientGeneratorLib/Generators/Marshallers/BaseMarshaller.cs b/generator/ServiceClientGeneratorLib/Generators/Marshallers/BaseMarshaller.cs index 65cd8be7db2e..8d75c8cb7285 100644 --- a/generator/ServiceClientGeneratorLib/Generators/Marshallers/BaseMarshaller.cs +++ b/generator/ServiceClientGeneratorLib/Generators/Marshallers/BaseMarshaller.cs @@ -3335,59 +3335,6 @@ protected void ProcessEndpointHostPrefixMembers(int level, string variableName, protected void GenerateRequestChecksumHandling(Operation operation, string requestContent) { - // If the request has a Content-MD5 property and it's set by the user, copy the value to the header. - // Otherwise the checksum handling in Core will calculate and set MD5 later. - if (operation.HttpChecksumRequired) - { - var member = operation.RequestStructure.Members.FirstOrDefault(m => string.Equals(m.LocationName, "Content-MD5")); - if (member != default(Member)) - { - - - #line default - #line hidden - - #line 505 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseMarshaller.tt" -this.Write(" if (publicRequest.IsSet"); - - - #line default - #line hidden - - #line 506 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseMarshaller.tt" -this.Write(this.ToStringHelper.ToStringWithCulture(member.PropertyName)); - - - #line default - #line hidden - - #line 506 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseMarshaller.tt" -this.Write("())\r\n request.Headers[Amazon.Util.HeaderKeys.ContentMD5Header]" + - " = publicRequest."); - - - #line default - #line hidden - - #line 507 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseMarshaller.tt" -this.Write(this.ToStringHelper.ToStringWithCulture(member.PropertyName)); - - - #line default - #line hidden - - #line 507 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseMarshaller.tt" -this.Write(";\r\n"); - - - #line default - #line hidden - - #line 508 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseMarshaller.tt" - - } - } - if (operation.RequiresChecksumDuringMarshalling) { if (operation.ChecksumConfiguration != null && !string.IsNullOrEmpty(operation.ChecksumConfiguration.RequestAlgorithmMember)) @@ -3408,14 +3355,11 @@ protected void GenerateRequestChecksumHandling(Operation operation, string reque headerName = member.MarshallLocation == MarshallLocation.Header ? member.MarshallLocationName : string.Empty; } - - - #line default #line hidden - #line 534 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseMarshaller.tt" + #line 517 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseMarshaller.tt" this.Write(" ChecksumUtils.SetChecksumData(\r\n request,\r\n " + " publicRequest."); @@ -3423,14 +3367,14 @@ protected void GenerateRequestChecksumHandling(Operation operation, string reque #line default #line hidden - #line 537 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseMarshaller.tt" + #line 520 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseMarshaller.tt" this.Write(this.ToStringHelper.ToStringWithCulture(operation.ChecksumConfiguration.RequestAlgorithmMember)); #line default #line hidden - #line 537 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseMarshaller.tt" + #line 520 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseMarshaller.tt" this.Write(",\r\n fallbackToMD5: false,\r\n isRequestChecks" + "umRequired: "); @@ -3438,35 +3382,35 @@ protected void GenerateRequestChecksumHandling(Operation operation, string reque #line default #line hidden - #line 539 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseMarshaller.tt" + #line 522 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseMarshaller.tt" this.Write(this.ToStringHelper.ToStringWithCulture(operation.ChecksumConfiguration.RequestChecksumRequired.ToString().ToLower())); #line default #line hidden - #line 539 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseMarshaller.tt" + #line 522 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseMarshaller.tt" this.Write(",\r\n headerName: \""); #line default #line hidden - #line 540 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseMarshaller.tt" + #line 523 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseMarshaller.tt" this.Write(this.ToStringHelper.ToStringWithCulture(headerName)); #line default #line hidden - #line 540 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseMarshaller.tt" + #line 523 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseMarshaller.tt" this.Write("\"\r\n );\r\n"); #line default #line hidden - #line 542 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseMarshaller.tt" + #line 525 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseMarshaller.tt" } // When checksum is configured without an algorithm member, let the SDK pick the best available option (without falling back to MD5). @@ -3477,7 +3421,7 @@ protected void GenerateRequestChecksumHandling(Operation operation, string reque #line default #line hidden - #line 547 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseMarshaller.tt" + #line 530 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseMarshaller.tt" this.Write(" ChecksumUtils.SetChecksumData(request, checksumAlgorithm: null, f" + "allbackToMD5: false, isRequestChecksumRequired: "); @@ -3485,21 +3429,21 @@ protected void GenerateRequestChecksumHandling(Operation operation, string reque #line default #line hidden - #line 548 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseMarshaller.tt" + #line 531 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseMarshaller.tt" this.Write(this.ToStringHelper.ToStringWithCulture(operation.ChecksumConfiguration.RequestChecksumRequired.ToString().ToLower())); #line default #line hidden - #line 548 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseMarshaller.tt" + #line 531 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseMarshaller.tt" this.Write(");\r\n"); #line default #line hidden - #line 549 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseMarshaller.tt" + #line 532 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseMarshaller.tt" } // This is the legacy trait ("httpChecksumRequired"), which does not use flexible checksums (just MD5). @@ -3511,14 +3455,14 @@ protected void GenerateRequestChecksumHandling(Operation operation, string reque #line default #line hidden - #line 555 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseMarshaller.tt" + #line 538 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseMarshaller.tt" this.Write(" ChecksumUtils.SetChecksumData(request);\r\n"); #line default #line hidden - #line 557 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseMarshaller.tt" + #line 540 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseMarshaller.tt" } } @@ -3541,7 +3485,7 @@ protected void SetCompressionAlgorithmEncoding(Operation operation) #line default #line hidden - #line 574 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseMarshaller.tt" + #line 557 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseMarshaller.tt" this.Write(" CompressionAlgorithmUtils.SetCompressionAlgorithm(request, Compressio" + "nEncodingAlgorithm."); @@ -3549,21 +3493,21 @@ protected void SetCompressionAlgorithmEncoding(Operation operation) #line default #line hidden - #line 575 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseMarshaller.tt" + #line 558 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseMarshaller.tt" this.Write(this.ToStringHelper.ToStringWithCulture(encoding.ToString())); #line default #line hidden - #line 575 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseMarshaller.tt" + #line 558 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseMarshaller.tt" this.Write(");\r\n"); #line default #line hidden - #line 576 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseMarshaller.tt" + #line 559 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseMarshaller.tt" } } diff --git a/generator/ServiceClientGeneratorLib/Generators/Marshallers/BaseMarshaller.tt b/generator/ServiceClientGeneratorLib/Generators/Marshallers/BaseMarshaller.tt index 95521edd61cd..05d6e486c6da 100644 --- a/generator/ServiceClientGeneratorLib/Generators/Marshallers/BaseMarshaller.tt +++ b/generator/ServiceClientGeneratorLib/Generators/Marshallers/BaseMarshaller.tt @@ -495,20 +495,6 @@ using Amazon.Runtime.Internal.Util; protected void GenerateRequestChecksumHandling(Operation operation, string requestContent) { - // If the request has a Content-MD5 property and it's set by the user, copy the value to the header. - // Otherwise the checksum handling in Core will calculate and set MD5 later. - if (operation.HttpChecksumRequired) - { - var member = operation.RequestStructure.Members.FirstOrDefault(m => string.Equals(m.LocationName, "Content-MD5")); - if (member != default(Member)) - { -#> - if (publicRequest.IsSet<#=member.PropertyName#>()) - request.Headers[Amazon.Util.HeaderKeys.ContentMD5Header] = publicRequest.<#=member.PropertyName#>; -<#+ - } - } - if (operation.RequiresChecksumDuringMarshalling) { if (operation.ChecksumConfiguration != null && !string.IsNullOrEmpty(operation.ChecksumConfiguration.RequestAlgorithmMember)) @@ -528,9 +514,6 @@ using Amazon.Runtime.Internal.Util; var member = operation.RequestStructure.Members.FirstOrDefault(m => string.Equals(m.PropertyName, operation.ChecksumConfiguration.RequestAlgorithmMember)); headerName = member.MarshallLocation == MarshallLocation.Header ? member.MarshallLocationName : string.Empty; } - - - #> ChecksumUtils.SetChecksumData( request, diff --git a/generator/ServiceClientGeneratorLib/Generators/Marshallers/BaseResponseUnmarshaller.cs b/generator/ServiceClientGeneratorLib/Generators/Marshallers/BaseResponseUnmarshaller.cs index b7e9aab96c19..c85d929564b3 100644 --- a/generator/ServiceClientGeneratorLib/Generators/Marshallers/BaseResponseUnmarshaller.cs +++ b/generator/ServiceClientGeneratorLib/Generators/Marshallers/BaseResponseUnmarshaller.cs @@ -305,6 +305,8 @@ protected void UnmarshallHeaders() { foreach (var member in this.Operation.ResponseHeaderMembers) { + if (this.Config.ServiceModel.Customizations.ShapeModifiers.TryGetValue(member.OwningShape.Name, out var modifier) && modifier.ExcludedUnmarshallingProperties.Contains(member.ModeledName)) + continue; if (member.Shape.IsMap) { @@ -312,28 +314,28 @@ protected void UnmarshallHeaders() #line default #line hidden - #line 153 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt" + #line 155 "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 154 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt" + #line 156 "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 154 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt" + #line 156 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt" this.Write("\".\r\n"); #line default #line hidden - #line 155 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt" + #line 157 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt" // Dictionary if (member.ModelShape.ValueShape.IsString) @@ -343,182 +345,182 @@ protected void UnmarshallHeaders() #line default #line hidden - #line 159 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt" + #line 161 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt" this.Write(" var headersFor"); #line default #line hidden - #line 160 "C:\Dev\Repos\aws-sdk-net-staging\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 160 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt" + #line 162 "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 161 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt" + #line 163 "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\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt" + #line 163 "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 163 "C:\Dev\Repos\aws-sdk-net-staging\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.PropertyName)); #line default #line hidden - #line 163 "C:\Dev\Repos\aws-sdk-net-staging\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\tif(\""); #line default #line hidden - #line 164 "C:\Dev\Repos\aws-sdk-net-staging\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 164 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt" + #line 166 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt" this.Write("\".Length > 0 && keyToUse.StartsWith(\""); #line default #line hidden - #line 164 "C:\Dev\Repos\aws-sdk-net-staging\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 164 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt" + #line 166 "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 165 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt" + #line 167 "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\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt" + #line 167 "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 168 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt" + #line 170 "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 168 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt" + #line 170 "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 170 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt" + #line 172 "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 170 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt" + #line 172 "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 172 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt" + #line 174 "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 172 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt" + #line 174 "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 176 "C:\Dev\Repos\aws-sdk-net-staging\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 176 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt" + #line 178 "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 177 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt" + #line 179 "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\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt" + #line 179 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt" this.Write(" = headersFor"); #line default #line hidden - #line 177 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt" + #line 179 "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\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt" + #line 179 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt" this.Write(";\r\n"); #line default #line hidden - #line 178 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt" + #line 180 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt" } // Dictionary> @@ -529,182 +531,182 @@ protected void UnmarshallHeaders() #line default #line hidden - #line 183 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt" + #line 185 "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 184 "C:\Dev\Repos\aws-sdk-net-staging\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 184 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt" + #line 186 "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 185 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt" + #line 187 "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\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt" + #line 187 "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 187 "C:\Dev\Repos\aws-sdk-net-staging\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.PropertyName)); #line default #line hidden - #line 187 "C:\Dev\Repos\aws-sdk-net-staging\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\tif(\""); #line default #line hidden - #line 188 "C:\Dev\Repos\aws-sdk-net-staging\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 188 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt" + #line 190 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt" this.Write("\".Length > 0 && keyToUse.StartsWith(\""); #line default #line hidden - #line 188 "C:\Dev\Repos\aws-sdk-net-staging\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 188 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt" + #line 190 "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 189 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt" + #line 191 "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\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt" + #line 191 "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 192 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt" + #line 194 "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 192 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt" + #line 194 "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 194 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt" + #line 196 "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 194 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt" + #line 196 "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 196 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt" + #line 198 "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 196 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt" + #line 198 "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 200 "C:\Dev\Repos\aws-sdk-net-staging\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 200 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt" + #line 202 "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 201 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt" + #line 203 "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\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt" + #line 203 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt" this.Write(" = headersFor"); #line default #line hidden - #line 201 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt" + #line 203 "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\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt" + #line 203 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt" this.Write(";\r\n"); #line default #line hidden - #line 202 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt" + #line 204 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt" } else @@ -716,7 +718,7 @@ protected void UnmarshallHeaders() #line default #line hidden - #line 209 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt" + #line 211 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt" continue; } @@ -725,28 +727,28 @@ protected void UnmarshallHeaders() #line default #line hidden - #line 212 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt" + #line 214 "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 213 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt" + #line 215 "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 213 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt" + #line 215 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt" this.Write("\"))\r\n"); #line default #line hidden - #line 214 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt" + #line 216 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt" if (member.Shape.IsString) { @@ -757,7 +759,7 @@ protected void UnmarshallHeaders() #line default #line hidden - #line 219 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt" + #line 221 "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(\""); @@ -765,35 +767,35 @@ protected void UnmarshallHeaders() #line default #line hidden - #line 221 "C:\Dev\Repos\aws-sdk-net-staging\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.MarshallLocationName)); #line default #line hidden - #line 221 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt" + #line 223 "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 222 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt" + #line 224 "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 222 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt" + #line 224 "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 224 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt" + #line 226 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt" } else @@ -803,42 +805,42 @@ protected void UnmarshallHeaders() #line default #line hidden - #line 228 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt" + #line 230 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt" this.Write("\t\t\t\tresponse."); #line default #line hidden - #line 229 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt" + #line 231 "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 229 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt" + #line 231 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt" this.Write(" = context.ResponseData.GetHeaderValue(\""); #line default #line hidden - #line 229 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt" + #line 231 "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 229 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt" + #line 231 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt" this.Write("\");\r\n"); #line default #line hidden - #line 230 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt" + #line 232 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt" } } @@ -849,28 +851,28 @@ protected void UnmarshallHeaders() #line default #line hidden - #line 235 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt" + #line 237 "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 236 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt" + #line 238 "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 236 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt" + #line 238 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt" this.Write("\".\r\n\r\n"); #line default #line hidden - #line 238 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt" + #line 240 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt" // Dictionary if (member.ModelShape.ValueShape.IsString) @@ -880,182 +882,182 @@ protected void UnmarshallHeaders() #line default #line hidden - #line 242 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt" + #line 244 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt" this.Write(" var headersFor"); #line default #line hidden - #line 243 "C:\Dev\Repos\aws-sdk-net-staging\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 243 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt" + #line 245 "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 244 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt" + #line 246 "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\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt" + #line 246 "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 246 "C:\Dev\Repos\aws-sdk-net-staging\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.PropertyName)); #line default #line hidden - #line 246 "C:\Dev\Repos\aws-sdk-net-staging\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\tif(\""); #line default #line hidden - #line 247 "C:\Dev\Repos\aws-sdk-net-staging\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 247 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt" + #line 249 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt" this.Write("\".Length > 0 && keyToUse.StartsWith(\""); #line default #line hidden - #line 247 "C:\Dev\Repos\aws-sdk-net-staging\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 247 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt" + #line 249 "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 248 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt" + #line 250 "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\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt" + #line 250 "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 251 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt" + #line 253 "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 251 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt" + #line 253 "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 253 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt" + #line 255 "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 253 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt" + #line 255 "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 255 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt" + #line 257 "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 255 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt" + #line 257 "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 259 "C:\Dev\Repos\aws-sdk-net-staging\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 259 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt" + #line 261 "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 260 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt" + #line 262 "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\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt" + #line 262 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt" this.Write(" = headersFor"); #line default #line hidden - #line 260 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt" + #line 262 "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\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt" + #line 262 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt" this.Write(";\r\n"); #line default #line hidden - #line 261 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt" + #line 263 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt" } // Dictionary> @@ -1066,182 +1068,182 @@ protected void UnmarshallHeaders() #line default #line hidden - #line 266 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt" + #line 268 "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 267 "C:\Dev\Repos\aws-sdk-net-staging\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 267 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt" + #line 269 "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 268 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt" + #line 270 "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\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt" + #line 270 "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 270 "C:\Dev\Repos\aws-sdk-net-staging\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.PropertyName)); #line default #line hidden - #line 270 "C:\Dev\Repos\aws-sdk-net-staging\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\tif(\""); #line default #line hidden - #line 271 "C:\Dev\Repos\aws-sdk-net-staging\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 271 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt" + #line 273 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt" this.Write("\".Length > 0 && keyToUse.StartsWith(\""); #line default #line hidden - #line 271 "C:\Dev\Repos\aws-sdk-net-staging\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 271 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt" + #line 273 "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 272 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt" + #line 274 "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\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt" + #line 274 "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 275 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt" + #line 277 "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 275 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt" + #line 277 "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 277 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt" + #line 279 "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 277 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt" + #line 279 "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 279 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt" + #line 281 "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 279 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt" + #line 281 "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 283 "C:\Dev\Repos\aws-sdk-net-staging\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 283 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt" + #line 285 "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 284 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt" + #line 286 "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\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt" + #line 286 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt" this.Write(" = headersFor"); #line default #line hidden - #line 284 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt" + #line 286 "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\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt" + #line 286 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt" this.Write(";\r\n"); #line default #line hidden - #line 285 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt" + #line 287 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt" } else @@ -1253,7 +1255,7 @@ protected void UnmarshallHeaders() #line default #line hidden - #line 293 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt" + #line 295 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt" } else if (member.Shape.IsList) @@ -1269,42 +1271,42 @@ protected void UnmarshallHeaders() #line default #line hidden - #line 303 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt" + #line 305 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt" this.Write("\t\t\t\tresponse."); #line default #line hidden - #line 304 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt" + #line 306 "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 304 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt" + #line 306 "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 304 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt" + #line 306 "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 304 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt" + #line 306 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt" this.Write("\"));\r\n"); #line default #line hidden - #line 305 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt" + #line 307 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt" } else if(member.Shape.ListShape.IsTimeStamp) @@ -1317,56 +1319,56 @@ protected void UnmarshallHeaders() #line default #line hidden - #line 312 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt" + #line 314 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt" this.Write("\t\t\t\tresponse."); #line default #line hidden - #line 313 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt" + #line 315 "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 313 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt" + #line 315 "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 313 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt" + #line 315 "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 313 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt" + #line 315 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt" this.Write("\"), \""); #line default #line hidden - #line 313 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt" + #line 315 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt" this.Write(this.ToStringHelper.ToStringWithCulture(timestampFormat)); #line default #line hidden - #line 313 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt" + #line 315 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt" this.Write("\");\r\n"); #line default #line hidden - #line 314 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt" + #line 316 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt" } else @@ -1382,56 +1384,56 @@ protected void UnmarshallHeaders() #line default #line hidden - #line 324 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt" + #line 326 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt" this.Write("\t\t\t\tresponse."); #line default #line hidden - #line 325 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt" + #line 327 "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 325 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt" + #line 327 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt" this.Write(" = MultiValueHeaderParser.ToValueTypeList<"); #line default #line hidden - #line 325 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt" + #line 327 "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 325 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt" + #line 327 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt" this.Write(">(context.ResponseData.GetHeaderValue(\""); #line default #line hidden - #line 325 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt" + #line 327 "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 325 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt" + #line 327 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt" this.Write("\"));\r\n"); #line default #line hidden - #line 326 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt" + #line 328 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt" } else @@ -1449,35 +1451,35 @@ protected void UnmarshallHeaders() #line default #line hidden - #line 338 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt" + #line 340 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt" this.Write("\t\t\t\tresponse."); #line default #line hidden - #line 339 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt" + #line 341 "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 339 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt" + #line 341 "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 339 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt" + #line 341 "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 339 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt" + #line 341 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt" this.Write("\"), CultureInfo.InvariantCulture, DateTimeStyles.AssumeUniversal | DateTimeStyles" + ".AdjustToUniversal);\r\n"); @@ -1485,7 +1487,7 @@ protected void UnmarshallHeaders() #line default #line hidden - #line 340 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt" + #line 342 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt" } else if(member.TimestampFormat == TimestampFormat.UnixTimestamp) @@ -1495,21 +1497,21 @@ protected void UnmarshallHeaders() #line default #line hidden - #line 344 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt" + #line 346 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt" this.Write("\t\t\t\tresponse."); #line default #line hidden - #line 345 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt" + #line 347 "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 345 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt" + #line 347 "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(\""); @@ -1517,21 +1519,21 @@ protected void UnmarshallHeaders() #line default #line hidden - #line 345 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt" + #line 347 "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 345 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt" + #line 347 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt" this.Write("\"), CultureInfo.InvariantCulture));\r\n"); #line default #line hidden - #line 346 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt" + #line 348 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt" } else @@ -1546,77 +1548,77 @@ protected void UnmarshallHeaders() #line default #line hidden - #line 355 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt" + #line 357 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt" this.Write("\t\t\t\tresponse."); #line default #line hidden - #line 356 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt" + #line 358 "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 356 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt" + #line 358 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt" this.Write(" = "); #line default #line hidden - #line 356 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt" + #line 358 "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 356 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt" + #line 358 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt" this.Write(".Parse(context.ResponseData.GetHeaderValue(\""); #line default #line hidden - #line 356 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt" + #line 358 "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 356 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt" + #line 358 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt" this.Write("\")"); #line default #line hidden - #line 356 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt" + #line 358 "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 356 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt" + #line 358 "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 356 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt" + #line 358 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt" this.Write(");\r\n"); #line default #line hidden - #line 357 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt" + #line 359 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt" } else @@ -1637,28 +1639,28 @@ protected void ProcessStatusCode() #line default #line hidden - #line 372 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt" + #line 374 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt" this.Write("\t\t\tresponse."); #line default #line hidden - #line 373 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt" + #line 375 "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 373 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt" + #line 375 "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 374 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt" + #line 376 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt" } } @@ -1667,7 +1669,7 @@ protected void ProcessStatusCode() #line default #line hidden - #line 378 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt" + #line 380 "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, @@ -1720,17 +1722,18 @@ protected string DetermineXmlMarshallName(Member member, bool withPrefix = true) #line default #line hidden - #line 427 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt" + #line 429 "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, Shape topLevelShape) { - bool skipXmlTestExpression = false, isDataTypeSwapList = false, dataTypeSwapIsFlattened = false; + bool skipXmlTestExpression = false, isDataTypeSwapList = false, dataTypeSwapIsFlattened = false, skipXmlTestExpressionInnerLogic = false; if (this.Config.ServiceModel.Customizations.ShapeModifiers.TryGetValue(topLevelShape.Name, out var modifier) && modifier.SkipXmlTestExpressionProperties.Contains(member.ModeledName)) skipXmlTestExpression = true; - + if (this.Config.ServiceModel.Customizations.TryGetPropertyModifier(member.OwningShape.Name, member.ModeledName, out var propModifier) && propModifier.SkipContextTestExpressionUnmarshallingLogic) + skipXmlTestExpressionInnerLogic = true; if (this.Config.ServiceModel.Customizations.OverrideDataType(topLevelShape.Name, member.ModeledName) != null) { var dataTypeOverride = this.Config.ServiceModel.Customizations.OverrideDataType(topLevelShape.Name, member.ModeledName); @@ -1752,155 +1755,178 @@ protected void ProcessResponseBodyOrStructureMembers(Member member, bool isStruc #line default #line hidden - #line 453 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt" + #line 456 "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 454 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt" + #line 457 "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 454 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt" + #line 457 "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"); #line default #line hidden - #line 456 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt" + #line 459 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt" } + if (!skipXmlTestExpressionInnerLogic) + { #line default #line hidden - #line 458 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt" + #line 463 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt" this.Write(" if ("); #line default #line hidden - #line 459 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt" + #line 464 "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" + #line 464 "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" + #line 464 "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" + #line 464 "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 461 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt" + #line 466 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt" this.Write(this.ToStringHelper.ToStringWithCulture(unmarshalledVariable)); #line default #line hidden - #line 461 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt" + #line 466 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt" this.Write("."); #line default #line hidden - #line 461 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt" + #line 466 "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 461 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt" + #line 466 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt" this.Write(" = new "); #line default #line hidden - #line 461 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt" + #line 466 "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 461 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt" + #line 466 "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 463 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt" + #line 468 "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 463 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt" + #line 468 "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 464 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt" + #line 469 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt" this.Write(this.ToStringHelper.ToStringWithCulture(unmarshalledVariable)); #line default #line hidden - #line 464 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt" + #line 469 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt" this.Write("."); #line default #line hidden - #line 464 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt" + #line 469 "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 464 "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"); + #line 469 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt" +this.Write(".Add(unmarshaller.Unmarshall(context));\r\n"); #line default #line hidden - #line 466 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt" + #line 470 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt" + + } + + + #line default + #line hidden + + #line 473 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt" +WriteInjectXmlUnmarshallCode(member); + + #line default + #line hidden + + #line 473 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt" +this.Write("\t\t\t\t\t\tcontinue;\r\n"); + + + #line default + #line hidden + + #line 475 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt" if (!skipXmlTestExpression) { @@ -1909,14 +1935,14 @@ protected void ProcessResponseBodyOrStructureMembers(Member member, bool isStruc #line default #line hidden - #line 469 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt" + #line 478 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt" this.Write("\t\t\t\t\t}\r\n"); #line default #line hidden - #line 471 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt" + #line 480 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt" } } @@ -1929,169 +1955,192 @@ protected void ProcessResponseBodyOrStructureMembers(Member member, bool isStruc #line default #line hidden - #line 478 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt" + #line 487 "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 479 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt" + #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 479 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt" + #line 488 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt" this.Write("/"); #line default #line hidden - #line 479 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt" + #line 488 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt" this.Write(this.ToStringHelper.ToStringWithCulture(listMarshallName)); #line default #line hidden - #line 479 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt" + #line 488 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt" this.Write("\", targetDepth))\r\n\t\t\t\t {\r\n"); #line default #line hidden - #line 481 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt" + #line 490 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt" } + if (!skipXmlTestExpressionInnerLogic) + { #line default #line hidden - #line 483 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt" + #line 494 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt" this.Write(" if ("); #line default #line hidden - #line 484 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt" + #line 495 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt" this.Write(this.ToStringHelper.ToStringWithCulture(unmarshalledVariable)); #line default #line hidden - #line 484 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt" + #line 495 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt" this.Write("."); #line default #line hidden - #line 484 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt" + #line 495 "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 484 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt" + #line 495 "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 486 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt" + #line 497 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt" this.Write(this.ToStringHelper.ToStringWithCulture(unmarshalledVariable)); #line default #line hidden - #line 486 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt" + #line 497 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt" this.Write("."); #line default #line hidden - #line 486 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt" + #line 497 "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 486 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt" + #line 497 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt" this.Write(" = new "); #line default #line hidden - #line 486 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt" + #line 497 "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 486 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt" + #line 497 "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 488 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt" + #line 499 "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 488 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt" + #line 499 "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 489 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt" + #line 500 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt" this.Write(this.ToStringHelper.ToStringWithCulture(unmarshalledVariable)); #line default #line hidden - #line 489 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt" + #line 500 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt" this.Write("."); #line default #line hidden - #line 489 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt" + #line 500 "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 489 "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"); + #line 500 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt" +this.Write(".Add(unmarshaller.Unmarshall(context));\r\n"); + + + #line default + #line hidden + + #line 501 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt" + + } #line default #line hidden - #line 491 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt" + #line 504 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt" +WriteInjectXmlUnmarshallCode(member); + + #line default + #line hidden + + #line 504 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt" +this.Write("\t\t\t\t\t continue;\r\n"); + + + #line default + #line hidden + + #line 506 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt" if (!skipXmlTestExpression) { @@ -2100,14 +2149,14 @@ protected void ProcessResponseBodyOrStructureMembers(Member member, bool isStruc #line default #line hidden - #line 494 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt" + #line 509 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt" this.Write("\t\t\t\t }\r\n"); #line default #line hidden - #line 496 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt" + #line 511 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt" } } @@ -2123,127 +2172,150 @@ protected void ProcessResponseBodyOrStructureMembers(Member member, bool isStruc #line default #line hidden - #line 506 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt" + #line 521 "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 507 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt" + #line 522 "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 507 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt" + #line 522 "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"); #line default #line hidden - #line 509 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt" + #line 524 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt" } + if (!skipXmlTestExpressionInnerLogic) + { #line default #line hidden - #line 511 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt" + #line 528 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt" this.Write(" if (response."); #line default #line hidden - #line 512 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt" + #line 529 "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 512 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt" + #line 529 "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 514 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt" + #line 531 "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 514 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt" + #line 531 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt" this.Write(" = new "); #line default #line hidden - #line 514 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt" + #line 531 "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 514 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt" + #line 531 "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 516 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt" + #line 533 "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 516 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt" + #line 533 "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 517 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt" + #line 534 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt" this.Write(this.ToStringHelper.ToStringWithCulture(unmarshalledVariable)); #line default #line hidden - #line 517 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt" + #line 534 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt" this.Write("."); #line default #line hidden - #line 517 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt" + #line 534 "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 517 "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"); + #line 534 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt" +this.Write(".Add(unmarshaller.Unmarshall(context));\r\n"); + + + #line default + #line hidden + + #line 535 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt" + + } #line default #line hidden - #line 519 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt" + #line 538 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt" +WriteInjectXmlUnmarshallCode(member); + + #line default + #line hidden + + #line 538 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt" +this.Write("\t\t\t\t\t\tcontinue;\r\n"); + + + #line default + #line hidden + + #line 540 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt" if (!skipXmlTestExpression) { @@ -2252,14 +2324,14 @@ protected void ProcessResponseBodyOrStructureMembers(Member member, bool isStruc #line default #line hidden - #line 522 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt" + #line 543 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt" this.Write("\t\t\t\t\t}\r\n"); #line default #line hidden - #line 524 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt" + #line 545 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt" } } @@ -2272,85 +2344,108 @@ protected void ProcessResponseBodyOrStructureMembers(Member member, bool isStruc #line default #line hidden - #line 531 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt" + #line 552 "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 532 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt" + #line 553 "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 532 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt" + #line 553 "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"); #line default #line hidden - #line 534 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt" + #line 555 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt" } + if (!skipXmlTestExpressionInnerLogic) + { #line default #line hidden - #line 536 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt" + #line 559 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt" this.Write("\t\t\t\t\t\tvar unmarshaller = "); #line default #line hidden - #line 537 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt" + #line 560 "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 537 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt" + #line 560 "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 538 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt" + #line 561 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt" this.Write(this.ToStringHelper.ToStringWithCulture(unmarshalledVariable)); #line default #line hidden - #line 538 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt" + #line 561 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt" this.Write("."); #line default #line hidden - #line 538 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt" + #line 561 "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 538 "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"); + #line 561 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt" +this.Write(" = unmarshaller.Unmarshall(context);\r\n"); #line default #line hidden - #line 540 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt" + #line 562 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt" + + } + + + #line default + #line hidden + + #line 565 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt" +WriteInjectXmlUnmarshallCode(member); + + #line default + #line hidden + + #line 565 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt" +this.Write("\t\t\t\t\t\tcontinue;\r\n"); + + + #line default + #line hidden + + #line 567 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt" if (!skipXmlTestExpression) { @@ -2359,14 +2454,14 @@ protected void ProcessResponseBodyOrStructureMembers(Member member, bool isStruc #line default #line hidden - #line 543 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt" + #line 570 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt" this.Write("\t\t\t\t\t}\r\n"); #line default #line hidden - #line 545 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt" + #line 572 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt" } } @@ -2380,28 +2475,28 @@ protected void ProcessResponseBodyOrStructureMembers(Member member, bool isStruc #line default #line hidden - #line 553 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt" + #line 580 "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 554 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt" + #line 581 "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 554 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt" + #line 581 "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"); #line default #line hidden - #line 556 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt" + #line 583 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt" } else @@ -2413,88 +2508,111 @@ protected void ProcessResponseBodyOrStructureMembers(Member member, bool isStruc #line default #line hidden - #line 562 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt" + #line 589 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt" this.Write(" if (context.TestExpression(\"@"); #line default #line hidden - #line 563 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt" + #line 590 "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 563 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt" + #line 590 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt" this.Write("\", targetDepth - 1))\r\n\t\t\t\t\t{\r\n"); #line default #line hidden - #line 565 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt" + #line 592 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt" } } if (!member.HasPredicateListUnmarshaller) { + if (!skipXmlTestExpressionInnerLogic) + { #line default #line hidden - #line 570 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt" + #line 599 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt" this.Write("\t\t\t\t\t\tvar unmarshaller = "); #line default #line hidden - #line 571 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt" + #line 600 "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 571 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt" + #line 600 "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 572 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt" + #line 601 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt" this.Write(this.ToStringHelper.ToStringWithCulture(unmarshalledVariable)); #line default #line hidden - #line 572 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt" + #line 601 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt" this.Write("."); #line default #line hidden - #line 572 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt" + #line 601 "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 572 "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"); + #line 601 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt" +this.Write(" = unmarshaller.Unmarshall(context);\r\n"); #line default #line hidden - #line 574 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt" + #line 602 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt" + + } + + + #line default + #line hidden + + #line 605 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt" +WriteInjectXmlUnmarshallCode(member); + + #line default + #line hidden + + #line 605 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt" +this.Write("\t\t\t\t\t\tcontinue;\r\n"); + + + #line default + #line hidden + + #line 607 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt" } if (member.HasPredicateListUnmarshaller) @@ -2502,117 +2620,140 @@ protected void ProcessResponseBodyOrStructureMembers(Member member, bool isStruc var predicateData = this.Config.ServiceModel.Customizations.GetShapeModifier(member.OwningShape.Name).PredicateListUnmarshallers[member.ModeledName]; var predicateListUnmarshallerName = (string)predicateData["predicateListUnmarshallerName"]; var filterPredicateName = (string)predicateData["filterPredicateName"]; + if (!skipXmlTestExpressionInnerLogic) + { #line default #line hidden - #line 581 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt" + #line 616 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt" this.Write("\t\t\t\t\t\tvar predicateList = "); #line default #line hidden - #line 582 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt" + #line 617 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt" this.Write(this.ToStringHelper.ToStringWithCulture(predicateListUnmarshallerName)); #line default #line hidden - #line 582 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt" + #line 617 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt" this.Write(".Instance.Unmarshall(context);\r\n\t\t\t\t\t\t"); #line default #line hidden - #line 583 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt" + #line 618 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt" this.Write(this.ToStringHelper.ToStringWithCulture(unmarshalledVariable)); #line default #line hidden - #line 583 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt" + #line 618 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt" this.Write("."); #line default #line hidden - #line 583 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt" + #line 618 "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 583 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt" + #line 618 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt" this.Write(" = new "); #line default #line hidden - #line 583 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt" + #line 618 "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 583 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt" + #line 618 "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 584 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt" + #line 619 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt" this.Write(this.ToStringHelper.ToStringWithCulture(unmarshalledVariable)); #line default #line hidden - #line 584 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt" + #line 619 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt" this.Write("."); #line default #line hidden - #line 584 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt" + #line 619 "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 584 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt" + #line 619 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt" this.Write("."); #line default #line hidden - #line 584 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt" + #line 619 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt" this.Write(this.ToStringHelper.ToStringWithCulture(filterPredicateName)); #line default #line hidden - #line 584 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt" -this.Write(" = predicateList[0];\r\n\t\t\t\t\t\tcontinue;\r\n"); + #line 619 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt" +this.Write(" = predicateList[0];\r\n"); #line default #line hidden - #line 586 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt" + #line 620 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt" + + } + + + #line default + #line hidden + + #line 623 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt" +WriteInjectXmlUnmarshallCode(member); + + #line default + #line hidden + + #line 623 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt" +this.Write("\t\t\t\t\t\tcontinue;\r\n"); + + + #line default + #line hidden + + #line 625 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt" } if (!skipXmlTestExpression) @@ -2622,20 +2763,64 @@ protected void ProcessResponseBodyOrStructureMembers(Member member, bool isStruc #line default #line hidden - #line 590 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt" + #line 629 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt" this.Write("\t\t\t\t\t}\r\n"); #line default #line hidden - #line 592 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt" + #line 631 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt" } } } + #line default + #line hidden + + #line 636 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt" + + protected void WriteInjectXmlUnmarshallCode(Member member) + { + if (this.Config.ServiceModel.Customizations.TryGetPropertyModifier(member.OwningShape.Name, member.ModeledName, out var modifier)) + { + foreach (var code in modifier.InjectXmlUnmarshallCode) + { + + + #line default + #line hidden + + #line 643 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt" +this.Write(" "); + + + #line default + #line hidden + + #line 644 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt" +this.Write(this.ToStringHelper.ToStringWithCulture(code)); + + + #line default + #line hidden + + #line 644 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\BaseResponseUnmarshaller.tt" +this.Write("\r\n"); + + + #line default + #line hidden + + #line 645 "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 f8c36f8c2bff..24b9745d2972 100644 --- a/generator/ServiceClientGeneratorLib/Generators/Marshallers/BaseResponseUnmarshaller.tt +++ b/generator/ServiceClientGeneratorLib/Generators/Marshallers/BaseResponseUnmarshaller.tt @@ -148,6 +148,8 @@ using Amazon.Runtime.Internal.Util; { foreach (var member in this.Operation.ResponseHeaderMembers) { + if (this.Config.ServiceModel.Customizations.ShapeModifiers.TryGetValue(member.OwningShape.Name, out var modifier) && modifier.ExcludedUnmarshallingProperties.Contains(member.ModeledName)) + continue; if (member.Shape.IsMap) { #> @@ -428,12 +430,13 @@ using Amazon.Runtime.Internal.Util; /// Only to be used by rest-xml response unmarshallers protected void ProcessResponseBodyOrStructureMembers(Member member, bool isStructure, Shape topLevelShape) { - bool skipXmlTestExpression = false, isDataTypeSwapList = false, dataTypeSwapIsFlattened = false; + bool skipXmlTestExpression = false, isDataTypeSwapList = false, dataTypeSwapIsFlattened = false, skipXmlTestExpressionInnerLogic = false; if (this.Config.ServiceModel.Customizations.ShapeModifiers.TryGetValue(topLevelShape.Name, out var modifier) && modifier.SkipXmlTestExpressionProperties.Contains(member.ModeledName)) skipXmlTestExpression = true; - + if (this.Config.ServiceModel.Customizations.TryGetPropertyModifier(member.OwningShape.Name, member.ModeledName, out var propModifier) && propModifier.SkipContextTestExpressionUnmarshallingLogic) + skipXmlTestExpressionInnerLogic = true; if (this.Config.ServiceModel.Customizations.OverrideDataType(topLevelShape.Name, member.ModeledName) != null) { var dataTypeOverride = this.Config.ServiceModel.Customizations.OverrideDataType(topLevelShape.Name, member.ModeledName); @@ -455,6 +458,8 @@ using Amazon.Runtime.Internal.Util; { <#+ } + if (!skipXmlTestExpressionInnerLogic) + { #> if (<#=unmarshalledVariable#>.<#=member.PropertyName#> == null) { @@ -462,6 +467,10 @@ using Amazon.Runtime.Internal.Util; } var unmarshaller = <#= member.DetermineTypeUnmarshallerInstantiate() #>; <#=unmarshalledVariable#>.<#=member.PropertyName#>.Add(unmarshaller.Unmarshall(context)); +<#+ + } +#> +<#+WriteInjectXmlUnmarshallCode(member);#> continue; <#+ if (!skipXmlTestExpression) @@ -480,6 +489,8 @@ using Amazon.Runtime.Internal.Util; { <#+ } + if (!skipXmlTestExpressionInnerLogic) + { #> if (<#=unmarshalledVariable#>.<#=member.PropertyName#> == null) { @@ -487,6 +498,10 @@ using Amazon.Runtime.Internal.Util; } var unmarshaller = <#= member.DetermineTypeUnmarshallerInstantiate() #>; <#=unmarshalledVariable#>.<#=member.PropertyName#>.Add(unmarshaller.Unmarshall(context)); +<#+ + } +#> +<#+WriteInjectXmlUnmarshallCode(member);#> continue; <#+ if (!skipXmlTestExpression) @@ -508,6 +523,8 @@ using Amazon.Runtime.Internal.Util; { <#+ } + if (!skipXmlTestExpressionInnerLogic) + { #> if (response.<#=member.PropertyName#> == null) { @@ -515,6 +532,10 @@ using Amazon.Runtime.Internal.Util; } var unmarshaller = <#= member.DetermineTypeUnmarshallerInstantiate() #>; <#=unmarshalledVariable#>.<#=member.PropertyName#>.Add(unmarshaller.Unmarshall(context)); +<#+ + } +#> +<#+WriteInjectXmlUnmarshallCode(member);#> continue; <#+ if (!skipXmlTestExpression) @@ -533,9 +554,15 @@ using Amazon.Runtime.Internal.Util; { <#+ } + if (!skipXmlTestExpressionInnerLogic) + { #> var unmarshaller = <#= member.DetermineTypeUnmarshallerInstantiate() #>; <#=unmarshalledVariable#>.<#=member.PropertyName#> = unmarshaller.Unmarshall(context); +<#+ + } +#> +<#+WriteInjectXmlUnmarshallCode(member);#> continue; <#+ if (!skipXmlTestExpression) @@ -567,9 +594,15 @@ using Amazon.Runtime.Internal.Util; } if (!member.HasPredicateListUnmarshaller) { + if (!skipXmlTestExpressionInnerLogic) + { #> var unmarshaller = <#= member.DetermineTypeUnmarshallerInstantiate() #>; <#=unmarshalledVariable#>.<#=member.PropertyName#> = unmarshaller.Unmarshall(context); +<#+ + } +#> +<#+WriteInjectXmlUnmarshallCode(member);#> continue; <#+ } @@ -578,10 +611,16 @@ using Amazon.Runtime.Internal.Util; var predicateData = this.Config.ServiceModel.Customizations.GetShapeModifier(member.OwningShape.Name).PredicateListUnmarshallers[member.ModeledName]; var predicateListUnmarshallerName = (string)predicateData["predicateListUnmarshallerName"]; var filterPredicateName = (string)predicateData["filterPredicateName"]; + if (!skipXmlTestExpressionInnerLogic) + { #> var predicateList = <#=predicateListUnmarshallerName#>.Instance.Unmarshall(context); <#=unmarshalledVariable#>.<#=member.PropertyName#> = new <#=member.DetermineType()#>(); <#=unmarshalledVariable#>.<#=member.PropertyName#>.<#=filterPredicateName#> = predicateList[0]; +<#+ + } +#> +<#+WriteInjectXmlUnmarshallCode(member);#> continue; <#+ } @@ -593,4 +632,18 @@ using Amazon.Runtime.Internal.Util; } } } +#> +<#+ + protected void WriteInjectXmlUnmarshallCode(Member member) + { + if (this.Config.ServiceModel.Customizations.TryGetPropertyModifier(member.OwningShape.Name, member.ModeledName, out var modifier)) + { + foreach (var code in modifier.InjectXmlUnmarshallCode) + { +#> + <#=code#> +<#+ + } + } + } #> \ No newline at end of file diff --git a/generator/ServiceClientGeneratorLib/Generators/Marshallers/RestXmlRequestMarshaller.cs b/generator/ServiceClientGeneratorLib/Generators/Marshallers/RestXmlRequestMarshaller.cs index 8fdb34fb3ee3..52b4d4e684b3 100644 --- a/generator/ServiceClientGeneratorLib/Generators/Marshallers/RestXmlRequestMarshaller.cs +++ b/generator/ServiceClientGeneratorLib/Generators/Marshallers/RestXmlRequestMarshaller.cs @@ -1987,7 +1987,7 @@ void ProcessStructure(int level, string variableName, Shape shape) #line 430 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" } -// Only namespaces at the top level Shape matter for a structure, so there is no logic for namespaces here. + void ProcessStructure(int level, string variableName, Member member) { var shape = member.Shape.IsList ? member.Shape.ListShape : member.Shape ; @@ -2045,77 +2045,201 @@ void ProcessStructure(int level, string variableName, Member member) #line hidden #line 445 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" + + if (!string.IsNullOrEmpty(member.Shape.XmlNamespace)) + { + if (!string.IsNullOrEmpty(member.Shape.XmlNamespacePrefix)) + { + + + #line default + #line hidden + + #line 451 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" this.Write(this.ToStringHelper.ToStringWithCulture(new string(' ', level * 4))); #line default #line hidden - #line 445 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" + #line 451 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" this.Write("\t\t\t\t\txmlWriter.WriteStartElement(\""); #line default #line hidden - #line 445 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" + #line 451 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" +this.Write(this.ToStringHelper.ToStringWithCulture(member.Shape.XmlNamespacePrefix)); + + + #line default + #line hidden + + #line 451 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" +this.Write("\",\""); + + + #line default + #line hidden + + #line 451 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" this.Write(this.ToStringHelper.ToStringWithCulture(marshallName)); #line default #line hidden - #line 445 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" + #line 451 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" +this.Write("\",\""); + + + #line default + #line hidden + + #line 451 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" +this.Write(this.ToStringHelper.ToStringWithCulture(member.Shape.XmlNamespace)); + + + #line default + #line hidden + + #line 451 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" this.Write("\");\r\n"); #line default #line hidden - #line 446 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" + #line 452 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" + + } + else + { + + + #line default + #line hidden + + #line 457 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" +this.Write(this.ToStringHelper.ToStringWithCulture(new string(' ', level * 4))); + + + #line default + #line hidden + + #line 457 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" +this.Write("\t\t\t\t\txmlWriter.WriteStartElement(\""); + + + #line default + #line hidden + + #line 457 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" +this.Write(this.ToStringHelper.ToStringWithCulture(marshallName)); + + + #line default + #line hidden + + #line 457 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" +this.Write("\",\""); + + + #line default + #line hidden + + #line 457 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" +this.Write(this.ToStringHelper.ToStringWithCulture(member.Shape.XmlNamespace)); + + + #line default + #line hidden + + #line 457 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" +this.Write("\");\r\n"); + + + #line default + #line hidden + + #line 458 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" + + } + } + else + { + + + #line default + #line hidden + + #line 464 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" +this.Write(this.ToStringHelper.ToStringWithCulture(new string(' ', level * 4))); + + #line default + #line hidden + + #line 464 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" +this.Write("\t\t\t\t\txmlWriter.WriteStartElement(\""); #line default #line hidden - #line 448 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" + #line 464 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" +this.Write(this.ToStringHelper.ToStringWithCulture(marshallName)); + + + #line default + #line hidden + + #line 464 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" +this.Write("\");\r\n"); + + #line default + #line hidden + + #line 465 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" + + } ProcessMembers(level + 1, variableName, shape.Members); #line default #line hidden - #line 451 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" + #line 469 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" this.Write(this.ToStringHelper.ToStringWithCulture(new string(' ', level * 4))); #line default #line hidden - #line 451 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" + #line 469 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" this.Write("\t\t\t\t\txmlWriter.WriteEndElement();\r\n"); #line default #line hidden - #line 452 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" + #line 470 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" this.Write(this.ToStringHelper.ToStringWithCulture(new string(' ', level * 4))); #line default #line hidden - #line 452 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" + #line 470 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" this.Write("\t\t\t\t}\r\n"); #line default #line hidden - #line 453 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" + #line 471 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" } void ProcessList(int level, string variableName, Member member) @@ -2127,119 +2251,119 @@ void ProcessList(int level, string variableName, Member member) #line default #line hidden - #line 460 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" + #line 478 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" this.Write(this.ToStringHelper.ToStringWithCulture(new string(' ', level * 4))); #line default #line hidden - #line 460 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" + #line 478 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" this.Write("\t\t\t\tvar "); #line default #line hidden - #line 460 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" + #line 478 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" this.Write(this.ToStringHelper.ToStringWithCulture(listVariable)); #line default #line hidden - #line 460 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" + #line 478 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" this.Write(" = "); #line default #line hidden - #line 460 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" + #line 478 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" this.Write(this.ToStringHelper.ToStringWithCulture(variableName)); #line default #line hidden - #line 460 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" + #line 478 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" this.Write("."); #line default #line hidden - #line 460 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" + #line 478 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" this.Write(this.ToStringHelper.ToStringWithCulture(member.PropertyName)); #line default #line hidden - #line 460 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" + #line 478 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" this.Write(";\r\n"); #line default #line hidden - #line 461 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" + #line 479 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" this.Write(this.ToStringHelper.ToStringWithCulture(new string(' ', level * 4))); #line default #line hidden - #line 461 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" + #line 479 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" this.Write("\t\t\t\tif ("); #line default #line hidden - #line 461 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" + #line 479 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" this.Write(this.ToStringHelper.ToStringWithCulture(listVariable)); #line default #line hidden - #line 461 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" + #line 479 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" this.Write(" != null && ("); #line default #line hidden - #line 461 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" + #line 479 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" this.Write(this.ToStringHelper.ToStringWithCulture(listVariable)); #line default #line hidden - #line 461 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" + #line 479 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" this.Write(".Count > 0 || !AWSConfigs.InitializeCollections)) \r\n"); #line default #line hidden - #line 462 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" + #line 480 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" this.Write(this.ToStringHelper.ToStringWithCulture(new string(' ', level * 4))); #line default #line hidden - #line 462 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" + #line 480 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" this.Write("\t\t\t\t{\r\n"); #line default #line hidden - #line 463 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" + #line 481 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" if (!member.IsFlattened && !member.Shape.IsFlattened) { @@ -2250,35 +2374,35 @@ void ProcessList(int level, string variableName, Member member) #line default #line hidden - #line 469 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" + #line 487 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" this.Write(this.ToStringHelper.ToStringWithCulture(new string(' ', level * 4))); #line default #line hidden - #line 469 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" + #line 487 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" this.Write("\t\t\t\t\txmlWriter.WriteStartElement(\""); #line default #line hidden - #line 469 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" + #line 487 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" this.Write(this.ToStringHelper.ToStringWithCulture(member.MarshallName)); #line default #line hidden - #line 469 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" + #line 487 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" this.Write("\");\r\n"); #line default #line hidden - #line 470 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" + #line 488 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" } else @@ -2290,49 +2414,49 @@ void ProcessList(int level, string variableName, Member member) #line default #line hidden - #line 477 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" + #line 495 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" this.Write(this.ToStringHelper.ToStringWithCulture(new string(' ', level * 4))); #line default #line hidden - #line 477 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" + #line 495 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" this.Write("\t\t\t\t\txmlWriter.WriteStartElement(\""); #line default #line hidden - #line 477 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" + #line 495 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" this.Write(this.ToStringHelper.ToStringWithCulture(member.MarshallName)); #line default #line hidden - #line 477 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" + #line 495 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" this.Write("\", \""); #line default #line hidden - #line 477 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" + #line 495 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" this.Write(this.ToStringHelper.ToStringWithCulture(member.XmlNamespace)); #line default #line hidden - #line 477 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" + #line 495 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" this.Write("\");\r\n"); #line default #line hidden - #line 478 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" + #line 496 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" } else @@ -2342,77 +2466,77 @@ void ProcessList(int level, string variableName, Member member) #line default #line hidden - #line 483 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" + #line 501 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" this.Write(this.ToStringHelper.ToStringWithCulture(new string(' ', level * 4))); #line default #line hidden - #line 483 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" + #line 501 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" this.Write("\t\t\t\t\txmlWriter.WriteStartElement(\""); #line default #line hidden - #line 483 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" + #line 501 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" this.Write(this.ToStringHelper.ToStringWithCulture(member.MarshallName)); #line default #line hidden - #line 483 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" + #line 501 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" this.Write("\");\r\n"); #line default #line hidden - #line 484 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" + #line 502 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" this.Write(this.ToStringHelper.ToStringWithCulture(new string(' ', level * 4))); #line default #line hidden - #line 484 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" + #line 502 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" this.Write("\t\t\t\t\txmlWriter.WriteAttributeString(\"xmlns\",\""); #line default #line hidden - #line 484 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" + #line 502 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" this.Write(this.ToStringHelper.ToStringWithCulture(member.XmlNamespacePrefix)); #line default #line hidden - #line 484 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" + #line 502 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" this.Write("\",null,\""); #line default #line hidden - #line 484 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" + #line 502 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" this.Write(this.ToStringHelper.ToStringWithCulture(member.XmlNamespace)); #line default #line hidden - #line 484 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" + #line 502 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" this.Write("\");\r\n"); #line default #line hidden - #line 485 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" + #line 503 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" } } @@ -2422,63 +2546,63 @@ void ProcessList(int level, string variableName, Member member) #line default #line hidden - #line 490 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" + #line 508 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" this.Write(this.ToStringHelper.ToStringWithCulture(new string(' ', level * 4))); #line default #line hidden - #line 490 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" + #line 508 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" this.Write("\t\t\t\t\tforeach (var "); #line default #line hidden - #line 490 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" + #line 508 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" this.Write(this.ToStringHelper.ToStringWithCulture(listItemVariable)); #line default #line hidden - #line 490 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" + #line 508 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" this.Write(" in "); #line default #line hidden - #line 490 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" + #line 508 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" this.Write(this.ToStringHelper.ToStringWithCulture(listVariable)); #line default #line hidden - #line 490 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" + #line 508 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" this.Write(") \r\n"); #line default #line hidden - #line 491 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" + #line 509 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" this.Write(this.ToStringHelper.ToStringWithCulture(new string(' ', level * 4))); #line default #line hidden - #line 491 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" + #line 509 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" this.Write("\t\t\t\t\t{\r\n"); #line default #line hidden - #line 492 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" + #line 510 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" if(member.Shape.ListShape.IsStructure) { @@ -2496,7 +2620,7 @@ void ProcessList(int level, string variableName, Member member) else listMarshallName = member.Shape.ListMarshallName ?? "member"; // see https://smithy.io/2.0/spec/protocol-traits.html#xmlflattened-trait - if(member.IsFlattened) + if(member.IsFlattened || member.Shape.IsFlattened) listMarshallName = member.LocationName ?? member.ModeledName; if(member.Shape.ListShape.IsTimeStamp) { @@ -2506,91 +2630,91 @@ void ProcessList(int level, string variableName, Member member) #line default #line hidden - #line 515 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" + #line 533 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" this.Write(this.ToStringHelper.ToStringWithCulture(new string(' ', level * 4))); #line default #line hidden - #line 515 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" + #line 533 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" this.Write("\t\t\t\t\t\txmlWriter.WriteStartElement(\""); #line default #line hidden - #line 515 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" + #line 533 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" this.Write(this.ToStringHelper.ToStringWithCulture(listMarshallName)); #line default #line hidden - #line 515 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" + #line 533 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" this.Write("\");\r\n"); #line default #line hidden - #line 516 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" + #line 534 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" this.Write(this.ToStringHelper.ToStringWithCulture(new string(' ', level * 4))); #line default #line hidden - #line 516 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" + #line 534 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" this.Write("\t\t\t\t\t\txmlWriter.WriteValue("); #line default #line hidden - #line 516 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" + #line 534 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" this.Write(this.ToStringHelper.ToStringWithCulture(member.Shape.ListShape.PrimitiveMarshaller(MarshallLocation.Body))); #line default #line hidden - #line 516 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" + #line 534 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" this.Write("("); #line default #line hidden - #line 516 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" + #line 534 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" this.Write(this.ToStringHelper.ToStringWithCulture(listItemVariable)); #line default #line hidden - #line 516 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" + #line 534 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" this.Write("));\r\n"); #line default #line hidden - #line 517 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" + #line 535 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" this.Write(this.ToStringHelper.ToStringWithCulture(new string(' ', level * 4))); #line default #line hidden - #line 517 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" + #line 535 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" this.Write("\t\t\t\t\t\txmlWriter.WriteEndElement();\r\n"); #line default #line hidden - #line 518 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" + #line 536 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" } @@ -2610,35 +2734,35 @@ void ProcessList(int level, string variableName, Member member) #line default #line hidden - #line 533 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" + #line 551 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" this.Write(this.ToStringHelper.ToStringWithCulture(new string(' ', level * 4))); #line default #line hidden - #line 533 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" + #line 551 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" this.Write("\t\t\t\t\t\txmlWriter.WriteStartElement(\""); #line default #line hidden - #line 533 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" + #line 551 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" this.Write(this.ToStringHelper.ToStringWithCulture(listMarshallName)); #line default #line hidden - #line 533 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" + #line 551 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" this.Write("\");\r\n"); #line default #line hidden - #line 534 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" + #line 552 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" } else @@ -2652,49 +2776,49 @@ void ProcessList(int level, string variableName, Member member) #line default #line hidden - #line 543 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" + #line 561 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" this.Write(this.ToStringHelper.ToStringWithCulture(new string(' ', level * 4))); #line default #line hidden - #line 543 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" + #line 561 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" this.Write("\t\t\t\t\t\txmlWriter.WriteStartElement(\""); #line default #line hidden - #line 543 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" + #line 561 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" this.Write(this.ToStringHelper.ToStringWithCulture(listMarshallName)); #line default #line hidden - #line 543 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" + #line 561 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" this.Write("\", \""); #line default #line hidden - #line 543 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" + #line 561 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" this.Write(this.ToStringHelper.ToStringWithCulture(listMemberXmlNamespaceNode)); #line default #line hidden - #line 543 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" + #line 561 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" this.Write("\");\r\n\r\n"); #line default #line hidden - #line 545 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" + #line 563 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" } else @@ -2704,77 +2828,77 @@ void ProcessList(int level, string variableName, Member member) #line default #line hidden - #line 550 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" + #line 568 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" this.Write(this.ToStringHelper.ToStringWithCulture(new string(' ', level * 4))); #line default #line hidden - #line 550 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" + #line 568 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" this.Write("\t\t\t\t\t\txmlWriter.WriteStartElement(\""); #line default #line hidden - #line 550 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" + #line 568 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" this.Write(this.ToStringHelper.ToStringWithCulture(listMarshallName)); #line default #line hidden - #line 550 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" + #line 568 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" this.Write("\");\r\n"); #line default #line hidden - #line 551 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" + #line 569 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" this.Write(this.ToStringHelper.ToStringWithCulture(new string(' ', level * 4))); #line default #line hidden - #line 551 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" + #line 569 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" this.Write("\t\t\t\t\t\txmlWriter.WriteAttributeString(\"xmlns\",\""); #line default #line hidden - #line 551 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" + #line 569 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" this.Write(this.ToStringHelper.ToStringWithCulture(listMemberXmlNamespaceNode[ServiceModel.XmlNamespacePrefixKey])); #line default #line hidden - #line 551 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" + #line 569 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" this.Write("\",null,\""); #line default #line hidden - #line 551 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" + #line 569 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" this.Write(this.ToStringHelper.ToStringWithCulture(listMemberXmlNamespaceNode[ServiceModel.XmlNamespaceUriKey])); #line default #line hidden - #line 551 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" + #line 569 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" this.Write("\");\r\n"); #line default #line hidden - #line 552 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" + #line 570 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" } } @@ -2787,7 +2911,7 @@ void ProcessList(int level, string variableName, Member member) #line default #line hidden - #line 560 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" + #line 578 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" if (innerShape == null || (innerShape != null && !innerShape.Shape.IsList)) { @@ -2796,35 +2920,35 @@ void ProcessList(int level, string variableName, Member member) #line default #line hidden - #line 564 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" + #line 582 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" this.Write(this.ToStringHelper.ToStringWithCulture(new string(' ', level * 4))); #line default #line hidden - #line 564 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" + #line 582 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" this.Write("\t\t\t\t\t\txmlWriter.WriteValue("); #line default #line hidden - #line 564 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" + #line 582 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" this.Write(this.ToStringHelper.ToStringWithCulture(listItemVariable)); #line default #line hidden - #line 564 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" + #line 582 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" this.Write(");\r\n"); #line default #line hidden - #line 565 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" + #line 583 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" } @@ -2832,21 +2956,21 @@ void ProcessList(int level, string variableName, Member member) #line default #line hidden - #line 568 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" + #line 586 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" this.Write(this.ToStringHelper.ToStringWithCulture(new string(' ', level * 4))); #line default #line hidden - #line 568 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" + #line 586 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" this.Write("\t\t\t\t\t\txmlWriter.WriteEndElement();\r\n"); #line default #line hidden - #line 569 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" + #line 587 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" } } @@ -2855,21 +2979,21 @@ void ProcessList(int level, string variableName, Member member) #line default #line hidden - #line 573 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" + #line 591 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" this.Write(this.ToStringHelper.ToStringWithCulture(new string(' ', level * 4))); #line default #line hidden - #line 573 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" + #line 591 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" this.Write("\t\t\t\t\t}\t\t\t\r\n"); #line default #line hidden - #line 574 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" + #line 592 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" if (!member.IsFlattened && !member.Shape.IsFlattened) { @@ -2878,21 +3002,21 @@ void ProcessList(int level, string variableName, Member member) #line default #line hidden - #line 578 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" + #line 596 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" this.Write(this.ToStringHelper.ToStringWithCulture(new string(' ', level * 4))); #line default #line hidden - #line 578 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" + #line 596 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" this.Write("\t\t\t\t\txmlWriter.WriteEndElement();\t\t\t\r\n"); #line default #line hidden - #line 579 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" + #line 597 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" } @@ -2900,21 +3024,21 @@ void ProcessList(int level, string variableName, Member member) #line default #line hidden - #line 582 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" + #line 600 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" this.Write(this.ToStringHelper.ToStringWithCulture(new string(' ', level * 4))); #line default #line hidden - #line 582 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" + #line 600 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" this.Write("\t\t\t\t}\r\n"); #line default #line hidden - #line 583 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" + #line 601 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" } @@ -2927,35 +3051,35 @@ void ProcessMap(int level, string variableName, Member member) #line default #line hidden - #line 591 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" + #line 609 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" this.Write(this.ToStringHelper.ToStringWithCulture(new string(' ', level * 4))); #line default #line hidden - #line 591 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" + #line 609 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" this.Write("\t\t\t\t\txmlWriter.WriteStartElement(\""); #line default #line hidden - #line 591 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" + #line 609 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" this.Write(this.ToStringHelper.ToStringWithCulture(member.MarshallName)); #line default #line hidden - #line 591 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" + #line 609 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" this.Write("\");\r\n"); #line default #line hidden - #line 592 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" + #line 610 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" } else @@ -2967,49 +3091,49 @@ void ProcessMap(int level, string variableName, Member member) #line default #line hidden - #line 599 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" + #line 617 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" this.Write(this.ToStringHelper.ToStringWithCulture(new string(' ', level * 4))); #line default #line hidden - #line 599 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" + #line 617 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" this.Write("\t\t\t\t\txmlWriter.WriteStartElement(\""); #line default #line hidden - #line 599 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" + #line 617 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" this.Write(this.ToStringHelper.ToStringWithCulture(member.MarshallName)); #line default #line hidden - #line 599 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" + #line 617 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" this.Write("\",\""); #line default #line hidden - #line 599 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" + #line 617 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" this.Write(this.ToStringHelper.ToStringWithCulture(member.XmlNamespace)); #line default #line hidden - #line 599 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" + #line 617 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" this.Write("\");\r\n\r\n"); #line default #line hidden - #line 601 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" + #line 619 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" } else @@ -3019,77 +3143,77 @@ void ProcessMap(int level, string variableName, Member member) #line default #line hidden - #line 606 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" + #line 624 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" this.Write(this.ToStringHelper.ToStringWithCulture(new string(' ', level * 4))); #line default #line hidden - #line 606 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" + #line 624 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" this.Write("\t\t\t\t\txmlWriter.WriteStartElement(\""); #line default #line hidden - #line 606 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" + #line 624 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" this.Write(this.ToStringHelper.ToStringWithCulture(member.MarshallName)); #line default #line hidden - #line 606 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" + #line 624 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" this.Write("\");\r\n"); #line default #line hidden - #line 607 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" + #line 625 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" this.Write(this.ToStringHelper.ToStringWithCulture(new string(' ', level * 4))); #line default #line hidden - #line 607 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" + #line 625 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" this.Write("\t\t\t\t\txmlWriter.WriteAttributeString(\"xmlns\",\""); #line default #line hidden - #line 607 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" + #line 625 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" this.Write(this.ToStringHelper.ToStringWithCulture(member.XmlNamespacePrefix)); #line default #line hidden - #line 607 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" + #line 625 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" this.Write("\",null,\""); #line default #line hidden - #line 607 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" + #line 625 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" this.Write(this.ToStringHelper.ToStringWithCulture(member.XmlNamespace)); #line default #line hidden - #line 607 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" + #line 625 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" this.Write("\");\r\n"); #line default #line hidden - #line 608 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" + #line 626 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" } } @@ -3098,77 +3222,77 @@ void ProcessMap(int level, string variableName, Member member) #line default #line hidden - #line 612 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" + #line 630 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" this.Write(this.ToStringHelper.ToStringWithCulture(new string(' ', level * 4))); #line default #line hidden - #line 612 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" + #line 630 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" this.Write("\t\t\t\t\tforeach (var kvp in "); #line default #line hidden - #line 612 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" + #line 630 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" this.Write(this.ToStringHelper.ToStringWithCulture(variableName)); #line default #line hidden - #line 612 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" + #line 630 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" this.Write("."); #line default #line hidden - #line 612 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" + #line 630 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" this.Write(this.ToStringHelper.ToStringWithCulture(member.PropertyName)); #line default #line hidden - #line 612 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" + #line 630 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" this.Write(")\r\n"); #line default #line hidden - #line 613 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" + #line 631 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" this.Write(this.ToStringHelper.ToStringWithCulture(new string(' ', level * 4))); #line default #line hidden - #line 613 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" + #line 631 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" this.Write("\t\t\t\t\t{\r\n"); #line default #line hidden - #line 614 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" + #line 632 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" this.Write(this.ToStringHelper.ToStringWithCulture(new string(' ', level * 4))); #line default #line hidden - #line 614 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" + #line 632 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" this.Write("\t\t\t\t\t\txmlWriter.WriteStartElement(\"entry\");\r\n"); #line default #line hidden - #line 615 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" + #line 633 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" if(string.IsNullOrEmpty(member.Shape.KeyShapeXmlNamespace)) { @@ -3177,42 +3301,42 @@ void ProcessMap(int level, string variableName, Member member) #line default #line hidden - #line 618 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" + #line 636 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" this.Write("\r\n"); #line default #line hidden - #line 620 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" + #line 638 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" this.Write(this.ToStringHelper.ToStringWithCulture(new string(' ', level * 4))); #line default #line hidden - #line 620 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" + #line 638 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" this.Write("\t\t\t\t\t\txmlWriter.WriteElementString(\""); #line default #line hidden - #line 620 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" + #line 638 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" this.Write(this.ToStringHelper.ToStringWithCulture(member.Shape.KeyMarshallName)); #line default #line hidden - #line 620 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" + #line 638 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" this.Write("\", kvp.Key);\r\n"); #line default #line hidden - #line 621 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" + #line 639 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" } else @@ -3225,49 +3349,49 @@ void ProcessMap(int level, string variableName, Member member) #line default #line hidden - #line 629 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" + #line 647 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" this.Write(this.ToStringHelper.ToStringWithCulture(new string(' ', level * 4))); #line default #line hidden - #line 629 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" + #line 647 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" this.Write("\t\t\t\t\t\txmlWriter.WriteElementString(\""); #line default #line hidden - #line 629 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" + #line 647 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" this.Write(this.ToStringHelper.ToStringWithCulture(member.Shape.KeyMarshallName)); #line default #line hidden - #line 629 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" + #line 647 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" this.Write("\",\""); #line default #line hidden - #line 629 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" + #line 647 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" this.Write(this.ToStringHelper.ToStringWithCulture(member.Shape.KeyShapeXmlNamespace)); #line default #line hidden - #line 629 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" + #line 647 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" this.Write("\",kvp.Key);\r\n"); #line default #line hidden - #line 630 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" + #line 648 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" } else @@ -3277,63 +3401,63 @@ void ProcessMap(int level, string variableName, Member member) #line default #line hidden - #line 635 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" + #line 653 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" this.Write(this.ToStringHelper.ToStringWithCulture(new string(' ', level * 4))); #line default #line hidden - #line 635 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" + #line 653 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" this.Write("\t\t\t\t\t\txmlWriter.WriteElementString(\""); #line default #line hidden - #line 635 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" + #line 653 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" this.Write(this.ToStringHelper.ToStringWithCulture(keyNode[ServiceModel.XmlNamespaceKey][ServiceModel.XmlNamespacePrefixKey])); #line default #line hidden - #line 635 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" + #line 653 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" this.Write("\",\""); #line default #line hidden - #line 635 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" + #line 653 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" this.Write(this.ToStringHelper.ToStringWithCulture(member.Shape.KeyMarshallName)); #line default #line hidden - #line 635 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" + #line 653 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" this.Write("\",\""); #line default #line hidden - #line 635 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" + #line 653 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" this.Write(this.ToStringHelper.ToStringWithCulture(member.Shape.KeyShapeXmlNamespace)); #line default #line hidden - #line 635 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" + #line 653 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" this.Write("\",kvp.Key);\r\n\r\n"); #line default #line hidden - #line 637 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" + #line 655 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" } } @@ -3348,35 +3472,35 @@ void ProcessMap(int level, string variableName, Member member) #line default #line hidden - #line 647 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" + #line 665 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" this.Write(this.ToStringHelper.ToStringWithCulture(new string(' ', level * 4))); #line default #line hidden - #line 647 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" + #line 665 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" this.Write("\t\t\t\t\t\txmlWriter.WriteStartElement(\""); #line default #line hidden - #line 647 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" + #line 665 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" this.Write(this.ToStringHelper.ToStringWithCulture(member.Shape.ValueMarshallName)); #line default #line hidden - #line 647 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" + #line 665 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" this.Write("\");\r\n"); #line default #line hidden - #line 648 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" + #line 666 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" ProcessStructureAsMapValue(level + 2, "kvp.Value", member.Shape.ValueShape); @@ -3384,21 +3508,21 @@ void ProcessMap(int level, string variableName, Member member) #line default #line hidden - #line 651 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" + #line 669 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" this.Write(this.ToStringHelper.ToStringWithCulture(new string(' ', level * 4))); #line default #line hidden - #line 651 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" + #line 669 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" this.Write("\t\t\t\t\t\txmlWriter.WriteEndElement();\r\n"); #line default #line hidden - #line 652 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" + #line 670 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" } else @@ -3410,49 +3534,49 @@ void ProcessMap(int level, string variableName, Member member) #line default #line hidden - #line 659 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" + #line 677 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" this.Write(this.ToStringHelper.ToStringWithCulture(new string(' ', level * 4))); #line default #line hidden - #line 659 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" + #line 677 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" this.Write("\t\t\t\t\t\txmlWriter.WriteElementString(\""); #line default #line hidden - #line 659 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" + #line 677 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" this.Write(this.ToStringHelper.ToStringWithCulture(member.Shape.ValueMarshallName)); #line default #line hidden - #line 659 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" + #line 677 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" this.Write("\", kvp.Value"); #line default #line hidden - #line 659 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" + #line 677 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" this.Write(this.ToStringHelper.ToStringWithCulture(member.Shape.ValueShape.IsString ? "" : ".ToString()")); #line default #line hidden - #line 659 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" + #line 677 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" this.Write(");\r\n"); #line default #line hidden - #line 660 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" + #line 678 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" } else @@ -3465,63 +3589,63 @@ void ProcessMap(int level, string variableName, Member member) #line default #line hidden - #line 668 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" + #line 686 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" this.Write(this.ToStringHelper.ToStringWithCulture(new string(' ', level * 4))); #line default #line hidden - #line 668 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" + #line 686 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" this.Write("\t\t\t\t\t\txmlWriter.WriteElementString(\""); #line default #line hidden - #line 668 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" + #line 686 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" this.Write(this.ToStringHelper.ToStringWithCulture(member.Shape.ValueMarshallName)); #line default #line hidden - #line 668 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" + #line 686 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" this.Write("\", \""); #line default #line hidden - #line 668 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" + #line 686 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" this.Write(this.ToStringHelper.ToStringWithCulture(member.Shape.ValueShapeXmlNamespace)); #line default #line hidden - #line 668 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" + #line 686 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" this.Write("\",kvp.Value"); #line default #line hidden - #line 668 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" + #line 686 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" this.Write(this.ToStringHelper.ToStringWithCulture(member.Shape.ValueShape.IsString ? "" : ".ToString()")); #line default #line hidden - #line 668 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" + #line 686 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" this.Write(");\r\n"); #line default #line hidden - #line 669 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" + #line 687 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" } else { @@ -3530,77 +3654,77 @@ void ProcessMap(int level, string variableName, Member member) #line default #line hidden - #line 673 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" + #line 691 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" this.Write(this.ToStringHelper.ToStringWithCulture(new string(' ', level * 4))); #line default #line hidden - #line 673 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" + #line 691 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" this.Write("\t\t\t\t\t\txmlWriter.WriteElementString(\""); #line default #line hidden - #line 673 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" + #line 691 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" this.Write(this.ToStringHelper.ToStringWithCulture(valueNode[ServiceModel.XmlNamespaceKey][ServiceModel.XmlNamespacePrefixKey])); #line default #line hidden - #line 673 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" + #line 691 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" this.Write("\",\""); #line default #line hidden - #line 673 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" + #line 691 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" this.Write(this.ToStringHelper.ToStringWithCulture(member.Shape.ValueMarshallName)); #line default #line hidden - #line 673 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" + #line 691 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" this.Write("\", \""); #line default #line hidden - #line 673 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" + #line 691 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" this.Write(this.ToStringHelper.ToStringWithCulture(member.Shape.ValueShapeXmlNamespace)); #line default #line hidden - #line 673 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" + #line 691 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" this.Write("\",kvp.Value"); #line default #line hidden - #line 673 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" + #line 691 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" this.Write(this.ToStringHelper.ToStringWithCulture(member.Shape.ValueShape.IsString ? "" : ".ToString()")); #line default #line hidden - #line 673 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" + #line 691 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" this.Write(");\r\n"); #line default #line hidden - #line 674 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" + #line 692 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" } } @@ -3610,49 +3734,49 @@ void ProcessMap(int level, string variableName, Member member) #line default #line hidden - #line 679 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" + #line 697 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" this.Write(this.ToStringHelper.ToStringWithCulture(new string(' ', level * 4))); #line default #line hidden - #line 679 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" + #line 697 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" this.Write("\t\t\t\t\t\txmlWriter.WriteEndElement();\r\n"); #line default #line hidden - #line 680 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" + #line 698 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" this.Write(this.ToStringHelper.ToStringWithCulture(new string(' ', level * 4))); #line default #line hidden - #line 680 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" + #line 698 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" this.Write("\t\t\t\t\t}\r\n"); #line default #line hidden - #line 681 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" + #line 699 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" this.Write(this.ToStringHelper.ToStringWithCulture(new string(' ', level * 4))); #line default #line hidden - #line 681 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" + #line 699 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" this.Write("\t\t\t\t\txmlWriter.WriteEndElement();\r\n"); #line default #line hidden - #line 682 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" + #line 700 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" } @@ -3660,7 +3784,7 @@ void ProcessMap(int level, string variableName, Member member) #line default #line hidden - #line 685 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" + #line 703 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" // Separating the processing of a flattened map and a regular map for maintability void ProcessFlattenedMap(int level, string variableName, Member member) @@ -3670,91 +3794,91 @@ void ProcessFlattenedMap(int level, string variableName, Member member) #line default #line hidden - #line 690 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" + #line 708 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" this.Write(this.ToStringHelper.ToStringWithCulture(new string(' ', level * 4))); #line default #line hidden - #line 690 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" + #line 708 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" this.Write("\t\t\t\t\tforeach (var kvp in "); #line default #line hidden - #line 690 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" + #line 708 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" this.Write(this.ToStringHelper.ToStringWithCulture(variableName)); #line default #line hidden - #line 690 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" + #line 708 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" this.Write("."); #line default #line hidden - #line 690 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" + #line 708 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" this.Write(this.ToStringHelper.ToStringWithCulture(member.PropertyName)); #line default #line hidden - #line 690 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" + #line 708 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" this.Write(")\r\n"); #line default #line hidden - #line 691 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" + #line 709 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" this.Write(this.ToStringHelper.ToStringWithCulture(new string(' ', level * 4))); #line default #line hidden - #line 691 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" + #line 709 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" this.Write("\t\t\t\t\t{\r\n"); #line default #line hidden - #line 692 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" + #line 710 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" this.Write(this.ToStringHelper.ToStringWithCulture(new string(' ', level * 4))); #line default #line hidden - #line 692 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" + #line 710 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" this.Write("\t\t\t\t\t\txmlWriter.WriteStartElement(\""); #line default #line hidden - #line 692 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" + #line 710 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" this.Write(this.ToStringHelper.ToStringWithCulture(member.MarshallName)); #line default #line hidden - #line 692 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" + #line 710 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" this.Write("\");\r\n"); #line default #line hidden - #line 693 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" + #line 711 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" if(string.IsNullOrEmpty(member.Shape.KeyShapeXmlNamespace)) { @@ -3763,35 +3887,35 @@ void ProcessFlattenedMap(int level, string variableName, Member member) #line default #line hidden - #line 697 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" + #line 715 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" this.Write(this.ToStringHelper.ToStringWithCulture(new string(' ', level * 4))); #line default #line hidden - #line 697 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" + #line 715 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" this.Write("\t\t\t\t\t\txmlWriter.WriteElementString(\""); #line default #line hidden - #line 697 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" + #line 715 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" this.Write(this.ToStringHelper.ToStringWithCulture(member.Shape.KeyMarshallName)); #line default #line hidden - #line 697 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" + #line 715 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" this.Write("\", kvp.Key);\r\n"); #line default #line hidden - #line 698 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" + #line 716 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" } else @@ -3801,49 +3925,49 @@ void ProcessFlattenedMap(int level, string variableName, Member member) #line default #line hidden - #line 703 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" + #line 721 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" this.Write(this.ToStringHelper.ToStringWithCulture(new string(' ', level * 4))); #line default #line hidden - #line 703 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" + #line 721 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" this.Write("\t\t\t\t\t\txmlWriter.WriteElementString(\""); #line default #line hidden - #line 703 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" + #line 721 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" this.Write(this.ToStringHelper.ToStringWithCulture(member.Shape.KeyMarshallName)); #line default #line hidden - #line 703 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" + #line 721 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" this.Write("\",\""); #line default #line hidden - #line 703 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" + #line 721 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" this.Write(this.ToStringHelper.ToStringWithCulture(member.Shape.KeyShapeXmlNamespace)); #line default #line hidden - #line 703 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" + #line 721 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" this.Write("\", kvp.Key);\r\n"); #line default #line hidden - #line 704 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" + #line 722 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" } if(member.Shape.ValueShape.IsMap) @@ -3857,35 +3981,35 @@ void ProcessFlattenedMap(int level, string variableName, Member member) #line default #line hidden - #line 713 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" + #line 731 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" this.Write(this.ToStringHelper.ToStringWithCulture(new string(' ', level * 4))); #line default #line hidden - #line 713 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" + #line 731 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" this.Write("\t\t\t\t\t\txmlWriter.WriteStartElement(\""); #line default #line hidden - #line 713 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" + #line 731 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" this.Write(this.ToStringHelper.ToStringWithCulture(member.Shape.ValueMarshallName)); #line default #line hidden - #line 713 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" + #line 731 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" this.Write("\");\r\n"); #line default #line hidden - #line 714 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" + #line 732 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" ProcessStructureAsMapValue(level + 2, "kvp.Value", member.Shape.ValueShape); @@ -3893,21 +4017,21 @@ void ProcessFlattenedMap(int level, string variableName, Member member) #line default #line hidden - #line 717 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" + #line 735 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" this.Write(this.ToStringHelper.ToStringWithCulture(new string(' ', level * 4))); #line default #line hidden - #line 717 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" + #line 735 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" this.Write("\t\t\t\t\t\txmlWriter.WriteEndElement();\r\n"); #line default #line hidden - #line 718 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" + #line 736 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" } else @@ -3919,63 +4043,63 @@ void ProcessFlattenedMap(int level, string variableName, Member member) #line default #line hidden - #line 725 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" + #line 743 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" this.Write(this.ToStringHelper.ToStringWithCulture(new string(' ', level * 4))); #line default #line hidden - #line 725 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" + #line 743 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" this.Write("\t\t\t\t\t\txmlWriter.WriteElementString(\""); #line default #line hidden - #line 725 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" + #line 743 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" this.Write(this.ToStringHelper.ToStringWithCulture(member.Shape.ValueMarshallName)); #line default #line hidden - #line 725 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" + #line 743 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" this.Write("\", kvp.Value"); #line default #line hidden - #line 725 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" + #line 743 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" this.Write(this.ToStringHelper.ToStringWithCulture(member.Shape.ValueShape.IsString ? "" : ".ToString()")); #line default #line hidden - #line 725 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" + #line 743 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" this.Write(");\r\n"); #line default #line hidden - #line 726 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" + #line 744 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" this.Write(this.ToStringHelper.ToStringWithCulture(new string(' ', level * 4))); #line default #line hidden - #line 726 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" + #line 744 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" this.Write("\t\t\t\t\t\txmlWriter.WriteEndElement();\r\n"); #line default #line hidden - #line 727 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" + #line 745 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" } else @@ -3985,77 +4109,77 @@ void ProcessFlattenedMap(int level, string variableName, Member member) #line default #line hidden - #line 732 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" + #line 750 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" this.Write(this.ToStringHelper.ToStringWithCulture(new string(' ', level * 4))); #line default #line hidden - #line 732 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" + #line 750 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" this.Write("\t\t\t\t\t\txmlWriter.WriteElementString(\""); #line default #line hidden - #line 732 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" + #line 750 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" this.Write(this.ToStringHelper.ToStringWithCulture(member.Shape.ValueMarshallName)); #line default #line hidden - #line 732 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" + #line 750 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" this.Write("\", \""); #line default #line hidden - #line 732 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" + #line 750 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" this.Write(this.ToStringHelper.ToStringWithCulture(member.Shape.ValueShapeXmlNamespace)); #line default #line hidden - #line 732 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" + #line 750 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" this.Write("\", kvp.Value"); #line default #line hidden - #line 732 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" + #line 750 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" this.Write(this.ToStringHelper.ToStringWithCulture(member.Shape.ValueShape.IsString ? "" : ".ToString()")); #line default #line hidden - #line 732 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" + #line 750 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" this.Write(");\r\n"); #line default #line hidden - #line 733 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" + #line 751 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" this.Write(this.ToStringHelper.ToStringWithCulture(new string(' ', level * 4))); #line default #line hidden - #line 733 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" + #line 751 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" this.Write("\t\t\t\t\t\txmlWriter.WriteEndElement();\r\n"); #line default #line hidden - #line 734 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" + #line 752 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" } } @@ -4064,21 +4188,21 @@ void ProcessFlattenedMap(int level, string variableName, Member member) #line default #line hidden - #line 738 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" + #line 756 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" this.Write(this.ToStringHelper.ToStringWithCulture(new string(' ', level * 4))); #line default #line hidden - #line 738 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" + #line 756 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" this.Write("\t\t\t\t\t}\t\r\n"); #line default #line hidden - #line 739 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" + #line 757 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" } @@ -4086,7 +4210,7 @@ void ProcessFlattenedMap(int level, string variableName, Member member) #line default #line hidden - #line 742 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" + #line 760 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" void ProcessSubMap(int level, Shape shape, string parentVariableName) { @@ -4095,133 +4219,133 @@ void ProcessSubMap(int level, Shape shape, string parentVariableName) #line default #line hidden - #line 746 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" + #line 764 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" this.Write(this.ToStringHelper.ToStringWithCulture(new string(' ', level * 4))); #line default #line hidden - #line 746 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" + #line 764 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" this.Write("\t\t\t\t\txmlWriter.WriteStartElement(\"value\");\r\n"); #line default #line hidden - #line 747 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" + #line 765 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" this.Write(this.ToStringHelper.ToStringWithCulture(new string(' ', level * 4))); #line default #line hidden - #line 747 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" + #line 765 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" this.Write("\t\t\t\t\tforeach (var kvp"); #line default #line hidden - #line 747 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" + #line 765 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" this.Write(this.ToStringHelper.ToStringWithCulture(level)); #line default #line hidden - #line 747 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" + #line 765 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" this.Write(" in "); #line default #line hidden - #line 747 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" + #line 765 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" this.Write(this.ToStringHelper.ToStringWithCulture(parentVariableName)); #line default #line hidden - #line 747 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" + #line 765 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" this.Write(".Value) \r\n"); #line default #line hidden - #line 748 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" + #line 766 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" this.Write(this.ToStringHelper.ToStringWithCulture(new string(' ', level * 4))); #line default #line hidden - #line 748 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" + #line 766 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" this.Write("\t\t\t\t\t{\r\n"); #line default #line hidden - #line 749 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" + #line 767 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" this.Write(this.ToStringHelper.ToStringWithCulture(new string(' ', level * 4))); #line default #line hidden - #line 749 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" + #line 767 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" this.Write("\t\t\t\t\t\txmlWriter.WriteStartElement(\"entry\");\r\n"); #line default #line hidden - #line 750 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" + #line 768 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" this.Write(this.ToStringHelper.ToStringWithCulture(new string(' ', level * 4))); #line default #line hidden - #line 750 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" + #line 768 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" this.Write("\t\t\t\t\t\txmlWriter.WriteElementString(\""); #line default #line hidden - #line 750 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" + #line 768 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" this.Write(this.ToStringHelper.ToStringWithCulture(shape.KeyMarshallName)); #line default #line hidden - #line 750 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" + #line 768 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" this.Write("\", kvp"); #line default #line hidden - #line 750 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" + #line 768 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" this.Write(this.ToStringHelper.ToStringWithCulture(level)); #line default #line hidden - #line 750 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" + #line 768 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" this.Write(".Key);\r\n"); #line default #line hidden - #line 751 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" + #line 769 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" if(shape.ValueShape.IsMap) { @@ -4234,49 +4358,49 @@ void ProcessSubMap(int level, Shape shape, string parentVariableName) #line default #line hidden - #line 759 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" + #line 777 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" this.Write(this.ToStringHelper.ToStringWithCulture(new string(' ', level * 4))); #line default #line hidden - #line 759 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" + #line 777 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" this.Write("\t\t\t\t\t\txmlWriter.WriteElementString(\""); #line default #line hidden - #line 759 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" + #line 777 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" this.Write(this.ToStringHelper.ToStringWithCulture(shape.ValueMarshallName)); #line default #line hidden - #line 759 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" + #line 777 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" this.Write("\", kvp"); #line default #line hidden - #line 759 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" + #line 777 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" this.Write(this.ToStringHelper.ToStringWithCulture(level)); #line default #line hidden - #line 759 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" + #line 777 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" this.Write(".Value);\r\n"); #line default #line hidden - #line 760 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" + #line 778 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" } @@ -4284,49 +4408,49 @@ void ProcessSubMap(int level, Shape shape, string parentVariableName) #line default #line hidden - #line 763 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" + #line 781 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" this.Write(this.ToStringHelper.ToStringWithCulture(new string(' ', level * 4))); #line default #line hidden - #line 763 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" + #line 781 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" this.Write("\t\t\t\t\t\txmlWriter.WriteEndElement();\r\n"); #line default #line hidden - #line 764 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" + #line 782 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" this.Write(this.ToStringHelper.ToStringWithCulture(new string(' ', level * 4))); #line default #line hidden - #line 764 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" + #line 782 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" this.Write("\t\t\t\t\t}\t\t\t\r\n"); #line default #line hidden - #line 765 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" + #line 783 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" this.Write(this.ToStringHelper.ToStringWithCulture(new string(' ', level * 4))); #line default #line hidden - #line 765 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" + #line 783 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" this.Write("\t\t\t\t\txmlWriter.WriteEndElement();\t\t\t\t\r\n"); #line default #line hidden - #line 766 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" + #line 784 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" } @@ -4334,7 +4458,7 @@ void ProcessSubMap(int level, Shape shape, string parentVariableName) #line default #line hidden - #line 769 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" + #line 787 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" protected void ProcessNonStructurePayload(Member payload, int level) { @@ -4345,63 +4469,63 @@ protected void ProcessNonStructurePayload(Member payload, int level) #line default #line hidden - #line 775 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" + #line 793 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" this.Write(this.ToStringHelper.ToStringWithCulture(new string(' ', level * 4))); #line default #line hidden - #line 775 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" + #line 793 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" this.Write("request.Content = Encoding.UTF8.GetBytes("); #line default #line hidden - #line 775 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" + #line 793 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" this.Write(this.ToStringHelper.ToStringWithCulture(this.Operation.RequestPayloadMember.PrimitiveMarshaller)); #line default #line hidden - #line 775 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" + #line 793 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" this.Write("(publicRequest."); #line default #line hidden - #line 775 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" + #line 793 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" this.Write(this.ToStringHelper.ToStringWithCulture(this.Operation.RequestPayloadMember.PropertyName)); #line default #line hidden - #line 775 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" + #line 793 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" this.Write("));\r\n"); #line default #line hidden - #line 776 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" + #line 794 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" this.Write(this.ToStringHelper.ToStringWithCulture(new string(' ', level * 4))); #line default #line hidden - #line 776 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" + #line 794 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" this.Write("request.Headers[\"Content-Type\"] = \"text/plain\";\r\n"); #line default #line hidden - #line 777 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" + #line 795 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" } else if(payload.Shape.IsMemoryStream) @@ -4411,49 +4535,49 @@ protected void ProcessNonStructurePayload(Member payload, int level) #line default #line hidden - #line 782 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" + #line 800 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" this.Write(this.ToStringHelper.ToStringWithCulture(new string(' ', level * 4))); #line default #line hidden - #line 782 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" + #line 800 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" this.Write("request.ContentStream = publicRequest."); #line default #line hidden - #line 782 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" + #line 800 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" this.Write(this.ToStringHelper.ToStringWithCulture(this.Operation.RequestPayloadMember.PropertyName)); #line default #line hidden - #line 782 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" + #line 800 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" this.Write(";\r\n"); #line default #line hidden - #line 783 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" + #line 801 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" this.Write(this.ToStringHelper.ToStringWithCulture(new string(' ', level * 4))); #line default #line hidden - #line 783 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" + #line 801 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" this.Write("request.Headers[\"Content-Type\"] = \"application/octet-stream\";\r\n"); #line default #line hidden - #line 784 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" + #line 802 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" } } @@ -4462,7 +4586,7 @@ protected void ProcessNonStructurePayload(Member payload, int level) #line default #line hidden - #line 788 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" + #line 806 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" protected void ProcessStructureAsMapValue(int level, string variableName, Shape shape) { @@ -4472,49 +4596,49 @@ protected void ProcessStructureAsMapValue(int level, string variableName, Shape #line default #line hidden - #line 793 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" + #line 811 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" this.Write(this.ToStringHelper.ToStringWithCulture(new string(' ', level * 4))); #line default #line hidden - #line 793 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" + #line 811 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" this.Write("\t\t\t\tif ("); #line default #line hidden - #line 793 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" + #line 811 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" this.Write(this.ToStringHelper.ToStringWithCulture(variableName)); #line default #line hidden - #line 793 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" + #line 811 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" this.Write(" != null) \r\n"); #line default #line hidden - #line 794 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" + #line 812 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" this.Write(this.ToStringHelper.ToStringWithCulture(new string(' ', level * 4))); #line default #line hidden - #line 794 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" + #line 812 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" this.Write("\t\t\t\t{\r\n"); #line default #line hidden - #line 795 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" + #line 813 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" ProcessMembers(level + 1, variableName, shape.Members, insideMap: true); @@ -4522,21 +4646,21 @@ protected void ProcessStructureAsMapValue(int level, string variableName, Shape #line default #line hidden - #line 798 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" + #line 816 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" this.Write(this.ToStringHelper.ToStringWithCulture(new string(' ', level * 4))); #line default #line hidden - #line 798 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" + #line 816 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" this.Write("\t\t\t\t}\r\n"); #line default #line hidden - #line 799 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" + #line 817 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" } @@ -4544,7 +4668,7 @@ protected void ProcessStructureAsMapValue(int level, string variableName, Shape #line default #line hidden - #line 802 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" + #line 820 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" protected void ProcessNestedList(int level, string variableName, Member innerMember, Member owningMember) { @@ -4564,133 +4688,133 @@ protected void ProcessNestedList(int level, string variableName, Member innerMem #line default #line hidden - #line 817 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" + #line 835 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" this.Write(this.ToStringHelper.ToStringWithCulture(new string(' ', (level) * 4))); #line default #line hidden - #line 817 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" + #line 835 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" this.Write("\t\t\t\t\tforeach (var "); #line default #line hidden - #line 817 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" + #line 835 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" this.Write(this.ToStringHelper.ToStringWithCulture(innerListItemVariable)); #line default #line hidden - #line 817 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" + #line 835 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" this.Write(" in "); #line default #line hidden - #line 817 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" + #line 835 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" this.Write(this.ToStringHelper.ToStringWithCulture(listItemVariable)); #line default #line hidden - #line 817 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" + #line 835 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" this.Write(")\r\n"); #line default #line hidden - #line 818 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" + #line 836 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" this.Write(this.ToStringHelper.ToStringWithCulture(new string(' ', (level) * 4))); #line default #line hidden - #line 818 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" + #line 836 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" this.Write("\t\t\t\t\t{\r\n"); #line default #line hidden - #line 819 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" + #line 837 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" this.Write(this.ToStringHelper.ToStringWithCulture(new string(' ', (level) * 4))); #line default #line hidden - #line 819 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" + #line 837 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" this.Write("\t\t\t\t\t\txmlWriter.WriteStartElement(\""); #line default #line hidden - #line 819 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" + #line 837 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" this.Write(this.ToStringHelper.ToStringWithCulture(listMarshallName)); #line default #line hidden - #line 819 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" + #line 837 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" this.Write("\");\r\n"); #line default #line hidden - #line 820 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" + #line 838 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" this.Write(this.ToStringHelper.ToStringWithCulture(new string(' ', (level) * 4))); #line default #line hidden - #line 820 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" + #line 838 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" this.Write("\t\t\t\t\t\txmlWriter.WriteValue("); #line default #line hidden - #line 820 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" + #line 838 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" this.Write(this.ToStringHelper.ToStringWithCulture(innerListItemVariable)); #line default #line hidden - #line 820 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" + #line 838 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" this.Write(");\r\n"); #line default #line hidden - #line 821 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" + #line 839 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" this.Write(this.ToStringHelper.ToStringWithCulture(new string(' ', (level) * 4))); #line default #line hidden - #line 821 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" + #line 839 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" this.Write("\t\t\t\t\t\txmlWriter.WriteEndElement();\r\n"); #line default #line hidden - #line 822 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" + #line 840 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" if (innerShape != null && innerShape.Shape.IsList) { @@ -4701,21 +4825,21 @@ protected void ProcessNestedList(int level, string variableName, Member innerMem #line default #line hidden - #line 828 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" + #line 846 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" this.Write(this.ToStringHelper.ToStringWithCulture(new string(' ', (level) * 4))); #line default #line hidden - #line 828 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" + #line 846 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" this.Write("\t\t\t\t\t}\r\n"); #line default #line hidden - #line 829 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" + #line 847 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" } @@ -4723,7 +4847,7 @@ protected void ProcessNestedList(int level, string variableName, Member innerMem #line default #line hidden - #line 832 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" + #line 850 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" // xsi is a common prefix in attributes, but it cannot be included in the local name itself as the xmlWriter class will throw an exception. // Some services may model the xmlName, with the xsi prefix included like it is here https://github.com/smithy-lang/smithy/blob/7813acbfee4e90b589996ffcfa02fbe73785f654/smithy-aws-protocol-tests/model/restXmlWithNamespace/main.smithy#L147 @@ -4732,7 +4856,11 @@ protected void WriteXmlAttributeString(int level, Member member, string variable { var prefix = ""; var localName = ""; - string ns = member.XmlNamespace; + string ns = string.IsNullOrEmpty(member.XmlNamespace) ? member.Shape.XmlNamespace : member.XmlNamespace; + // in the rare case like "Type" on "Grantee" in s3, the member or the member's shape doesn't have an xmlNamespace attached + // but instead it uses the xmlNamespace on the owning shape. If ns is still null at this point, we use the owning shape's xml namespace + if (string.IsNullOrEmpty(ns)) + ns = member.OwningShape.XmlNamespace; if (member.MarshallName.Contains(":")) { var colonIndex = member.MarshallName.IndexOf(":"); @@ -4749,7 +4877,7 @@ protected void WriteXmlAttributeString(int level, Member member, string variable #line default #line hidden - #line 853 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" + #line 875 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" if(isPayload) { @@ -4758,119 +4886,119 @@ protected void WriteXmlAttributeString(int level, Member member, string variable #line default #line hidden - #line 857 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" + #line 879 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" this.Write(this.ToStringHelper.ToStringWithCulture(new string(' ', level * 4))); #line default #line hidden - #line 857 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" + #line 879 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" this.Write("\t\t\t\t\txmlWriter.WriteAttributeString(\""); #line default #line hidden - #line 857 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" + #line 879 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" this.Write(this.ToStringHelper.ToStringWithCulture(prefix)); #line default #line hidden - #line 857 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" + #line 879 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" this.Write("\",\""); #line default #line hidden - #line 857 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" + #line 879 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" this.Write(this.ToStringHelper.ToStringWithCulture(localName)); #line default #line hidden - #line 857 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" + #line 879 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" this.Write("\",\""); #line default #line hidden - #line 857 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" -this.Write(this.ToStringHelper.ToStringWithCulture(member.XmlNamespace)); + #line 879 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" +this.Write(this.ToStringHelper.ToStringWithCulture(ns)); #line default #line hidden - #line 857 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" + #line 879 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" this.Write("\","); #line default #line hidden - #line 857 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" + #line 879 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" this.Write(this.ToStringHelper.ToStringWithCulture(member.PrimitiveMarshaller)); #line default #line hidden - #line 857 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" + #line 879 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" this.Write("("); #line default #line hidden - #line 857 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" + #line 879 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" this.Write(this.ToStringHelper.ToStringWithCulture(variableName)); #line default #line hidden - #line 857 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" + #line 879 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" this.Write("."); #line default #line hidden - #line 857 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" + #line 879 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" this.Write(this.ToStringHelper.ToStringWithCulture(operation.RequestPayloadMember.PropertyName)); #line default #line hidden - #line 857 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" + #line 879 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" this.Write("."); #line default #line hidden - #line 857 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" + #line 879 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" this.Write(this.ToStringHelper.ToStringWithCulture(member.PropertyName)); #line default #line hidden - #line 857 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" + #line 879 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" this.Write("));\r\n"); #line default #line hidden - #line 858 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" + #line 880 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" } else @@ -4880,105 +5008,105 @@ protected void WriteXmlAttributeString(int level, Member member, string variable #line default #line hidden - #line 863 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" + #line 885 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" this.Write(this.ToStringHelper.ToStringWithCulture(new string(' ', level * 4))); #line default #line hidden - #line 863 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" + #line 885 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" this.Write("\t\t\t\t\txmlWriter.WriteAttributeString(\""); #line default #line hidden - #line 863 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" + #line 885 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" this.Write(this.ToStringHelper.ToStringWithCulture(prefix)); #line default #line hidden - #line 863 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" + #line 885 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" this.Write("\",\""); #line default #line hidden - #line 863 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" + #line 885 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" this.Write(this.ToStringHelper.ToStringWithCulture(localName)); #line default #line hidden - #line 863 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" + #line 885 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" this.Write("\", \""); #line default #line hidden - #line 863 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" -this.Write(this.ToStringHelper.ToStringWithCulture(member.XmlNamespace)); + #line 885 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" +this.Write(this.ToStringHelper.ToStringWithCulture(ns)); #line default #line hidden - #line 863 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" + #line 885 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" this.Write("\","); #line default #line hidden - #line 863 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" + #line 885 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" this.Write(this.ToStringHelper.ToStringWithCulture(member.PrimitiveMarshaller)); #line default #line hidden - #line 863 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" + #line 885 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" this.Write("("); #line default #line hidden - #line 863 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" + #line 885 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" this.Write(this.ToStringHelper.ToStringWithCulture(variableName)); #line default #line hidden - #line 863 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" + #line 885 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" this.Write("."); #line default #line hidden - #line 863 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" + #line 885 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" this.Write(this.ToStringHelper.ToStringWithCulture(member.PropertyName)); #line default #line hidden - #line 863 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" + #line 885 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" this.Write("));\r\n"); #line default #line hidden - #line 864 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" + #line 886 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" } } @@ -4987,7 +5115,7 @@ protected void WriteXmlAttributeString(int level, Member member, string variable #line default #line hidden - #line 868 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" + #line 890 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" protected void WriteVisitorPattern(int level, string variableName, Member member) { @@ -4998,301 +5126,301 @@ protected void WriteVisitorPattern(int level, string variableName, Member member #line default #line hidden - #line 874 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" + #line 896 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" this.Write(this.ToStringHelper.ToStringWithCulture(new string(' ', level * 4))); #line default #line hidden - #line 874 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" + #line 896 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" this.Write("\t\t\t\tif ("); #line default #line hidden - #line 874 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" + #line 896 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" this.Write(this.ToStringHelper.ToStringWithCulture(variableName)); #line default #line hidden - #line 874 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" + #line 896 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" this.Write("."); #line default #line hidden - #line 874 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" + #line 896 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" this.Write(this.ToStringHelper.ToStringWithCulture(member.ModeledName)); #line default #line hidden - #line 874 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" + #line 896 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" this.Write(" != null)\r\n"); #line default #line hidden - #line 875 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" + #line 897 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" this.Write(this.ToStringHelper.ToStringWithCulture(new string(' ', level * 4))); #line default #line hidden - #line 875 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" + #line 897 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" this.Write("\t\t\t\t{\r\n"); #line default #line hidden - #line 876 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" + #line 898 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" this.Write(this.ToStringHelper.ToStringWithCulture(new string(' ', level * 4))); #line default #line hidden - #line 876 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" + #line 898 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" this.Write("\t\t\t\t\tif ("); #line default #line hidden - #line 876 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" + #line 898 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" this.Write(this.ToStringHelper.ToStringWithCulture(variableName)); #line default #line hidden - #line 876 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" + #line 898 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" this.Write("."); #line default #line hidden - #line 876 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" + #line 898 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" this.Write(this.ToStringHelper.ToStringWithCulture(member.ModeledName)); #line default #line hidden - #line 876 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" + #line 898 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" this.Write("."); #line default #line hidden - #line 876 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" + #line 898 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" this.Write(this.ToStringHelper.ToStringWithCulture(visitorPattern.PredicateName)); #line default #line hidden - #line 876 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" + #line 898 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" this.Write(" != null)\r\n"); #line default #line hidden - #line 877 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" + #line 899 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" this.Write(this.ToStringHelper.ToStringWithCulture(new string(' ', level * 4))); #line default #line hidden - #line 877 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" + #line 899 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" this.Write("\t\t\t\t\t{\r\n"); #line default #line hidden - #line 878 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" + #line 900 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" this.Write(this.ToStringHelper.ToStringWithCulture(new string(' ', level * 4))); #line default #line hidden - #line 878 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" + #line 900 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" this.Write("\t\t\t\t\t\txmlWriter.WriteStartElement(\""); #line default #line hidden - #line 878 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" + #line 900 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" this.Write(this.ToStringHelper.ToStringWithCulture(member.MarshallName)); #line default #line hidden - #line 878 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" + #line 900 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" this.Write("\");\r\n"); #line default #line hidden - #line 879 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" + #line 901 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" this.Write(this.ToStringHelper.ToStringWithCulture(new string(' ', level * 4))); #line default #line hidden - #line 879 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" + #line 901 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" this.Write("\t\t\t\t\t\t"); #line default #line hidden - #line 879 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" + #line 901 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" this.Write(this.ToStringHelper.ToStringWithCulture(variableName)); #line default #line hidden - #line 879 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" + #line 901 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" this.Write("."); #line default #line hidden - #line 879 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" + #line 901 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" this.Write(this.ToStringHelper.ToStringWithCulture(member.ModeledName)); #line default #line hidden - #line 879 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" + #line 901 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" this.Write("."); #line default #line hidden - #line 879 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" + #line 901 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" this.Write(this.ToStringHelper.ToStringWithCulture(visitorPattern.PredicateName)); #line default #line hidden - #line 879 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" + #line 901 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" this.Write(".Accept(new "); #line default #line hidden - #line 879 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" + #line 901 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" this.Write(this.ToStringHelper.ToStringWithCulture(visitorPattern.VisitorName)); #line default #line hidden - #line 879 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" + #line 901 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" this.Write("("); #line default #line hidden - #line 879 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" + #line 901 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" this.Write(this.ToStringHelper.ToStringWithCulture(visitorPattern.VisitorParam)); #line default #line hidden - #line 879 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" + #line 901 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" this.Write("));\r\n"); #line default #line hidden - #line 880 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" + #line 902 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" this.Write(this.ToStringHelper.ToStringWithCulture(new string(' ', level * 4))); #line default #line hidden - #line 880 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" + #line 902 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" this.Write("\t\t\t\t\t\txmlWriter.WriteEndElement();\r\n"); #line default #line hidden - #line 881 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" + #line 903 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" this.Write(this.ToStringHelper.ToStringWithCulture(new string(' ', level * 4))); #line default #line hidden - #line 881 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" + #line 903 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" this.Write("\t\t\t\t\t}\r\n"); #line default #line hidden - #line 882 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" + #line 904 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" this.Write(this.ToStringHelper.ToStringWithCulture(new string(' ', level * 4))); #line default #line hidden - #line 882 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" + #line 904 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" this.Write("\t\t\t\t\telse\r\n"); #line default #line hidden - #line 883 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" + #line 905 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" this.Write(this.ToStringHelper.ToStringWithCulture(new string(' ', level * 4))); #line default #line hidden - #line 883 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" + #line 905 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" this.Write("\t\t\t\t\t{\r\n"); #line default #line hidden - #line 884 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" + #line 906 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" ProcessStructure(level+=2, variableName, member); @@ -5300,35 +5428,35 @@ protected void WriteVisitorPattern(int level, string variableName, Member member #line default #line hidden - #line 887 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" + #line 909 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" this.Write(this.ToStringHelper.ToStringWithCulture(new string(' ' , level * 4))); #line default #line hidden - #line 887 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" + #line 909 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" this.Write("\t\t\t\t\t}\r\n\r\n"); #line default #line hidden - #line 889 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" + #line 911 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" this.Write(this.ToStringHelper.ToStringWithCulture(new string(' ', level * 4))); #line default #line hidden - #line 889 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" + #line 911 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" this.Write("\t\t\t\t}\r\n"); #line default #line hidden - #line 890 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" + #line 912 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlRequestMarshaller.tt" } diff --git a/generator/ServiceClientGeneratorLib/Generators/Marshallers/RestXmlRequestMarshaller.tt b/generator/ServiceClientGeneratorLib/Generators/Marshallers/RestXmlRequestMarshaller.tt index 6a5600ebae89..3291c68fb6a4 100644 --- a/generator/ServiceClientGeneratorLib/Generators/Marshallers/RestXmlRequestMarshaller.tt +++ b/generator/ServiceClientGeneratorLib/Generators/Marshallers/RestXmlRequestMarshaller.tt @@ -429,7 +429,7 @@ WriteXmlAttributeString(level + 1, member, variableName, isPayload: true, operat <#=new string(' ', level * 4)#> } <#+ } -// Only namespaces at the top level Shape matter for a structure, so there is no logic for namespaces here. + void ProcessStructure(int level, string variableName, Member member) { var shape = member.Shape.IsList ? member.Shape.ListShape : member.Shape ; @@ -442,10 +442,28 @@ WriteXmlAttributeString(level + 1, member, variableName, isPayload: true, operat #> <#=new string(' ', level * 4)#> if (<#=variableName#> != null) <#=new string(' ', level * 4)#> { -<#=new string(' ', level * 4)#> xmlWriter.WriteStartElement("<#=marshallName#>"); <#+ + if (!string.IsNullOrEmpty(member.Shape.XmlNamespace)) + { + if (!string.IsNullOrEmpty(member.Shape.XmlNamespacePrefix)) + { +#> +<#=new string(' ', level * 4)#> xmlWriter.WriteStartElement("<#=member.Shape.XmlNamespacePrefix#>","<#=marshallName#>","<#=member.Shape.XmlNamespace#>"); +<#+ + } + else + { +#> +<#=new string(' ', level * 4)#> xmlWriter.WriteStartElement("<#=marshallName#>","<#=member.Shape.XmlNamespace#>"); +<#+ + } + } + else + { #> +<#=new string(' ', level * 4)#> xmlWriter.WriteStartElement("<#=marshallName#>"); <#+ + } ProcessMembers(level + 1, variableName, shape.Members); #> <#=new string(' ', level * 4)#> xmlWriter.WriteEndElement(); @@ -506,7 +524,7 @@ WriteXmlAttributeString(level + 1, member, variableName, isPayload: true, operat else listMarshallName = member.Shape.ListMarshallName ?? "member"; // see https://smithy.io/2.0/spec/protocol-traits.html#xmlflattened-trait - if(member.IsFlattened) + if(member.IsFlattened || member.Shape.IsFlattened) listMarshallName = member.LocationName ?? member.ModeledName; if(member.Shape.ListShape.IsTimeStamp) { @@ -837,7 +855,11 @@ WriteXmlAttributeString(level + 1, member, variableName, isPayload: true, operat { var prefix = ""; var localName = ""; - string ns = member.XmlNamespace; + string ns = string.IsNullOrEmpty(member.XmlNamespace) ? member.Shape.XmlNamespace : member.XmlNamespace; + // in the rare case like "Type" on "Grantee" in s3, the member or the member's shape doesn't have an xmlNamespace attached + // but instead it uses the xmlNamespace on the owning shape. If ns is still null at this point, we use the owning shape's xml namespace + if (string.IsNullOrEmpty(ns)) + ns = member.OwningShape.XmlNamespace; if (member.MarshallName.Contains(":")) { var colonIndex = member.MarshallName.IndexOf(":"); @@ -854,13 +876,13 @@ WriteXmlAttributeString(level + 1, member, variableName, isPayload: true, operat if(isPayload) { #> -<#=new string(' ', level * 4)#> xmlWriter.WriteAttributeString("<#=prefix#>","<#=localName#>","<#=member.XmlNamespace#>",<#=member.PrimitiveMarshaller#>(<#=variableName#>.<#=operation.RequestPayloadMember.PropertyName#>.<#=member.PropertyName#>)); +<#=new string(' ', level * 4)#> xmlWriter.WriteAttributeString("<#=prefix#>","<#=localName#>","<#=ns#>",<#=member.PrimitiveMarshaller#>(<#=variableName#>.<#=operation.RequestPayloadMember.PropertyName#>.<#=member.PropertyName#>)); <#+ } else { #> -<#=new string(' ', level * 4)#> xmlWriter.WriteAttributeString("<#=prefix#>","<#=localName#>", "<#=member.XmlNamespace#>",<#=member.PrimitiveMarshaller#>(<#=variableName#>.<#=member.PropertyName#>)); +<#=new string(' ', level * 4)#> xmlWriter.WriteAttributeString("<#=prefix#>","<#=localName#>", "<#=ns#>",<#=member.PrimitiveMarshaller#>(<#=variableName#>.<#=member.PropertyName#>)); <#+ } } diff --git a/generator/ServiceClientGeneratorLib/Generators/Marshallers/RestXmlResponseUnmarshaller.cs b/generator/ServiceClientGeneratorLib/Generators/Marshallers/RestXmlResponseUnmarshaller.cs index d803a2c49e87..227e2ec95750 100644 --- a/generator/ServiceClientGeneratorLib/Generators/Marshallers/RestXmlResponseUnmarshaller.cs +++ b/generator/ServiceClientGeneratorLib/Generators/Marshallers/RestXmlResponseUnmarshaller.cs @@ -63,7 +63,7 @@ public override string TransformText() #line default #line hidden - this.Write(" public class "); + this.Write(" public partial class "); #line 22 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlResponseUnmarshaller.tt" this.Write(this.ToStringHelper.ToStringWithCulture(this.UnmarshallerBaseName)); @@ -81,7 +81,7 @@ public override string TransformText() #line default #line hidden - this.Write(" public class "); + this.Write(" public partial class "); #line 28 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlResponseUnmarshaller.tt" this.Write(this.ToStringHelper.ToStringWithCulture(this.UnmarshallerBaseName)); @@ -223,9 +223,10 @@ public override AmazonWebServiceResponse Unmarshall(XmlUnmarshallerContext conte #line default #line hidden - this.Write(" \r\n return response;\r\n\t\t}\t\t\r\n"); + this.Write(" \r\n PostUnmarshallCustomization(context, response);\r\n " + + " return response;\r\n\t\t}\t\t\r\n"); - #line 101 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlResponseUnmarshaller.tt" + #line 102 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlResponseUnmarshaller.tt" if ( this.Operation.ResponseHasBodyMembers || shouldMarshallPayload) { @@ -235,7 +236,7 @@ public override AmazonWebServiceResponse Unmarshall(XmlUnmarshallerContext conte #line hidden this.Write("\r\n"); - #line 106 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlResponseUnmarshaller.tt" + #line 107 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlResponseUnmarshaller.tt" if (this.Operation.ResponseBodyMembers.Count == 0 && !shouldMarshallPayload) { @@ -246,7 +247,7 @@ public override AmazonWebServiceResponse Unmarshall(XmlUnmarshallerContext conte this.Write("\t\t[System.Diagnostics.CodeAnalysis.SuppressMessage(\"Microsoft.Usage\", \"CA1801:Rev" + "iewUnusedParameters\", MessageId=\"response\")]\r\n"); - #line 111 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlResponseUnmarshaller.tt" + #line 112 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlResponseUnmarshaller.tt" } @@ -255,7 +256,7 @@ public override AmazonWebServiceResponse Unmarshall(XmlUnmarshallerContext conte #line hidden this.Write("\t\tprivate static void UnmarshallResult(XmlUnmarshallerContext context, "); - #line 114 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlResponseUnmarshaller.tt" + #line 115 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlResponseUnmarshaller.tt" this.Write(this.ToStringHelper.ToStringWithCulture(this.Operation.Name)); #line default @@ -263,7 +264,7 @@ public override AmazonWebServiceResponse Unmarshall(XmlUnmarshallerContext conte this.Write("Response response)\r\n {\r\n int originalDepth = context.CurrentDep" + "th;\r\n"); - #line 117 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlResponseUnmarshaller.tt" + #line 118 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlResponseUnmarshaller.tt" if (this.Config.ServiceModel.Customizations.UnwrapXmlOutput(this.Structure.Name)) { @@ -273,7 +274,7 @@ public override AmazonWebServiceResponse Unmarshall(XmlUnmarshallerContext conte #line hidden this.Write(" int targetDepth = 1;\r\n"); - #line 122 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlResponseUnmarshaller.tt" + #line 123 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlResponseUnmarshaller.tt" } else @@ -284,7 +285,7 @@ public override AmazonWebServiceResponse Unmarshall(XmlUnmarshallerContext conte #line hidden this.Write(" int targetDepth = originalDepth + 1;\r\n"); - #line 128 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlResponseUnmarshaller.tt" + #line 129 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlResponseUnmarshaller.tt" if (payload == null) { @@ -294,7 +295,7 @@ public override AmazonWebServiceResponse Unmarshall(XmlUnmarshallerContext conte #line hidden this.Write("\t\t\tif (context.IsStartOfDocument) \r\n\t\t\t\t targetDepth += 1;\r\n"); - #line 134 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlResponseUnmarshaller.tt" + #line 135 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlResponseUnmarshaller.tt" } } @@ -306,7 +307,7 @@ public override AmazonWebServiceResponse Unmarshall(XmlUnmarshallerContext conte "\n }\r\n while (context.Read())\r\n {\r\n\t\t\t\tif (conte" + "xt.IsStartElement || context.IsAttribute)\r\n {\r\n"); - #line 146 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlResponseUnmarshaller.tt" + #line 147 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlResponseUnmarshaller.tt" foreach (var member in this.Operation.ResponseBodyMembers) { @@ -323,7 +324,7 @@ public override AmazonWebServiceResponse Unmarshall(XmlUnmarshallerContext conte #line hidden this.Write("\t\t\t\t}\r\n\t\t\t\telse if (context.IsEndElement && context.CurrentDepth < originalDepth)" + "\r\n {\r\n return;\r\n }\r\n " + - " }\r\n \r\n return;\r\n }\r\n"); + " }\r\n return;\r\n }\r\n"); #line 166 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlResponseUnmarshaller.tt" @@ -456,9 +457,17 @@ public override AmazonServiceException UnmarshallException(XmlUnmarshallerContex #line default #line hidden - this.Write(" }\r\n\r\n"); + this.Write(" }\r\n\r\n partial void PostUnmarshallCustomization(XmlUnmarshallerCont" + + "ext context, "); #line 229 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlResponseUnmarshaller.tt" + this.Write(this.ToStringHelper.ToStringWithCulture(this.Operation.Name)); + + #line default + #line hidden + this.Write("Response response);\r\n\r\n"); + + #line 231 "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 4363820ff231..8f0eb5c25e5a 100644 --- a/generator/ServiceClientGeneratorLib/Generators/Marshallers/RestXmlResponseUnmarshaller.tt +++ b/generator/ServiceClientGeneratorLib/Generators/Marshallers/RestXmlResponseUnmarshaller.tt @@ -19,13 +19,13 @@ namespace <#=this.Config.Namespace #>.Model.Internal.MarshallTransformations if (this.Config.ServiceId == "S3") { #> - public class <#=this.UnmarshallerBaseName#>ResponseUnmarshaller : S3ReponseUnmarshaller + public partial class <#=this.UnmarshallerBaseName#>ResponseUnmarshaller : S3ReponseUnmarshaller <# } else { #> - public class <#=this.UnmarshallerBaseName #>ResponseUnmarshaller : XmlResponseUnmarshaller + public partial class <#=this.UnmarshallerBaseName #>ResponseUnmarshaller : XmlResponseUnmarshaller <# } #> @@ -96,6 +96,7 @@ namespace <#=this.Config.Namespace #>.Model.Internal.MarshallTransformations UnmarshallHeaders(); ProcessStatusCode(); #> + PostUnmarshallCustomization(context, response); return response; } <# @@ -160,7 +161,6 @@ namespace <#=this.Config.Namespace #>.Model.Internal.MarshallTransformations return; } } - return; } <# @@ -226,6 +226,8 @@ namespace <#=this.Config.Namespace #>.Model.Internal.MarshallTransformations #> } + partial void PostUnmarshallCustomization(XmlUnmarshallerContext context, <#=this.Operation.Name #>Response response); + <# this.AddResponseSingletonMethod(); #> diff --git a/generator/ServiceClientGeneratorLib/Generators/Marshallers/RestXmlStructureUnmarshaller.cs b/generator/ServiceClientGeneratorLib/Generators/Marshallers/RestXmlStructureUnmarshaller.cs index ec5db01a44fd..22354d1fc354 100644 --- a/generator/ServiceClientGeneratorLib/Generators/Marshallers/RestXmlStructureUnmarshaller.cs +++ b/generator/ServiceClientGeneratorLib/Generators/Marshallers/RestXmlStructureUnmarshaller.cs @@ -177,13 +177,15 @@ 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 (this.Config.ServiceModel.Customizations.ShapeModifiers.TryGetValue(this.Structure.Name, out var modifier) && modifier.ExcludedUnmarshallingProperties.Contains(member.ModeledName)) + continue; ProcessResponseBodyOrStructureMembers(member, true, this.Structure); #line default #line hidden - #line 75 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlStructureUnmarshaller.tt" + #line 77 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlStructureUnmarshaller.tt" } @@ -193,7 +195,7 @@ public override string TransformText() this.Write("\r\n XmlStructureUnmarshallCustomization(context, unmarshalledOb" + "ject, targetDepth);\r\n"); - #line 80 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlStructureUnmarshaller.tt" + #line 82 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlStructureUnmarshaller.tt" } @@ -211,14 +213,14 @@ public override string TransformText() partial void XmlStructureUnmarshallCustomization(XmlUnmarshallerContext context, "); - #line 92 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlStructureUnmarshaller.tt" + #line 94 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlStructureUnmarshaller.tt" this.Write(this.ToStringHelper.ToStringWithCulture(this.UnmarshallerBaseName)); #line default #line hidden this.Write(" unmarshalledObject, int targetDepth);\r\n\r\n"); - #line 94 "C:\Dev\Repos\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\Marshallers\RestXmlStructureUnmarshaller.tt" + #line 96 "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 0a03a62fb683..5c042e4d8f73 100644 --- a/generator/ServiceClientGeneratorLib/Generators/Marshallers/RestXmlStructureUnmarshaller.tt +++ b/generator/ServiceClientGeneratorLib/Generators/Marshallers/RestXmlStructureUnmarshaller.tt @@ -70,6 +70,8 @@ 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 (this.Config.ServiceModel.Customizations.ShapeModifiers.TryGetValue(this.Structure.Name, out var modifier) && modifier.ExcludedUnmarshallingProperties.Contains(member.ModeledName)) + continue; ProcessResponseBodyOrStructureMembers(member, true, this.Structure); #> <# diff --git a/generator/ServiceClientGeneratorLib/ServiceModel.cs b/generator/ServiceClientGeneratorLib/ServiceModel.cs index 6314f0ec87e7..7731c19bccb6 100644 --- a/generator/ServiceClientGeneratorLib/ServiceModel.cs +++ b/generator/ServiceClientGeneratorLib/ServiceModel.cs @@ -535,18 +535,19 @@ public List S3AllowListOperations ////// ***** new Operation(this, "GetBucketLifecycleConfiguration", DocumentRoot[OperationsKey]["GetBucketLifecycleConfiguration"]), new Operation(this, "GetBucketNotificationConfiguration", DocumentRoot[OperationsKey]["GetBucketNotificationConfiguration"]), - //////new Operation(this, "GetObjectAcl", DocumentRoot[OperationsKey]["GetObjectAcl"]), - //////new Operation(this, "HeadObject", DocumentRoot[OperationsKey]["HeadObject"]), - //////new Operation(this, "ListObjectVersions", DocumentRoot[OperationsKey]["ListObjectVersions"]), - //////new Operation(this, "PutBucketAcl", DocumentRoot[OperationsKey]["PutBucketAcl"]), - //////new Operation(this, "PutBucketCors", DocumentRoot[OperationsKey]["PutBucketCors"]), + new Operation(this, "GetObjectAcl", DocumentRoot[OperationsKey]["GetObjectAcl"]), + new Operation(this, "HeadObject", DocumentRoot[OperationsKey]["HeadObject"]), + new Operation(this, "ListObjectVersions", DocumentRoot[OperationsKey]["ListObjectVersions"]), + new Operation(this, "PutBucketAcl", DocumentRoot[OperationsKey]["PutBucketAcl"]), + new Operation(this, "PutBucketCors", DocumentRoot[OperationsKey]["PutBucketCors"]), ////// **** deprecated //////new Operation(this, "PutBucketLifecycle", DocumentRoot[OperationsKey]["PutBucketLifecycle"]), ////// **** deprecated new Operation(this, "PutBucketLifecycleConfiguration", DocumentRoot[OperationsKey]["PutBucketLifecycleConfiguration"]), new Operation(this, "PutBucketNotificationConfiguration", DocumentRoot[OperationsKey]["PutBucketNotificationConfiguration"]), - //////new Operation(this, "PutObjectAcl", DocumentRoot[OperationsKey]["PutObjectAcl"]), + new Operation(this, "PutObjectAcl", DocumentRoot[OperationsKey]["PutObjectAcl"]), //////new Operation(this, "UploadPartCopy", DocumentRoot[OperationsKey]["UploadPartCopy"]), + new Operation(this, "ListObjectsV2", DocumentRoot[OperationsKey]["ListObjectsV2"]), }; } @@ -571,7 +572,11 @@ public List S3AddParametersList "ListDirectoryBuckets", "GetObjectLegalHold", "GetObjectRetention", - "PutObjectRetention" + "PutObjectRetention", + "PutObjectAcl", + "GetObjectAcl", + "ListObjectsV2", + "ListVersions" }; } return _s3AddParametersList; @@ -598,7 +603,10 @@ public List S3RequestMarshallerThrowGenericExceptionList { "CreateSession", "GetObjectAttributes", - "GetBucketAcl" + "GetBucketAcl", + "PutObjectAcl", + "GetObjectAcl", + "PutBucketAcl" }; } return _s3RequestMarshallerThrowAmazonS3ExceptionList; diff --git a/generator/ServiceModels/s3/s3.customizations.json b/generator/ServiceModels/s3/s3.customizations.json index ee499a50ba6f..9edcfd0db37c 100644 --- a/generator/ServiceModels/s3/s3.customizations.json +++ b/generator/ServiceModels/s3/s3.customizations.json @@ -431,7 +431,7 @@ "ID": {"emitPropertyName": "CanonicalUser"} } ], - "exclude":[ + "excludeFromUnmarshalling":[ "Type" ] }, @@ -523,6 +523,119 @@ "Key" : { "emitPropertyName" : "S3KeyFilter"} } ] + }, + "HeadObjectRequest" : { + "modify" :[ + { + "IfModifiedSince" : {"emitPropertyName" : "ModifiedSinceDate"} + }, + { + "IfUnmodifiedSince" : {"emitPropertyName" : "UnmodifiedSinceDate"} + }, + { + "IfMatch" : {"emitPropertyName" : "EtagToMatch"} + }, + { + "IfNoneMatch" : {"emitPropertyName" : "EtagToNotMatch"} + }, + { + "SSECustomerAlgorithm" : {"emitPropertyName": "ServerSideEncryptionCustomerMethod"} + }, + { + "SSECustomerKey" : {"emitPropertyName" : "ServerSideEncryptionCustomerProvidedKey"} + }, + { + "SSECustomerKeyMD5" : {"emitPropertyName":"ServerSideEncryptionCustomerProvidedKeyMD5"} + } + ], + "excludeFromMarshalling":[ + "ServerSideEncryptionCustomerProvidedKey", + "ServerSideEncryptionCustomerProvidedKeyMD5" + ] + }, + "HeadObjectOutput":{ + "modify":[ + { + "TagCount" : {"emitPropertyName": "TagsCount"} + }, + { + "SSECustomerKeyMD5" : {"emitPropertyName":"ServerSideEncryptionCustomerProvidedKeyMD5"} + }, + { + "SSEKMSEncryptionContext" : {"emitPropertyName":"ServerSideEncryptionKeyManagementServiceEncryptionContext"} + }, + { + "SSEKMSKeyId" : {"emitPropertyName" : "ServerSideEncryptionKeyManagementServiceKeyId"} + } + ], + "exclude":[ + "Metadata", + "DeleteMarker", + "SSECustomerAlgorithm", + "ServerSideEncryption", + "Expires", + "Restore" + ], + "excludeFromUnmarshalling" : [ + "Expiration" + ] + }, + "ListObjectVersionsRequest":{ + "modify" :[ + { + "EncodingType" : {"emitPropertyName" : "Encoding"} + } + ] + }, + "ListObjectVersionsOutput":{ + "modify" : [ + { + "EncodingType" : {"emitPropertyName" : "Encoding"} + }, + { + "DeleteMarkers" : { + "skipContextTestExpressionUnmarshallingLogic" : true, + "injectXmlUnmarshallCode" :[ + "DeleteItemCustomUnmarshall(context, response);" + ] + } + }, + { + "Versions":{ + "skipContextTestExpressionUnmarshallingLogic" : true, + "injectXmlUnmarshallCode" :[ + "VersionsItemCustomUnmarshall(context, response);" + ] + } + } + ] + }, + "ListObjectsV2Output" : { + "modify" : [ + { + "Contents" : { + "emitPropertyName" : "S3Objects" + } + }, + { + "EncodingType" : {"emitPropertyName" : "Encoding"} + }, + { + "S3Objects": { + "skipContextTestExpressionUnmarshallingLogic" : true, + "injectXmlUnmarshallCode":[ + "CustomContentsUnmarshall(context, response);" + ] + } + } + ] + }, + "ListObjectsV2Request":{ + "modify" : [ + { + "EncodingType" : {"emitPropertyName" : "Encoding"} + } + ] } }, "operationModifiers": { @@ -644,6 +757,21 @@ }, "Rule" :{ "renameShape" : "LifecycleRule" + }, + "AccessControlPolicy":{ + "renameShape" : "S3AccessControlList" + }, + "ObjectCannedACL":{ + "renameShape" : "S3CannedACL" + }, + "ObjectVersion" : { + "renameShape" : "S3ObjectVersion" + }, + "Object":{ + "renameShape": "S3Object" + }, + "ObjectStorageClass": { + "renameShape": "S3StorageClass" } }, "overrideTreatEnumsAsString":{ @@ -714,7 +842,7 @@ "Type" : "List", "Marshaller" : "StringUtils.FromString", "Unmarshaller" : "StringUnmarshaller", - "isFlattened": "true", + "isFlattened": true, "alternateLocationName": "Event" } }, @@ -723,7 +851,7 @@ "Type" : "List", "Marshaller" : "StringUtils.FromString", "Unmarshaller" : "StringUnmarshaller", - "isFlattened": "true", + "isFlattened": true, "alternateLocationName" : "Event" } }, @@ -732,9 +860,42 @@ "Type" : "List", "Marshaller" : "StringUtils.FromString", "Unmarshaller" : "StringUnmarshaller", - "isFlattened": "true", + "isFlattened": true, "alternateLocationName" : "Event" } + }, + "HeadObjectRequest":{ + "ServerSideEncryptionCustomerMethod" : { + "Type": "ServerSideEncryptionCustomerMethod", + "Marshaller": "StringUtils.FromString", + "Unmarshaller": "StringUnmarshaller" + } + }, + "HeadObjectOutput":{ + "Expiration":{ + "Type" : "Expiration", + "Marshaller" :"StringUtils.FromString", + "Unmarshaller":"StringUnmarshaller" + }, + "DeleteMarker":{ + "Type":"string", + "Marshaller": "StringUtils.FromString", + "Unmarshaller": "StringUnmarshaller" + } + }, + "ListObjectsV2Output": { + "CommonPrefixes" : { + "Type": "List", + "Marshaller": "StringUtils.FromString", + "Unmarshaller" : "CommonPrefixesItemUnmarshaller" + } + }, + "ListObjectVersionsOutput" : { + "CommonPrefixes" : { + "Type": "List", + "Marshaller": "StringUtils.FromString", + "Unmarshaller" : "CommonPrefixesItemUnmarshaller" + } } }, "excludeMembers":{ @@ -761,6 +922,27 @@ "LambdaFunctionConfiguration":[ "Events", "Filter" + ], + "S3Grantee":[ + "Type" + ], + "HeadObjectRequest":[ + "UnmodifiedSinceDate", + "ModifiedSinceDate" + ], + "S3ObjectVersion":[ + "ChecksumAlgorithm", + "ChecksumType", + "ETag", + "Size", + "StorageClass", + "Key", + "LastModified", + "Owner", + "RestoreStatus" + ], + "ListObjectVersionsOutput":[ + "DeleteMarkers" ] }, "unwrapXmlOutput":{ @@ -781,6 +963,9 @@ }, "TopicConfiguration": { "alternateBaseClass" : "NotificationConfiguration" + }, + "S3ObjectVersion" :{ + "alternateBaseClass" : "S3Object" } }, "flattenShapes" : { diff --git a/sdk/src/Services/S3/Custom/Model/GetObjectMetadataRequest.cs b/sdk/src/Services/S3/Custom/Model/GetObjectMetadataRequest.cs index e7f3dd9820e0..e74a5f80d8bb 100644 --- a/sdk/src/Services/S3/Custom/Model/GetObjectMetadataRequest.cs +++ b/sdk/src/Services/S3/Custom/Model/GetObjectMetadataRequest.cs @@ -23,276 +23,10 @@ namespace Amazon.S3.Model { - /// - /// Container for the parameters to the GetObjectMetadata operation. - /// The HEAD operation retrieves metadata from an object without returning the - /// object itself. This operation is useful if you're interested only in an object's metadata. - /// - /// - /// - /// A HEAD request has the same options as a GET operation on an object. - /// The response is identical to the GET response except that there is no response - /// body. Because of this, if the HEAD request generates an error, it returns a - /// generic code, such as 400 Bad Request, 403 Forbidden, 404 Not Found, - /// 405 Method Not Allowed, 412 Precondition Failed, or 304 Not Modified. - /// It's not possible to retrieve the exact exception of these error codes. - /// - /// - /// - /// Request headers are limited to 8 KB in size. For more information, see Common - /// Request Headers. - /// - /// - /// - /// Directory buckets - For directory buckets, you must make requests for this - /// API operation to the Zonal endpoint. These endpoints support virtual-hosted-style - /// requests in the format https://bucket_name.s3express-az_id.region.amazonaws.com/key-name - /// . Path-style requests are not supported. For more information, see Regional - /// and Zonal endpoints in the Amazon S3 User Guide. - /// - ///
Permissions
  • - /// - /// General purpose bucket permissions - To use HEAD, you must have the - /// s3:GetObject permission. You need the relevant read object (or version) permission - /// for this operation. For more information, see Actions, - /// resources, and condition keys for Amazon S3 in the Amazon S3 User Guide. - /// For more information about the permissions to S3 API operations by S3 resource types, - /// see Required - /// permissions for Amazon S3 API operations in the Amazon S3 User Guide. - /// - /// - /// - /// If the object you request doesn't exist, the error that Amazon S3 returns depends - /// on whether you also have the s3:ListBucket permission. - /// - ///
    • - /// - /// If you have the s3:ListBucket permission on the bucket, Amazon S3 returns an - /// HTTP status code 404 Not Found error. - /// - ///
    • - /// - /// If you don’t have the s3:ListBucket permission, Amazon S3 returns an HTTP status - /// code 403 Forbidden error. - /// - ///
  • - /// - /// Directory bucket permissions - To grant access to this API operation on a - /// directory bucket, we recommend that you use the - /// CreateSession API operation for session-based authorization. Specifically, - /// you grant the s3express:CreateSession permission to the directory bucket in - /// a bucket policy or an IAM identity-based policy. Then, you make the CreateSession - /// API call on the bucket to obtain a session token. With the session token in your request - /// header, you can make API requests to this operation. After the session token expires, - /// you make another CreateSession API call to generate a new session token for - /// use. Amazon Web Services CLI or SDKs create session and refresh the session token - /// automatically to avoid service interruptions when a session expires. For more information - /// about authorization, see - /// CreateSession . - /// - ///
Encryption
- /// - /// Encryption request headers, like x-amz-server-side-encryption, should not be - /// sent for HEAD requests if your object uses server-side encryption with Key - /// Management Service (KMS) keys (SSE-KMS), dual-layer server-side encryption with Amazon - /// Web Services KMS keys (DSSE-KMS), or server-side encryption with Amazon S3 managed - /// encryption keys (SSE-S3). The x-amz-server-side-encryption header is used when - /// you PUT an object to S3 and want to specify the encryption method. If you include - /// this header in a HEAD request for an object that uses these types of keys, - /// you’ll get an HTTP 400 Bad Request error. It's because the encryption method - /// can't be changed when you retrieve the object. - /// - /// - /// - /// If you encrypt an object by using server-side encryption with customer-provided encryption - /// keys (SSE-C) when you store the object in Amazon S3, then when you retrieve the metadata - /// from the object, you must use the following headers to provide the encryption key - /// for the server to be able to retrieve the object's metadata. The headers are: - /// - ///
  • - /// - /// x-amz-server-side-encryption-customer-algorithm - /// - ///
  • - /// - /// x-amz-server-side-encryption-customer-key - /// - ///
  • - /// - /// x-amz-server-side-encryption-customer-key-MD5 - /// - ///
- /// - /// For more information about SSE-C, see Server-Side - /// Encryption (Using Customer-Provided Encryption Keys) in the Amazon S3 User - /// Guide. - /// - /// - /// - /// Directory bucket permissions - For directory buckets, only server-side encryption - /// with Amazon S3 managed keys (SSE-S3) (AES256) is supported. - /// - ///
Versioning
  • - /// - /// If the current version of the object is a delete marker, Amazon S3 behaves as if the - /// object was deleted and includes x-amz-delete-marker: true in the response. - /// - ///
  • - /// - /// If the specified version is a delete marker, the response returns a 405 Method - /// Not Allowed error and the Last-Modified: timestamp response header. - /// - ///
  • - /// - /// Directory buckets - Delete marker is not supported by directory buckets. - /// - ///
  • - /// - /// Directory buckets - S3 Versioning isn't enabled and supported for directory - /// buckets. For this API operation, only the null value of the version ID is supported - /// by directory buckets. You can only specify null to the versionId query - /// parameter in the request. - /// - ///
HTTP Host header syntax
- /// - /// Directory buckets - The HTTP Host header syntax is Bucket_name.s3express-az_id.region.amazonaws.com. - /// - ///
- /// - /// The following actions are related to HeadObject: - /// - /// - ///
public partial class GetObjectMetadataRequest : AmazonWebServiceRequest { - private string bucketName; - private ChecksumMode _checksumMode; DateTime? modifiedSinceDate; DateTime? unmodifiedSinceDate; - string etagToMatch; - string etagToNotMatch; - private string key; - private string versionId; - private int? partNumber; - private RequestPayer requestPayer; - private string expectedBucketOwner; - private string _responseCacheControl; - private string _responseContentDisposition; - private string _responseContentEncoding; - private string _responseContentLanguage; - private string _responseContentType; - private DateTime? _responseExpires; - private ServerSideEncryptionCustomerMethod serverSideCustomerEncryption; - private string serverSideEncryptionCustomerProvidedKey; - private string serverSideEncryptionCustomerProvidedKeyMD5; - - - /// - /// Gets and sets the property BucketName. - /// - /// The name of the bucket that contains the object. - /// - /// - /// - /// Directory buckets - When you use this operation with a directory bucket, you - /// must use virtual-hosted-style requests in the format Bucket_name.s3express-az_id.region.amazonaws.com. - /// Path-style requests are not supported. Directory bucket names must be unique in the - /// chosen Availability Zone. Bucket names must 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. - /// - /// - /// - /// Access points - When you use this action with an access point, you must provide - /// the alias of the access point in place of the bucket name or specify the access point - /// ARN. When using the access point ARN, you must direct requests to the access point - /// hostname. The access point hostname takes the form AccessPointName-AccountId.s3-accesspoint.Region.amazonaws.com. - /// When using this action with an access point through the Amazon Web Services SDKs, - /// you provide the access point ARN in place of the bucket name. For more information - /// about access point ARNs, see Using - /// access points in the Amazon S3 User Guide. - /// - /// - /// - /// Access points and Object Lambda access points are not supported by directory buckets. - /// - /// - /// - /// S3 on Outposts - When you use this action with Amazon S3 on Outposts, you - /// must direct requests to the S3 on Outposts hostname. The S3 on Outposts hostname takes - /// the form AccessPointName-AccountId.outpostID.s3-outposts.Region.amazonaws.com. - /// When you use this action with S3 on Outposts through the Amazon Web Services SDKs, - /// you provide the Outposts access point ARN in place of the bucket name. For more information - /// about S3 on Outposts ARNs, see What - /// is S3 on Outposts? 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 ChecksumMode. - /// - /// This must be enabled to retrieve the checksum. - /// - /// - /// - /// General purpose buckets - If you enable checksum mode and the object is uploaded with a checksum - /// and encrypted with an Key Management Service (KMS) key, you must have permission to use the kms:Decrypt action to retrieve the checksum. - /// - /// - /// Directory buckets - If you enable ChecksumMode and the object is encrypted with Amazon Web Services Key Management Service (Amazon Web Services KMS), - /// you must also have the kms:GenerateDataKey and kms:Decrypt permissions in IAM identity-based policies and KMS key policies for the KMS key to retrieve the - /// checksum of the object. - /// - /// - public ChecksumMode ChecksumMode - { - get { return this._checksumMode; } - set { this._checksumMode = value; } - } - - // Check to see if ChecksumMode property is set - internal bool IsSetChecksumMode() - { - return this._checksumMode != null; - } - - /// - /// ETag to be matched as a pre-condition for returning the object, - /// otherwise a PreconditionFailed signal is returned. - /// - public string EtagToMatch - { - get { return this.etagToMatch; } - set { this.etagToMatch = value; } - } - - // Check to see if EtagToMatch property is set - internal bool IsSetEtagToMatch() - { - return this.etagToMatch != null; - } /// /// Returns the object only if it has been modified since the specified time, @@ -320,22 +54,6 @@ internal bool IsSetModifiedSinceDate() return this.modifiedSinceDate.HasValue; } - /// - /// ETag that should not be matched as a pre-condition for returning the object, - /// otherwise a NotModified (304) signal is returned. - /// - public string EtagToNotMatch - { - get { return this.etagToNotMatch; } - set { this.etagToNotMatch = value; } - } - - // Check to see if EtagToNotMatch property is set - internal bool IsSetEtagToNotMatch() - { - return this.etagToNotMatch != null; - } - /// /// Returns the object only if it has not been modified since the specified time, /// otherwise returns a PreconditionFailed. @@ -361,321 +79,5 @@ internal bool IsSetUnmodifiedSinceDate() { return this.unmodifiedSinceDate.HasValue; } - - /// - /// The key of the object. - /// - /// - /// - /// This property will be used as part of the resource path of the HTTP request. In .NET the System.Uri class - /// is used to construct the uri for the request. The System.Uri class will canonicalize the uri string by compacting characters like "..". - /// For example an object key of "foo/../bar/file.txt" will be transformed into "bar/file.txt" because the ".." - /// is interpreted as use parent directory. - /// - /// - /// Starting with .NET 8, the AWS .NET SDK disables System.Uri's feature of canonicalizing the resource path. This allows S3 keys like - /// "foo/../bar/file.txt" to work correctly with the AWS .NET SDK. - /// - /// - /// For further information view the documentation for the Uri class: https://docs.microsoft.com/en-us/dotnet/api/system.uri - /// - /// - public string Key - { - get { return this.key; } - set { this.key = value; } - } - - // Check to see if Key property is set - internal bool IsSetKey() - { - return this.key != null; - } - - /// - /// Gets and sets the property VersionId. - /// - /// Version ID used to reference a specific version of the object. - /// - /// - /// - /// For directory buckets in this API operation, only the null value of the - /// version ID is supported. - /// - /// - /// - public string VersionId - { - get { return this.versionId; } - set { this.versionId = value; } - } - - // Check to see if VersionId property is set - internal bool IsSetVersionId() - { - return this.versionId != null; - } - - /// - /// The Server-side encryption algorithm to be used with the customer provided key. - /// - /// - /// - /// This functionality is not supported for directory buckets. - /// - /// - /// - public ServerSideEncryptionCustomerMethod ServerSideEncryptionCustomerMethod - { - get { return this.serverSideCustomerEncryption; } - set { this.serverSideCustomerEncryption = value; } - } - - // Check to see if ServerSideEncryptionCustomerMethod property is set - internal bool IsSetServerSideEncryptionCustomerMethod() - { - return this.serverSideCustomerEncryption != null && this.serverSideCustomerEncryption != ServerSideEncryptionCustomerMethod.None; - } - - /// - /// The base64-encoded encryption key for Amazon S3 to use to decrypt the object - /// - /// Using the encryption key you provide as part of your request Amazon S3 manages both the encryption, as it writes - /// to disks, and decryption, when you access your objects. Therefore, you don't need to maintain any data encryption code. The only - /// thing you do is manage the encryption keys you provide. - /// - /// - /// When you retrieve an object, you must provide the same encryption key as part of your request. Amazon S3 first verifies - /// the encryption key you provided matches, and then decrypts the object before returning the object data to you. - /// - /// - /// Important: Amazon S3 does not store the encryption key you provide. - /// - /// - /// - /// This functionality is not supported for directory buckets. - /// - /// - /// - [AWSProperty(Sensitive=true)] - public string ServerSideEncryptionCustomerProvidedKey - { - get { return this.serverSideEncryptionCustomerProvidedKey; } - set { this.serverSideEncryptionCustomerProvidedKey = value; } - } - - /// - /// Checks if ServerSideEncryptionCustomerProvidedKey property is set. - /// - /// true if ServerSideEncryptionCustomerProvidedKey property is set. - internal bool IsSetServerSideEncryptionCustomerProvidedKey() - { - return !System.String.IsNullOrEmpty(this.serverSideEncryptionCustomerProvidedKey); - } - - /// - /// The MD5 of the customer encryption key specified in the ServerSideEncryptionCustomerProvidedKey property. The MD5 is - /// base 64 encoded. This field is optional, the SDK will calculate the MD5 if this is not set. - /// - /// - /// - /// This functionality is not supported for directory buckets. - /// - /// - public string ServerSideEncryptionCustomerProvidedKeyMD5 - { - get { return this.serverSideEncryptionCustomerProvidedKeyMD5; } - set { this.serverSideEncryptionCustomerProvidedKeyMD5 = value; } - } - - /// - /// Checks if ServerSideEncryptionCustomerProvidedKeyMD5 property is set. - /// - /// true if ServerSideEncryptionCustomerProvidedKey property is set. - internal bool IsSetServerSideEncryptionCustomerProvidedKeyMD5() - { - return !System.String.IsNullOrEmpty(this.serverSideEncryptionCustomerProvidedKeyMD5); - } - - /// - /// Part number of the object being read. This is a positive integer between 1 and 10,000. - /// Effectively performs a 'ranged' HEAD request for the part specified. - /// Useful querying about the size of the part and the number of parts in this object. - /// - public int? PartNumber - { - get { return this.partNumber; } - set - { - if (value.HasValue) - { - if (value < 1 || 10000 < value) - { - throw new ArgumentException("PartNumber must be a positve integer between 1 and 10,000."); - } - } - - this.partNumber = value; - } - } - - /// - /// Check if PartNumber property is set. - /// - /// true if PartNumber property is set. - internal bool IsSetPartNumber() - { - return this.partNumber.HasValue; - } - - /// - /// Confirms that the requester knows that she or he will be charged for the request. - /// Bucket owners need not specify this parameter in their requests. - /// - public RequestPayer RequestPayer - { - get { return this.requestPayer; } - set { this.requestPayer = value; } - } - - /// - /// Checks to see if RequetsPayer is set. - /// - /// true, if RequestPayer property is set. - internal bool IsSetRequestPayer() - { - return requestPayer != 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). - /// - /// - 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); - } - - /// - /// Gets and sets the property ResponseCacheControl. - /// - /// Sets the Cache-Control header of the response. - /// - /// - public string ResponseCacheControl - { - get { return this._responseCacheControl; } - set { this._responseCacheControl = value; } - } - - // Check to see if ResponseCacheControl property is set - internal bool IsSetResponseCacheControl() - { - return this._responseCacheControl != null; - } - - /// - /// Gets and sets the property ResponseContentDisposition. - /// - /// Sets the Content-Disposition header of the response. - /// - /// - public string ResponseContentDisposition - { - get { return this._responseContentDisposition; } - set { this._responseContentDisposition = value; } - } - - // Check to see if ResponseContentDisposition property is set - internal bool IsSetResponseContentDisposition() - { - return this._responseContentDisposition != null; - } - - /// - /// Gets and sets the property ResponseContentEncoding. - /// - /// Sets the Content-Encoding header of the response. - /// - /// - public string ResponseContentEncoding - { - get { return this._responseContentEncoding; } - set { this._responseContentEncoding = value; } - } - - // Check to see if ResponseContentEncoding property is set - internal bool IsSetResponseContentEncoding() - { - return this._responseContentEncoding != null; - } - - /// - /// Gets and sets the property ResponseContentLanguage. - /// - /// Sets the Content-Language header of the response. - /// - /// - public string ResponseContentLanguage - { - get { return this._responseContentLanguage; } - set { this._responseContentLanguage = value; } - } - - // Check to see if ResponseContentLanguage property is set - internal bool IsSetResponseContentLanguage() - { - return this._responseContentLanguage != null; - } - - /// - /// Gets and sets the property ResponseContentType. - /// - /// Sets the Content-Type header of the response. - /// - /// - public string ResponseContentType - { - get { return this._responseContentType; } - set { this._responseContentType = value; } - } - - // Check to see if ResponseContentType property is set - internal bool IsSetResponseContentType() - { - return this._responseContentType != null; - } - - /// - /// Gets and sets the property ResponseExpires. - /// - /// Sets the Expires header of the response. - /// - /// - public DateTime? ResponseExpires - { - get { return this._responseExpires; } - set { this._responseExpires = value; } - } - - // Check to see if ResponseExpires property is set - internal bool IsSetResponseExpires() - { - return this._responseExpires.HasValue; - } } } \ No newline at end of file diff --git a/sdk/src/Services/S3/Custom/Model/GetObjectMetadataResponse.cs b/sdk/src/Services/S3/Custom/Model/GetObjectMetadataResponse.cs index 5b654b68d233..5e5c2a53f138 100644 --- a/sdk/src/Services/S3/Custom/Model/GetObjectMetadataResponse.cs +++ b/sdk/src/Services/S3/Custom/Model/GetObjectMetadataResponse.cs @@ -26,40 +26,15 @@ namespace Amazon.S3.Model /// /// Returns information about the HeadObject response and response metadata. /// - public class GetObjectMetadataResponse : AmazonWebServiceResponse + public partial class GetObjectMetadataResponse : AmazonWebServiceResponse { private string deleteMarker; - private string acceptRanges; - private string contentRange; - private Expiration expiration; private DateTime? restoreExpiration; private bool? restoreInProgress; - private DateTime? lastModified; - private string eTag; - private int? missingMeta; - private string versionId; - private string websiteRedirectLocation; - private string serverSideEncryptionKeyManagementServiceKeyId; private ServerSideEncryptionMethod serverSideEncryption; private ServerSideEncryptionCustomerMethod serverSideEncryptionCustomerMethod; private HeadersCollection headersCollection = new HeadersCollection(); private MetadataCollection metadataCollection = new MetadataCollection(); - private ReplicationStatus replicationStatus; - private ArchiveStatus archiveStatus; - private int? partsCount; - private int? tagsCount; - private ObjectLockLegalHoldStatus objectLockLegalHoldStatus; - private ObjectLockMode objectLockMode; - private DateTime? objectLockRetainUntilDate; - private S3StorageClass storageClass; - private RequestCharged requestCharged; - private bool? bucketKeyEnabled; - private string _checksumCRC32; - private string _checksumCRC32C; - private string _checksumCRC64NVME; - private string _checksumSHA1; - private string _checksumSHA256; - private ChecksumType _checksumType; /// /// The date and time at which the object is no longer cacheable. @@ -116,59 +91,6 @@ internal bool IsSetDeleteMarker() return this.deleteMarker != null; } - /// - /// Gets and sets the AcceptRanges. - /// - public string AcceptRanges - { - get { return this.acceptRanges; } - set { this.acceptRanges = value; } - } - - // Check to see if AcceptRanges property is set - internal bool IsSetAcceptRanges() - { - return this.acceptRanges != null; - } - - /// - /// Gets and sets the ContentRange. - /// - public string ContentRange - { - get { return this.contentRange; } - set { this.contentRange = value; } - } - - // Check to see if ContentRange property is set - internal bool IsSetContentRange() - { - return this.contentRange != null; - } - - /// - /// Gets and sets the property Expiration. - /// - /// If the object expiration is configured, this will contain the expiration date (expiry-date) - /// and rule ID (rule-id). The value of rule-id is URL encoded. - /// - /// - /// Object expiration information is not returned for directory buckets (for those, the - /// response header will contain the value "NotImplemented"). - /// - /// - public Expiration Expiration - { - get { return this.expiration; } - set { this.expiration = value; } - } - - // Check to see if Expiration property is set - internal bool IsSetExpiration() - { - return this.expiration != null; - } - /// /// Gets and sets the RestoreExpiration property. /// @@ -202,114 +124,6 @@ public bool? RestoreInProgress set { this.restoreInProgress = value; } } - /// - /// Gets and sets the property LastModified. - /// - /// Date and time when the object was last modified. - /// - /// - public DateTime? LastModified - { - get { return this.lastModified; } - set { this.lastModified = value; } - } - - // Check to see if LastModified property is set - internal bool IsSetLastModified() - { - return this.lastModified.HasValue; - } - - /// - /// An ETag is an opaque identifier assigned by a web server to a specific version of a resource found at a URL - /// - /// - public string ETag - { - get { return this.eTag; } - set { this.eTag = value; } - } - - // Check to see if ETag property is set - internal bool IsSetETag() - { - return this.eTag != null; - } - - /// - /// Gets and sets the property MissingMeta. - /// - /// This is set to the number of metadata entries not returned in x-amz-meta - /// headers. This can happen if you create metadata using an API like SOAP that supports - /// more flexible metadata than the REST API. For example, using SOAP, you can create - /// metadata whose values are not legal HTTP headers. - /// - /// - /// - /// This functionality is not supported for directory buckets. - /// - /// - /// - public int? MissingMeta - { - get { return this.missingMeta; } - set { this.missingMeta = value; } - } - - // Check to see if MissingMeta property is set - internal bool IsSetMissingMeta() - { - return this.missingMeta.HasValue; - } - - /// - /// Gets and sets the property VersionId. - /// - /// Version ID of the object. - /// - /// - /// - /// This functionality is not supported for directory buckets. - /// - /// - /// - public string VersionId - { - get { return this.versionId; } - set { this.versionId = value; } - } - - // Check to see if VersionId property is set - internal bool IsSetVersionId() - { - return this.versionId != null; - } - - /// - /// Gets and sets the property WebsiteRedirectLocation. - /// - /// If the bucket is configured as a website, redirects requests for this object to another - /// object in the same bucket or to an external URL. Amazon S3 stores the value of this - /// header in the object metadata. - /// - /// - /// - /// This functionality is not supported for directory buckets. - /// - /// - /// - public string WebsiteRedirectLocation - { - get { return this.websiteRedirectLocation; } - set { this.websiteRedirectLocation = value; } - } - - // Check to see if WebsiteRedirectLocation property is set - internal bool IsSetWebsiteRedirectLocation() - { - return this.websiteRedirectLocation != null; - } - /// /// The server-side encryption algorithm used when storing this object in Amazon S3 or Amazon FSx. /// @@ -366,419 +180,6 @@ internal bool IsSetServerSideEncryptionCustomerMethod() { return this.serverSideEncryptionCustomerMethod != null; } - - /// - /// - /// If present, indicates the ID of the KMS key that was used for object encryption. - /// - /// - [AWSProperty(Sensitive=true)] - public string ServerSideEncryptionKeyManagementServiceKeyId - { - get { return this.serverSideEncryptionKeyManagementServiceKeyId; } - set { this.serverSideEncryptionKeyManagementServiceKeyId = value; } - } - - /// - /// Checks if ServerSideEncryptionKeyManagementServiceKeyId property is set. - /// - /// true if ServerSideEncryptionKeyManagementServiceKeyId property is set. - internal bool IsSetServerSideEncryptionKeyManagementServiceKeyId() - { - return !System.String.IsNullOrEmpty(this.serverSideEncryptionKeyManagementServiceKeyId); - } - - /// - ///

Amazon S3 can return this header if your request involves a - /// bucket that is either a source or a destination in a replication rule.

In replication, - /// you have a source bucket on which you configure replication and destination bucket or buckets - /// where Amazon S3 stores object replicas. When you request an object (GetObject) or - /// object metadata (HeadObject) from these buckets, Amazon S3 will - /// return the x-amz-replication-status header in the response as follows:

- ///
  • If requesting an object from the source bucket, Amazon S3 will return the - /// x-amz-replication-status header if the object in your request is eligible for - /// replication.

    For example, suppose that in your replication configuration, you specify - /// object prefix TaxDocs requesting Amazon S3 to replicate objects with key - /// prefix TaxDocs. Any objects you upload with this key name prefix, for example - /// TaxDocs/document1.pdf, are eligible for replication. For any object request with - /// this key name prefix, Amazon S3 will return the x-amz-replication-status header - /// with value PENDING, COMPLETED or FAILED indicating object replication status.

  • If - /// requesting an object from a destination bucket, Amazon S3 will return the - /// x-amz-replication-status header with value REPLICA if the object in your - /// request is a replica that Amazon S3 created.

  • When replicating objects - /// to multiple destination buckets the x-amz-replication-status header acts differently. - /// The header of the source object will only return a value of COMPLETED when replication is - /// successful to all destinations. The header will remain at value PENDING until replication has - /// completed for all destinations. If one or more destinations fails replication the header will - /// return FAILED.

For more information, - /// see Replication.

- ///
- /// - /// - /// This functionality is not supported for directory buckets. - /// - /// - public ReplicationStatus ReplicationStatus - { - get { return this.replicationStatus; } - set { this.replicationStatus = value; } - } - - /// - /// Gets and sets the property ArchiveStatus. - /// - /// The archive state of the head object. - /// - /// - /// - /// This functionality is not supported for directory buckets. - /// - /// - /// - public ArchiveStatus ArchiveStatus - { - get { return this.archiveStatus; } - set { this.archiveStatus = value; } - } - - /// - /// Checks if ReplicationStatus property is set. - /// - /// true if ReplicationStatus property is set. - internal bool IsSetReplicationStatus() - { - return ReplicationStatus != null; - } - - /// - /// The count of parts this object has. - /// - public int? PartsCount - { - get { return this.partsCount; } - set { this.partsCount = value; } - } - - // Check to see if PartsCount property is set - internal bool IsSetPartsCount() - { - return this.partsCount.HasValue; - } - - /// - /// The count of tags this object has. - /// - /// The number of tags, if any, on the object, when you have the relevant permission - /// to read object tags. - /// - /// - /// - /// You can use GetObjectTagging - /// to retrieve the tag set associated with an object. - /// - /// - /// - /// This functionality is not supported for directory buckets. - /// - /// - /// - public int? TagsCount - { - get { return this.tagsCount; } - set { this.tagsCount = value; } - } - - // Check to see if TagsCount property is set - internal bool IsSetTagsCount() - { - return this.tagsCount.HasValue; - } - - /// - /// Gets and sets the property ObjectLockLegalHoldStatus. - /// - /// Specifies whether a legal hold is in effect for this object. This header is only returned - /// if the requester has the s3:GetObjectLegalHold permission. This header - /// is not returned if the specified version of this object has never had a legal hold - /// applied. For more information about S3 Object Lock, see Object - /// Lock. - /// - /// - /// - /// This functionality is not supported for directory buckets. - /// - /// - /// - public ObjectLockLegalHoldStatus ObjectLockLegalHoldStatus - { - get { return this.objectLockLegalHoldStatus; } - set { this.objectLockLegalHoldStatus = value; } - } - - // Check to see if ObjectLockLegalHoldStatus property is set - internal bool IsSetObjectLockLegalHoldStatus() - { - return this.objectLockLegalHoldStatus != null; - } - - /// - /// Gets and sets the property ObjectLockMode. - /// - /// The Object Lock mode, if any, that's in effect for this object. This header is only - /// returned if the requester has the s3:GetObjectRetention permission. For - /// more information about S3 Object Lock, see Object - /// Lock. - /// - /// - /// - /// This functionality is not supported for directory buckets. - /// - /// - /// - public ObjectLockMode ObjectLockMode - { - get { return this.objectLockMode; } - set { this.objectLockMode = value; } - } - - // Check to see if ObjectLockMode property is set - internal bool IsSetObjectLockMode() - { - return this.objectLockMode != null; - } - - /// - /// Gets and sets the property ObjectLockRetainUntilDate. - /// - /// The date and time when the Object Lock retention period expires. This header is only - /// returned if the requester has the s3:GetObjectRetention permission. - /// - /// - /// - /// This functionality is not supported for directory buckets. - /// - /// - /// - public DateTime? ObjectLockRetainUntilDate - { - get { return this.objectLockRetainUntilDate; } - set { this.objectLockRetainUntilDate = value; } - } - - // Check to see if ObjectLockRetainUntilDate property is set - internal bool IsSetObjectLockRetainUntilDate() - { - return this.objectLockRetainUntilDate.HasValue; - } - - /// - /// Gets and sets the property StorageClass. - /// - /// Provides storage class information of the object. Amazon S3 returns this header for - /// all objects except for S3 Standard storage class objects. - /// - /// - /// - /// For more information, see Storage - /// Classes. - /// - /// - /// - /// Directory buckets - Only the S3 Express One Zone storage class is supported - /// by directory buckets to store objects. - /// - /// - /// - public S3StorageClass StorageClass - { - get { return this.storageClass; } - set { this.storageClass = value; } - } - - // Check to see if StorageClass property is set - internal bool IsSetStorageClass() - { - return this.storageClass != null; - } - - /// - /// If present, indicates that the requester was successfully charged for the request. - /// - public RequestCharged RequestCharged - { - get { return this.requestCharged; } - set { this.requestCharged = value; } - } - - /// - /// Checks to see if RequestCharged is set. - /// - /// true, if RequestCharged property is set. - internal bool IsSetRequestCharged() - { - return requestCharged != null; - } - - /// - /// Gets and sets the property BucketKeyEnabled. - /// - /// Indicates whether the object uses an S3 Bucket Key for server-side encryption with - /// Key Management Service (KMS) keys (SSE-KMS). - /// - /// - public bool? BucketKeyEnabled - { - get { return this.bucketKeyEnabled; } - set { this.bucketKeyEnabled = value; } - } - - internal bool IsSetBucketKeyEnabled() - { - return bucketKeyEnabled.HasValue; - } - - /// - /// Gets and sets the property ChecksumCRC32. - /// - /// The Base64 encoded, 32-bit CRC-32 checksum of the object. This checksum is only present - /// if the checksum was uploaded with the object. When you use an API operation on an object that - /// was uploaded using multipart uploads, this value may not be a direct checksum value - /// of the full object. Instead, it's a calculation based on the checksum values of each - /// individual part. For more information about how checksums are calculated with multipart - /// uploads, see - /// Checking object integrity in the Amazon S3 User Guide. - /// - /// - public string ChecksumCRC32 - { - get { return this._checksumCRC32; } - set { this._checksumCRC32 = value; } - } - - // Check to see if ChecksumCRC32 property is set - internal bool IsSetChecksumCRC32() - { - return this._checksumCRC32 != null; - } - - /// - /// Gets and sets the property ChecksumCRC32C. - /// - /// The Base64 encoded, 32-bit CRC-32C checksum of the object. This checksum is only present - /// if the checksum was uploaded with the object. When you use an API operation on an object that - /// was uploaded using multipart uploads, this value may not be a direct checksum value - /// of the full object. Instead, it's a calculation based on the checksum values of each - /// individual part. For more information about how checksums are calculated with multipart - /// uploads, see - /// Checking object integrity in the Amazon S3 User Guide. - /// - /// - public string ChecksumCRC32C - { - get { return this._checksumCRC32C; } - set { this._checksumCRC32C = value; } - } - - // Check to see if ChecksumCRC32C property is set - internal bool IsSetChecksumCRC32C() - { - return this._checksumCRC32C != null; - } - - /// - /// Gets and sets the property ChecksumCRC64NVME. - /// - /// The Base64 encoded, 64-bit CRC-64NVME checksum of the object. This checksum is only present - /// if the checksum was uploaded with the object. When you use an API operation on an object that - /// was uploaded using multipart uploads, this value may not be a direct checksum value - /// of the full object. Instead, it's a calculation based on the checksum values of each - /// individual part. For more information about how checksums are calculated with multipart - /// uploads, see - /// Checking object integrity in the Amazon S3 User Guide. - /// - /// - public string ChecksumCRC64NVME - { - get { return this._checksumCRC64NVME; } - set { this._checksumCRC64NVME = value; } - } - - // Check to see if ChecksumCRC64NVME property is set - internal bool IsSetChecksumCRC64NVME() - { - return this._checksumCRC64NVME != null; - } - - /// - /// Gets and sets the property ChecksumSHA1. - /// - /// The Base64 encoded, 160-bit SHA-1 digest of the object. This will only be present - /// if it was uploaded with the object. When you use the API operation on an object that - /// was uploaded using multipart uploads, this value may not be a direct checksum value - /// of the full object. Instead, it's a calculation based on the checksum values of each - /// individual part. For more information about how checksums are calculated with multipart - /// uploads, see - /// Checking object integrity in the Amazon S3 User Guide. - /// - /// - public string ChecksumSHA1 - { - get { return this._checksumSHA1; } - set { this._checksumSHA1 = value; } - } - - // Check to see if ChecksumSHA1 property is set - internal bool IsSetChecksumSHA1() - { - return this._checksumSHA1 != null; - } - - /// - /// Gets and sets the property ChecksumSHA256. - /// - /// The Base64 encoded, 256-bit SHA-256 digest of the object. This will only be present - /// if it was uploaded with the object. When you use an API operation on an object that - /// was uploaded using multipart uploads, this value may not be a direct checksum value - /// of the full object. Instead, it's a calculation based on the checksum values of each - /// individual part. For more information about how checksums are calculated with multipart - /// uploads, see - /// Checking object integrity in the Amazon S3 User Guide. - /// - /// - public string ChecksumSHA256 - { - get { return this._checksumSHA256; } - set { this._checksumSHA256 = value; } - } - - // Check to see if ChecksumSHA256 property is set - internal bool IsSetChecksumSHA256() - { - return this._checksumSHA256 != null; - } - - /// - /// Gets and sets the property ChecksumType. - /// - /// The checksum type, which determines how part-level checksums are combined to - /// create an object-level checksum for multipart objects. You can use this header - /// response to verify that the checksum type that is received is the same checksum - /// type that was specified in the CreateMultipartUpload request. - /// For more information, see - /// Checking object integrity in the Amazon S3 User Guide. - /// - /// - public ChecksumType ChecksumType - { - get { return this._checksumType; } - set { this._checksumType = value; } - } - - // Check to see if ChecksumType property is set - internal bool IsSetChecksumType() - { - return this._checksumType != null; - } } } diff --git a/sdk/src/Services/S3/Custom/Model/Internal/MarshallTransformations/GetObjectMetadataRequestMarshaller.cs b/sdk/src/Services/S3/Custom/Model/Internal/MarshallTransformations/GetObjectMetadataRequestMarshaller.cs index c04fdca4c238..cdc03bb2f444 100644 --- a/sdk/src/Services/S3/Custom/Model/Internal/MarshallTransformations/GetObjectMetadataRequestMarshaller.cs +++ b/sdk/src/Services/S3/Custom/Model/Internal/MarshallTransformations/GetObjectMetadataRequestMarshaller.cs @@ -23,104 +23,19 @@ namespace Amazon.S3.Model.Internal.MarshallTransformations { - public class GetObjectMetadataRequestMarshaller : IMarshaller ,IMarshaller + public partial class GetObjectMetadataRequestMarshaller : IMarshaller ,IMarshaller { - public IRequest Marshall(Amazon.Runtime.AmazonWebServiceRequest input) - { - return this.Marshall((GetObjectMetadataRequest)input); - } - - public IRequest Marshall(GetObjectMetadataRequest headObjectRequest) + partial void PostMarshallCustomization(DefaultRequest defaultRequest, GetObjectMetadataRequest publicRequest) { - if (string.IsNullOrEmpty(headObjectRequest.Key)) - throw new System.ArgumentException("Key is a required property and must be set before making this call.", "GetObjectMetadataRequest.Key"); - - IRequest request = new DefaultRequest(headObjectRequest, "AmazonS3"); - - request.HttpMethod = "HEAD"; - - if(headObjectRequest.IsSetEtagToMatch()) - request.Headers.Add(HeaderKeys.IfMatchHeader, S3Transforms.ToStringValue(headObjectRequest.EtagToMatch)); - - if(headObjectRequest.IsSetModifiedSinceDate()) - request.Headers.Add(HeaderKeys.IfModifiedSinceHeader, S3Transforms.ToStringValue(headObjectRequest.ModifiedSinceDate.Value)); - - if(headObjectRequest.IsSetEtagToNotMatch()) - request.Headers.Add(HeaderKeys.IfNoneMatchHeader, S3Transforms.ToStringValue(headObjectRequest.EtagToNotMatch)); - - if(headObjectRequest.IsSetUnmodifiedSinceDate()) - request.Headers.Add(HeaderKeys.IfUnmodifiedSinceHeader, S3Transforms.ToStringValue(headObjectRequest.UnmodifiedSinceDate.Value)); - - if (headObjectRequest.IsSetServerSideEncryptionCustomerMethod()) - request.Headers.Add(HeaderKeys.XAmzSSECustomerAlgorithmHeader, headObjectRequest.ServerSideEncryptionCustomerMethod); - if (headObjectRequest.IsSetServerSideEncryptionCustomerProvidedKey()) + if (publicRequest.IsSetServerSideEncryptionCustomerProvidedKey()) { - request.Headers.Add(HeaderKeys.XAmzSSECustomerKeyHeader, headObjectRequest.ServerSideEncryptionCustomerProvidedKey); - if (headObjectRequest.IsSetServerSideEncryptionCustomerProvidedKeyMD5()) - request.Headers.Add(HeaderKeys.XAmzSSECustomerKeyMD5Header, headObjectRequest.ServerSideEncryptionCustomerProvidedKeyMD5); + defaultRequest.Headers.Add(HeaderKeys.XAmzSSECustomerKeyHeader, publicRequest.ServerSideEncryptionCustomerProvidedKey); + if (publicRequest.IsSetServerSideEncryptionCustomerProvidedKeyMD5()) + defaultRequest.Headers.Add(HeaderKeys.XAmzSSECustomerKeyMD5Header, publicRequest.ServerSideEncryptionCustomerProvidedKeyMD5); else - request.Headers.Add(HeaderKeys.XAmzSSECustomerKeyMD5Header, AmazonS3Util.ComputeEncodedMD5FromEncodedString(headObjectRequest.ServerSideEncryptionCustomerProvidedKey)); + defaultRequest.Headers.Add(HeaderKeys.XAmzSSECustomerKeyMD5Header, AmazonS3Util.ComputeEncodedMD5FromEncodedString(publicRequest.ServerSideEncryptionCustomerProvidedKey)); } - if (headObjectRequest.IsSetRequestPayer()) - request.Headers.Add(S3Constants.AmzHeaderRequestPayer, S3Transforms.ToStringValue(headObjectRequest.RequestPayer.ToString())); - - if (headObjectRequest.IsSetExpectedBucketOwner()) - request.Headers.Add(S3Constants.AmzHeaderExpectedBucketOwner, S3Transforms.ToStringValue(headObjectRequest.ExpectedBucketOwner)); - - if (headObjectRequest.IsSetChecksumMode()) - request.Headers.Add(S3Constants.AmzHeaderChecksumMode, S3Transforms.ToStringValue(headObjectRequest.ChecksumMode)); - if (headObjectRequest.IsSetResponseCacheControl()) - request.Parameters.Add("response-cache-control", S3Transforms.ToStringValue(headObjectRequest.ResponseCacheControl)); - - if (headObjectRequest.IsSetResponseContentDisposition()) - request.Parameters.Add("response-content-disposition", S3Transforms.ToStringValue(headObjectRequest.ResponseContentDisposition)); - - if (headObjectRequest.IsSetResponseContentEncoding()) - request.Parameters.Add("response-content-encoding", S3Transforms.ToStringValue(headObjectRequest.ResponseContentEncoding)); - - if (headObjectRequest.IsSetResponseContentLanguage()) - request.Parameters.Add("response-content-language", S3Transforms.ToStringValue(headObjectRequest.ResponseContentLanguage)); - - if (headObjectRequest.IsSetResponseContentType()) - request.Parameters.Add("response-content-type", S3Transforms.ToStringValue(headObjectRequest.ResponseContentType)); - - if (headObjectRequest.IsSetResponseExpires()) - request.Parameters.Add("response-expires", S3Transforms.ToStringValue(headObjectRequest.ResponseExpires.Value)); - - if (string.IsNullOrEmpty(headObjectRequest.BucketName)) - throw new System.ArgumentException("BucketName is a required property and must be set before making this call.", "GetObjectMetadataRequest.BucketName"); - if (string.IsNullOrEmpty(headObjectRequest.Key)) - throw new System.ArgumentException("Key is a required property and must be set before making this call.", "GetObjectMetadataRequest.Key"); - - request.AddPathResource("{Key+}", S3Transforms.ToStringValue(headObjectRequest.Key)); - request.ResourcePath = "/{Key+}"; - - if (headObjectRequest.IsSetVersionId()) - request.AddSubResource("versionId", S3Transforms.ToStringValue(headObjectRequest.VersionId)); - if (headObjectRequest.IsSetPartNumber()) - request.AddSubResource("partNumber", S3Transforms.ToStringValue(headObjectRequest.PartNumber.Value)); - - request.UseQueryString = true; - - return request; } - - private static GetObjectMetadataRequestMarshaller _instance; - - /// - /// Singleton for marshaller - /// - public static GetObjectMetadataRequestMarshaller Instance - { - get - { - if (_instance == null) - { - _instance = new GetObjectMetadataRequestMarshaller(); - } - return _instance; - } - } } } diff --git a/sdk/src/Services/S3/Custom/Model/Internal/MarshallTransformations/GetObjectMetadataResponseUnmarshaller.cs b/sdk/src/Services/S3/Custom/Model/Internal/MarshallTransformations/GetObjectMetadataResponseUnmarshaller.cs index b3bea232b50d..567b3672ad06 100644 --- a/sdk/src/Services/S3/Custom/Model/Internal/MarshallTransformations/GetObjectMetadataResponseUnmarshaller.cs +++ b/sdk/src/Services/S3/Custom/Model/Internal/MarshallTransformations/GetObjectMetadataResponseUnmarshaller.cs @@ -29,36 +29,19 @@ namespace Amazon.S3.Model.Internal.MarshallTransformations /// /// Response Unmarshaller for GetObjectMetadata operation /// - public class GetObjectMetadataResponseUnmarshaller : S3ReponseUnmarshaller + public partial class GetObjectMetadataResponseUnmarshaller : S3ReponseUnmarshaller { - /// - /// Unmarshaller the response from the service to the response class. - /// - /// - /// - public override AmazonWebServiceResponse Unmarshall(XmlUnmarshallerContext context) - { - GetObjectMetadataResponse response = new GetObjectMetadataResponse(); - - UnmarshallResult(context,response); - - - return response; - } - - private static void UnmarshallResult(XmlUnmarshallerContext context,GetObjectMetadataResponse response) + partial void PostUnmarshallCustomization(XmlUnmarshallerContext context, GetObjectMetadataResponse response) { - - - IWebResponseData responseData = context.ResponseData; - if (responseData.IsHeaderPresent("x-amz-delete-marker")) - response.DeleteMarker = S3Transforms.ToString(responseData.GetHeaderValue("x-amz-delete-marker")); - if (responseData.IsHeaderPresent("accept-ranges")) - response.AcceptRanges = S3Transforms.ToString(responseData.GetHeaderValue("accept-ranges")); - if (context.ResponseData.IsHeaderPresent("content-range")) - response.ContentRange = S3Transforms.ToString(responseData.GetHeaderValue("content-range")); - if (responseData.IsHeaderPresent("x-amz-expiration")) - response.Expiration = new Expiration(responseData.GetHeaderValue("x-amz-expiration")); + var responseData = context.ResponseData; + foreach (var name in responseData.GetHeaderNames()) + { + if (name.StartsWith("x-amz-meta-", StringComparison.OrdinalIgnoreCase)) + { + response.Metadata[name] = AWSConfigsS3.EnableUnicodeEncodingForObjectMetadata + ? Uri.UnescapeDataString(responseData.GetHeaderValue(name)) : responseData.GetHeaderValue(name); + } + } if (responseData.IsHeaderPresent("x-amz-restore")) { bool restoreInProgress; @@ -68,94 +51,16 @@ private static void UnmarshallResult(XmlUnmarshallerContext context,GetObjectMet response.RestoreInProgress = restoreInProgress; response.RestoreExpiration = restoreExpiration; } - if (responseData.IsHeaderPresent("Last-Modified")) - response.LastModified = S3Transforms.ToDateTime(responseData.GetHeaderValue("Last-Modified")); - if (responseData.IsHeaderPresent("ETag")) - response.ETag = S3Transforms.ToString(responseData.GetHeaderValue("ETag")); - if (responseData.IsHeaderPresent("x-amz-missing-meta")) - response.MissingMeta = S3Transforms.ToInt(responseData.GetHeaderValue("x-amz-missing-meta")); - if (responseData.IsHeaderPresent("x-amz-version-id")) - response.VersionId = S3Transforms.ToString(responseData.GetHeaderValue("x-amz-version-id")); - if (responseData.IsHeaderPresent("Cache-Control")) - response.Headers.CacheControl = S3Transforms.ToString(responseData.GetHeaderValue("Cache-Control")); - if (responseData.IsHeaderPresent("Content-Disposition")) - response.Headers.ContentDisposition = S3Transforms.ToString(responseData.GetHeaderValue("Content-Disposition")); - if (responseData.IsHeaderPresent("Content-Encoding")) - response.Headers.ContentEncoding = S3Transforms.ToString(responseData.GetHeaderValue("Content-Encoding")); - if (responseData.IsHeaderPresent("Content-Length")) - response.Headers.ContentLength = long.Parse(responseData.GetHeaderValue("Content-Length"), CultureInfo.InvariantCulture); - if (responseData.IsHeaderPresent("Content-Type")) - response.Headers.ContentType = S3Transforms.ToString(responseData.GetHeaderValue("Content-Type")); + if (responseData.IsHeaderPresent("x-amz-expiration")) + response.Expiration = new Expiration(responseData.GetHeaderValue("x-amz-expiration")); + if (responseData.IsHeaderPresent("x-amz-delete-marker")) + response.DeleteMarker = S3Transforms.ToString(responseData.GetHeaderValue("x-amz-delete-marker")); if (responseData.IsHeaderPresent("Expires")) response.ExpiresString = S3Transforms.ToString(responseData.GetHeaderValue("Expires")); - if (responseData.IsHeaderPresent("x-amz-website-redirect-location")) - response.WebsiteRedirectLocation = S3Transforms.ToString(responseData.GetHeaderValue("x-amz-website-redirect-location")); - if (responseData.IsHeaderPresent("x-amz-server-side-encryption")) - response.ServerSideEncryptionMethod = S3Transforms.ToString(responseData.GetHeaderValue("x-amz-server-side-encryption")); if (responseData.IsHeaderPresent("x-amz-server-side-encryption-customer-algorithm")) response.ServerSideEncryptionCustomerMethod = ServerSideEncryptionCustomerMethod.FindValue(responseData.GetHeaderValue("x-amz-server-side-encryption-customer-algorithm")); - if (responseData.IsHeaderPresent(HeaderKeys.XAmzServerSideEncryptionAwsKmsKeyIdHeader)) - response.ServerSideEncryptionKeyManagementServiceKeyId = S3Transforms.ToString(responseData.GetHeaderValue(HeaderKeys.XAmzServerSideEncryptionAwsKmsKeyIdHeader)); - if (responseData.IsHeaderPresent("x-amz-replication-status")) - response.ReplicationStatus = S3Transforms.ToString(responseData.GetHeaderValue("x-amz-replication-status")); - if (responseData.IsHeaderPresent(S3Constants.AmzHeaderMultipartPartsCount)) - response.PartsCount = S3Transforms.ToInt(responseData.GetHeaderValue(S3Constants.AmzHeaderMultipartPartsCount)); - if (responseData.IsHeaderPresent(S3Constants.AmzHeaderTaggingCount)) - response.TagsCount = S3Transforms.ToInt(responseData.GetHeaderValue(S3Constants.AmzHeaderTaggingCount)); - if (responseData.IsHeaderPresent("x-amz-object-lock-mode")) - response.ObjectLockMode = S3Transforms.ToString(responseData.GetHeaderValue("x-amz-object-lock-mode")); - if (responseData.IsHeaderPresent("x-amz-object-lock-retain-until-date")) - response.ObjectLockRetainUntilDate = S3Transforms.ToDateTime(responseData.GetHeaderValue("x-amz-object-lock-retain-until-date")); - if (responseData.IsHeaderPresent("x-amz-object-lock-legal-hold")) - response.ObjectLockLegalHoldStatus = S3Transforms.ToString(responseData.GetHeaderValue("x-amz-object-lock-legal-hold")); - if (responseData.IsHeaderPresent(HeaderKeys.XAmzStorageClassHeader)) - response.StorageClass = S3Transforms.ToString(responseData.GetHeaderValue(HeaderKeys.XAmzStorageClassHeader)); - if (responseData.IsHeaderPresent(S3Constants.AmzHeaderRequestCharged)) - response.RequestCharged = RequestCharged.FindValue(responseData.GetHeaderValue(S3Constants.AmzHeaderRequestCharged)); - if (responseData.IsHeaderPresent(S3Constants.AmzHeaderArchiveStatus)) - response.ArchiveStatus = S3Transforms.ToString(responseData.GetHeaderValue(S3Constants.AmzHeaderArchiveStatus)); - if (responseData.IsHeaderPresent(S3Constants.AmzHeaderBucketKeyEnabled)) - response.BucketKeyEnabled = S3Transforms.ToBool(responseData.GetHeaderValue(S3Constants.AmzHeaderBucketKeyEnabled)); - if (responseData.IsHeaderPresent("x-amz-checksum-crc32")) - response.ChecksumCRC32 = S3Transforms.ToString(responseData.GetHeaderValue("x-amz-checksum-crc32")); - if (responseData.IsHeaderPresent("x-amz-checksum-crc32c")) - response.ChecksumCRC32C = S3Transforms.ToString(responseData.GetHeaderValue("x-amz-checksum-crc32c")); - if (responseData.IsHeaderPresent("x-amz-checksum-crc64nvme")) - response.ChecksumCRC64NVME = S3Transforms.ToString(responseData.GetHeaderValue("x-amz-checksum-crc64nvme")); - if (responseData.IsHeaderPresent("x-amz-checksum-sha1")) - response.ChecksumSHA1 = S3Transforms.ToString(responseData.GetHeaderValue("x-amz-checksum-sha1")); - if (responseData.IsHeaderPresent("x-amz-checksum-sha256")) - response.ChecksumSHA256 = S3Transforms.ToString(responseData.GetHeaderValue("x-amz-checksum-sha256")); - if (responseData.IsHeaderPresent(S3Constants.AmzHeaderChecksumType)) - response.ChecksumType = S3Transforms.ToString(responseData.GetHeaderValue(S3Constants.AmzHeaderChecksumType)); - - foreach (var name in responseData.GetHeaderNames()) - { - if (name.StartsWith("x-amz-meta-", StringComparison.OrdinalIgnoreCase)) - { - response.Metadata[name] = AWSConfigsS3.EnableUnicodeEncodingForObjectMetadata - ? Uri.UnescapeDataString(responseData.GetHeaderValue(name)) : responseData.GetHeaderValue(name); - } - } - - return; - } - - private static GetObjectMetadataResponseUnmarshaller _instance; - - /// - /// Singleton for the unmarshaller - /// - public static GetObjectMetadataResponseUnmarshaller Instance - { - get - { - if (_instance == null) - { - _instance = new GetObjectMetadataResponseUnmarshaller(); - } - return _instance; - } + if (responseData.IsHeaderPresent("x-amz-server-side-encryption")) + response.ServerSideEncryptionMethod = S3Transforms.ToString(responseData.GetHeaderValue("x-amz-server-side-encryption")); } } } diff --git a/sdk/src/Services/S3/Custom/Model/Internal/MarshallTransformations/ListObjectsV2RequestMarshaller.cs b/sdk/src/Services/S3/Custom/Model/Internal/MarshallTransformations/ListObjectsV2RequestMarshaller.cs deleted file mode 100644 index 8b803c1bff9b..000000000000 --- a/sdk/src/Services/S3/Custom/Model/Internal/MarshallTransformations/ListObjectsV2RequestMarshaller.cs +++ /dev/null @@ -1,93 +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.S3.Util; -using Amazon.Runtime.Internal; -using Amazon.Runtime.Internal.Transform; -using Amazon.Util; -#pragma warning disable 1591 - -namespace Amazon.S3.Model.Internal.MarshallTransformations -{ - /// - /// List Objects Request Marshaller - /// - public class ListObjectsV2RequestMarshaller : IMarshaller ,IMarshaller - { - public IRequest Marshall(Amazon.Runtime.AmazonWebServiceRequest input) - { - return this.Marshall((ListObjectsV2Request)input); - } - - public IRequest Marshall(ListObjectsV2Request listObjectsRequest) - { - IRequest request = new DefaultRequest(listObjectsRequest, "AmazonS3"); - - if (listObjectsRequest.IsSetRequestPayer()) - request.Headers.Add(S3Constants.AmzHeaderRequestPayer, S3Transforms.ToStringValue(listObjectsRequest.RequestPayer.ToString())); - - if (listObjectsRequest.IsSetExpectedBucketOwner()) - request.Headers.Add(S3Constants.AmzHeaderExpectedBucketOwner, S3Transforms.ToStringValue(listObjectsRequest.ExpectedBucketOwner)); - - if (listObjectsRequest.IsSetOptionalObjectAttributes()) - request.Headers.Add(S3Constants.AmzOptionalObjectAttributes, AWSSDKUtils.Join(listObjectsRequest.OptionalObjectAttributes)); - request.HttpMethod = "GET"; - - if (string.IsNullOrEmpty(listObjectsRequest.BucketName)) - throw new System.ArgumentException("BucketName is a required property and must be set before making this call.", "ListObjectsV2Request.BucketName"); - - request.ResourcePath = "/"; - - if (listObjectsRequest.IsSetDelimiter()) - request.Parameters.Add("delimiter", S3Transforms.ToStringValue(listObjectsRequest.Delimiter)); - if (listObjectsRequest.IsSetEncoding()) - request.Parameters.Add("encoding-type", S3Transforms.ToStringValue(listObjectsRequest.Encoding)); - if (listObjectsRequest.IsSetMaxKeys()) - request.Parameters.Add("max-keys", S3Transforms.ToStringValue(listObjectsRequest.MaxKeys.Value)); - if (listObjectsRequest.IsSetPrefix()) - request.Parameters.Add("prefix", S3Transforms.ToStringValue(listObjectsRequest.Prefix)); - if (listObjectsRequest.IsSetContinuationToken()) - request.Parameters.Add("continuation-token", S3Transforms.ToStringValue(listObjectsRequest.ContinuationToken)); - if (listObjectsRequest.IsSetFetchOwner()) - request.Parameters.Add("fetch-owner", S3Transforms.ToStringValue(listObjectsRequest.FetchOwner.Value)); - if (listObjectsRequest.IsSetStartAfter()) - request.Parameters.Add("start-after", S3Transforms.ToStringValue(listObjectsRequest.StartAfter)); - - request.Parameters.Add("list-type", "2"); - - request.UseQueryString = true; - - return request; - } - - private static ListObjectsV2RequestMarshaller _instance; - - /// - /// Singleton for marshaller - /// - public static ListObjectsV2RequestMarshaller Instance - { - get - { - if (_instance == null) - { - _instance = new ListObjectsV2RequestMarshaller(); - } - return _instance; - } - } - } -} - diff --git a/sdk/src/Services/S3/Custom/Model/Internal/MarshallTransformations/ListObjectsV2ResponseUnmarshaller.cs b/sdk/src/Services/S3/Custom/Model/Internal/MarshallTransformations/ListObjectsV2ResponseUnmarshaller.cs index eebeb7b82ede..70944ae89dcc 100644 --- a/sdk/src/Services/S3/Custom/Model/Internal/MarshallTransformations/ListObjectsV2ResponseUnmarshaller.cs +++ b/sdk/src/Services/S3/Custom/Model/Internal/MarshallTransformations/ListObjectsV2ResponseUnmarshaller.cs @@ -26,162 +26,21 @@ namespace Amazon.S3.Model.Internal.MarshallTransformations /// /// Response Unmarshaller for ListObjects operation /// - public class ListObjectsV2ResponseUnmarshaller : S3ReponseUnmarshaller + public partial class ListObjectsV2ResponseUnmarshaller : S3ReponseUnmarshaller { - /// - /// Unmarshaller the response from the service to the response class. - /// - /// - /// - public override AmazonWebServiceResponse Unmarshall(XmlUnmarshallerContext context) - { - ListObjectsV2Response response = new ListObjectsV2Response(); - - while (context.Read()) + //https://github.com/aws/aws-sdk-net/blob/79cbc392fc3f1c74fcdf34efd77ad681da8af328/sdk/src/Services/S3/Custom/Model/Internal/MarshallTransformations/ListObjectsV2ResponseUnmarshaller.cs#L75-L87 + private static void CustomContentsUnmarshall(XmlUnmarshallerContext context, ListObjectsV2Response response) + { + // adding the bucket name into the S3Object instance enables + // a better pipelining experience in PowerShell + if (response.S3Objects == null) { - if (context.IsStartElement) - { - UnmarshallResult(context,response); - continue; - } + response.S3Objects = new List(); } + var s3Object = S3ObjectUnmarshaller.Instance.Unmarshall(context); + s3Object.BucketName = response.Name; + response.S3Objects.Add(s3Object); - 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, ListObjectsV2Response 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("IsTruncated", targetDepth)) - { - response.IsTruncated = BoolUnmarshaller.GetInstance().Unmarshall(context); - - continue; - } - if (context.TestExpression("Contents", targetDepth)) - { - if (response.S3Objects == null) - { - response.S3Objects = new List(); - } - - // adding the bucket name into the S3Object instance enables - // a better pipelining experience in PowerShell - var s3Object = ContentsItemUnmarshaller.Instance.Unmarshall(context); - s3Object.BucketName = response.Name; - response.S3Objects.Add(s3Object); - continue; - } - if (context.TestExpression("Name", targetDepth)) - { - response.Name = StringUnmarshaller.GetInstance().Unmarshall(context); - - continue; - } - if (context.TestExpression("Prefix", targetDepth)) - { - response.Prefix = StringUnmarshaller.GetInstance().Unmarshall(context); - - continue; - } - if (context.TestExpression("Delimiter", targetDepth)) - { - response.Delimiter = StringUnmarshaller.GetInstance().Unmarshall(context); - - continue; - } - if (context.TestExpression("MaxKeys", targetDepth)) - { - response.MaxKeys = IntUnmarshaller.GetInstance().Unmarshall(context); - - continue; - } - if (context.TestExpression("CommonPrefixes", targetDepth)) - { - var prefix = CommonPrefixesItemUnmarshaller.Instance.Unmarshall(context); - - if(prefix != null) - { - if (response.CommonPrefixes == null) - { - response.CommonPrefixes = new List(); - } - response.CommonPrefixes.Add(prefix); - } - - continue; - } - if (context.TestExpression("EncodingType", targetDepth)) - { - response.Encoding = StringUnmarshaller.GetInstance().Unmarshall(context); - - continue; - } - if (context.TestExpression("KeyCount", targetDepth)) - { - response.KeyCount = IntUnmarshaller.GetInstance().Unmarshall(context); - - continue; - } - if (context.TestExpression("ContinuationToken", targetDepth)) - { - response.ContinuationToken = StringUnmarshaller.GetInstance().Unmarshall(context); - - continue; - } - if (context.TestExpression("NextContinuationToken", targetDepth)) - { - response.NextContinuationToken = StringUnmarshaller.GetInstance().Unmarshall(context); - - continue; - } - if (context.TestExpression("StartAfter", targetDepth)) - { - response.StartAfter = StringUnmarshaller.GetInstance().Unmarshall(context); - - continue; - } - } - else if (context.IsEndElement && context.CurrentDepth < originalDepth) - { - return; - } - } - - - - return; - } - - private static ListObjectsV2ResponseUnmarshaller _instance; - - /// - /// Singleton for the unmarshaller - /// - public static ListObjectsV2ResponseUnmarshaller Instance - { - get - { - if (_instance == null) - { - _instance = new ListObjectsV2ResponseUnmarshaller(); - } - return _instance; - } } } } diff --git a/sdk/src/Services/S3/Custom/Model/Internal/MarshallTransformations/ListVersionsRequestMarshaller.cs b/sdk/src/Services/S3/Custom/Model/Internal/MarshallTransformations/ListVersionsRequestMarshaller.cs deleted file mode 100644 index 608ae20407fa..000000000000 --- a/sdk/src/Services/S3/Custom/Model/Internal/MarshallTransformations/ListVersionsRequestMarshaller.cs +++ /dev/null @@ -1,91 +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 Amazon.Util; -#pragma warning disable 1591 - -namespace Amazon.S3.Model.Internal.MarshallTransformations -{ - /// - /// List Object Versions Request Marshaller - /// - public class ListVersionsRequestMarshaller : IMarshaller ,IMarshaller - { - public IRequest Marshall(Amazon.Runtime.AmazonWebServiceRequest input) - { - return this.Marshall((ListVersionsRequest)input); - } - - public IRequest Marshall(ListVersionsRequest listVersionsRequest) - { - IRequest request = new DefaultRequest(listVersionsRequest, "AmazonS3"); - - request.HttpMethod = "GET"; - - if (listVersionsRequest.IsSetExpectedBucketOwner()) - request.Headers.Add(S3Constants.AmzHeaderExpectedBucketOwner, S3Transforms.ToStringValue(listVersionsRequest.ExpectedBucketOwner)); - - if (string.IsNullOrEmpty(listVersionsRequest.BucketName)) - throw new System.ArgumentException("BucketName is a required property and must be set before making this call.", "ListVersionsRequest.BucketName"); - - if (listVersionsRequest.IsSetRequestPayer()) - request.Headers.Add(S3Constants.AmzHeaderRequestPayer, S3Transforms.ToStringValue(listVersionsRequest.RequestPayer)); - - if (listVersionsRequest.IsSetOptionalObjectAttributes()) - request.Headers.Add(S3Constants.AmzOptionalObjectAttributes, AWSSDKUtils.Join(listVersionsRequest.OptionalObjectAttributes)); - request.ResourcePath = "/"; - - request.AddSubResource("versions"); - - if (listVersionsRequest.IsSetDelimiter()) - request.Parameters.Add("delimiter", S3Transforms.ToStringValue(listVersionsRequest.Delimiter)); - if (listVersionsRequest.IsSetKeyMarker()) - request.Parameters.Add("key-marker", S3Transforms.ToStringValue(listVersionsRequest.KeyMarker)); - if (listVersionsRequest.IsSetMaxKeys()) - request.Parameters.Add("max-keys", S3Transforms.ToStringValue(listVersionsRequest.MaxKeys.Value)); - if (listVersionsRequest.IsSetPrefix()) - request.Parameters.Add("prefix", S3Transforms.ToStringValue(listVersionsRequest.Prefix)); - if (listVersionsRequest.IsSetVersionIdMarker()) - request.Parameters.Add("version-id-marker", S3Transforms.ToStringValue(listVersionsRequest.VersionIdMarker)); - if (listVersionsRequest.IsSetEncoding()) - request.Parameters.Add("encoding-type", S3Transforms.ToStringValue(listVersionsRequest.Encoding)); - - request.UseQueryString = true; - - return request; - } - - private static ListVersionsRequestMarshaller _instance; - - /// - /// Singleton for marshaller - /// - public static ListVersionsRequestMarshaller Instance - { - get - { - if (_instance == null) - { - _instance = new ListVersionsRequestMarshaller(); - } - return _instance; - } - } - } -} - diff --git a/sdk/src/Services/S3/Custom/Model/Internal/MarshallTransformations/ListVersionsResponseUnmarshaller.cs b/sdk/src/Services/S3/Custom/Model/Internal/MarshallTransformations/ListVersionsResponseUnmarshaller.cs index 5f78072fe5f5..68793dc9e8eb 100644 --- a/sdk/src/Services/S3/Custom/Model/Internal/MarshallTransformations/ListVersionsResponseUnmarshaller.cs +++ b/sdk/src/Services/S3/Custom/Model/Internal/MarshallTransformations/ListVersionsResponseUnmarshaller.cs @@ -12,175 +12,47 @@ * 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.Model; using Amazon.S3.Util; +using System; +using System.Collections.Generic; +using System.Net; namespace Amazon.S3.Model.Internal.MarshallTransformations { /// /// Response Unmarshaller for ListVersions operation /// - public class ListVersionsResponseUnmarshaller : S3ReponseUnmarshaller + public partial class ListVersionsResponseUnmarshaller : S3ReponseUnmarshaller { - /// - /// Unmarshaller the response from the service to the response class. - /// - /// - /// - public override AmazonWebServiceResponse Unmarshall(XmlUnmarshallerContext context) - { - ListVersionsResponse response = new ListVersionsResponse(); - - 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,ListVersionsResponse response) + // https://github.com/aws/aws-sdk-net/blob/79cbc392fc3f1c74fcdf34efd77ad681da8af328/sdk/src/Services/S3/Custom/Model/Internal/MarshallTransformations/ListVersionsResponseUnmarshaller.cs#L105-L115 + private static void DeleteItemCustomUnmarshall(XmlUnmarshallerContext context, ListVersionsResponse response) { - - int originalDepth = context.CurrentDepth; - int targetDepth = originalDepth + 1; - - if (context.IsStartOfDocument) - targetDepth += 2; - - while (context.Read()) + if (response.Versions == null) { - if (context.IsStartElement || context.IsAttribute) - { - if (context.TestExpression("IsTruncated", targetDepth)) - { - response.IsTruncated = BoolUnmarshaller.GetInstance().Unmarshall(context); - - continue; - } - if (context.TestExpression("KeyMarker", targetDepth)) - { - response.KeyMarker = StringUnmarshaller.GetInstance().Unmarshall(context); - - continue; - } - if (context.TestExpression("Delimiter", targetDepth)) - { - response.Delimiter = StringUnmarshaller.GetInstance().Unmarshall(context); - - continue; - } - if (context.TestExpression("VersionIdMarker", targetDepth)) - { - response.VersionIdMarker = StringUnmarshaller.GetInstance().Unmarshall(context); - - continue; - } - if (context.TestExpression("NextKeyMarker", targetDepth)) - { - response.NextKeyMarker = StringUnmarshaller.GetInstance().Unmarshall(context); - - continue; - } - if (context.TestExpression("NextVersionIdMarker", targetDepth)) - { - response.NextVersionIdMarker = StringUnmarshaller.GetInstance().Unmarshall(context); - - continue; - } - if (context.TestExpression("Version", targetDepth)) - { - if (response.Versions == null) - { - response.Versions = new List(); - } - - var version = VersionsItemUnmarshaller.Instance.Unmarshall(context); - version.BucketName = response.Name; - response.Versions.Add(version); - continue; - } - if (context.TestExpression("DeleteMarker", targetDepth)) - { - if (response.Versions == null) - { - response.Versions = new List(); - } - - var version = VersionsItemUnmarshaller.Instance.Unmarshall(context); - version.BucketName = response.Name; - version.IsDeleteMarker = true; - response.Versions.Add(version); - continue; - } - if (context.TestExpression("Name", targetDepth)) - { - response.Name = StringUnmarshaller.GetInstance().Unmarshall(context); - - continue; - } - if (context.TestExpression("Prefix", targetDepth)) - { - response.Prefix = StringUnmarshaller.GetInstance().Unmarshall(context); - - continue; - } - if (context.TestExpression("MaxKeys", targetDepth)) - { - response.MaxKeys = IntUnmarshaller.GetInstance().Unmarshall(context); - - continue; - } - if (context.TestExpression("CommonPrefixes", targetDepth)) - { - var prefix = CommonPrefixesItemUnmarshaller.Instance.Unmarshall(context); - - if (prefix != null) - response.CommonPrefixes.Add(prefix); - - continue; - } - } - else if (context.IsEndElement && context.CurrentDepth < originalDepth) - { - return; - } + response.Versions = new List(); } - - + var version = S3ObjectVersionUnmarshaller.Instance.Unmarshall(context); + version.BucketName = response.Name; + response.Versions.Add(version); return; } - - private static ListVersionsResponseUnmarshaller _instance; - - /// - /// Singleton for the unmarshaller - /// - public static ListVersionsResponseUnmarshaller Instance + // https://github.com/aws/aws-sdk-net/blob/79cbc392fc3f1c74fcdf34efd77ad681da8af328/sdk/src/Services/S3/Custom/Model/Internal/MarshallTransformations/ListVersionsResponseUnmarshaller.cs#L117-L128 + private static void VersionsItemCustomUnmarshall(XmlUnmarshallerContext context, ListVersionsResponse response) { - get + if (response.Versions == null) { - if (_instance == null) - { - _instance = new ListVersionsResponseUnmarshaller(); - } - return _instance; + response.Versions = new List(); } + + var version = S3ObjectVersionUnmarshaller.Instance.Unmarshall(context); + version.BucketName = response.Name; + response.Versions.Add(version); + return; } } diff --git a/sdk/src/Services/S3/Custom/Model/Internal/MarshallTransformations/PutCORSConfigurationRequestMarshaller.cs b/sdk/src/Services/S3/Custom/Model/Internal/MarshallTransformations/PutCORSConfigurationRequestMarshaller.cs deleted file mode 100644 index f16c57937197..000000000000 --- a/sdk/src/Services/S3/Custom/Model/Internal/MarshallTransformations/PutCORSConfigurationRequestMarshaller.cs +++ /dev/null @@ -1,191 +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.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 Amazon.Runtime.Internal.Util; - -#pragma warning disable 1591 - -namespace Amazon.S3.Model.Internal.MarshallTransformations -{ - /// - /// Put Bucket Cors Request Marshaller - /// - public class PutCORSConfigurationRequestMarshaller : IMarshaller ,IMarshaller - { - public IRequest Marshall(Amazon.Runtime.AmazonWebServiceRequest input) - { - return this.Marshall((PutCORSConfigurationRequest)input); - } - - public IRequest Marshall(PutCORSConfigurationRequest putCORSConfigurationRequest) - { - IRequest request = new DefaultRequest(putCORSConfigurationRequest, "AmazonS3"); - - request.HttpMethod = "PUT"; - - if (putCORSConfigurationRequest.IsSetChecksumAlgorithm()) - request.Headers.Add(S3Constants.AmzHeaderSdkChecksumAlgorithm, S3Transforms.ToStringValue(putCORSConfigurationRequest.ChecksumAlgorithm)); - - if (putCORSConfigurationRequest.IsSetExpectedBucketOwner()) - request.Headers.Add(S3Constants.AmzHeaderExpectedBucketOwner, S3Transforms.ToStringValue(putCORSConfigurationRequest.ExpectedBucketOwner)); - - if (string.IsNullOrEmpty(putCORSConfigurationRequest.BucketName)) - throw new System.ArgumentException("BucketName is a required property and must be set before making this call.", "PutCORSConfigurationRequest.BucketName"); - - request.ResourcePath = "/"; - - request.AddSubResource("cors"); - - var stringWriter = new XMLEncodedStringWriter(System.Globalization.CultureInfo.InvariantCulture); - using (var xmlWriter = XmlWriter.Create(stringWriter, new XmlWriterSettings() { Encoding = Encoding.UTF8, OmitXmlDeclaration = true, NewLineHandling = NewLineHandling.Entitize })) - { - var configuration = putCORSConfigurationRequest.Configuration; - if (configuration != null) - { - xmlWriter.WriteStartElement("CORSConfiguration", S3Constants.S3RequestXmlNamespace); - - if (configuration != null) - { - var cORSConfigurationCORSConfigurationcORSRulesList = configuration.Rules; - if (cORSConfigurationCORSConfigurationcORSRulesList != null && cORSConfigurationCORSConfigurationcORSRulesList.Count > 0) - { - foreach (var cORSConfigurationCORSConfigurationcORSRulesListValue in cORSConfigurationCORSConfigurationcORSRulesList) - { - xmlWriter.WriteStartElement("CORSRule"); - - if (cORSConfigurationCORSConfigurationcORSRulesListValue != null) - { - var cORSRuleMemberallowedMethodsList = cORSConfigurationCORSConfigurationcORSRulesListValue.AllowedMethods; - if (cORSRuleMemberallowedMethodsList != null && cORSRuleMemberallowedMethodsList.Count > 0) - { - foreach (string cORSRuleMemberallowedMethodsListValue in cORSRuleMemberallowedMethodsList) - { - xmlWriter.WriteStartElement("AllowedMethod"); - xmlWriter.WriteValue(cORSRuleMemberallowedMethodsListValue); - xmlWriter.WriteEndElement(); - } - } - } - - if (cORSConfigurationCORSConfigurationcORSRulesListValue != null) - { - var cORSRuleMemberallowedOriginsList = cORSConfigurationCORSConfigurationcORSRulesListValue.AllowedOrigins; - if (cORSRuleMemberallowedOriginsList != null && cORSRuleMemberallowedOriginsList.Count > 0) - { - foreach (string cORSRuleMemberallowedOriginsListValue in cORSRuleMemberallowedOriginsList) - { - xmlWriter.WriteStartElement("AllowedOrigin"); - xmlWriter.WriteValue(cORSRuleMemberallowedOriginsListValue); - xmlWriter.WriteEndElement(); - } - } - } - - if (cORSConfigurationCORSConfigurationcORSRulesListValue != null) - { - var cORSRuleMemberexposeHeadersList = cORSConfigurationCORSConfigurationcORSRulesListValue.ExposeHeaders; - if (cORSRuleMemberexposeHeadersList != null && cORSRuleMemberexposeHeadersList.Count > 0) - { - foreach (string cORSRuleMemberexposeHeadersListValue in cORSRuleMemberexposeHeadersList) - { - xmlWriter.WriteStartElement("ExposeHeader"); - xmlWriter.WriteValue(cORSRuleMemberexposeHeadersListValue); - xmlWriter.WriteEndElement(); - } - } - } - - if (cORSConfigurationCORSConfigurationcORSRulesListValue != null) - { - var cORSRuleMemberallowedHeadersList = cORSConfigurationCORSConfigurationcORSRulesListValue.AllowedHeaders; - if (cORSRuleMemberallowedHeadersList != null && cORSRuleMemberallowedHeadersList.Count > 0) - { - foreach (string cORSRuleMemberallowedHeadersListValue in cORSRuleMemberallowedHeadersList) - { - xmlWriter.WriteStartElement("AllowedHeader"); - xmlWriter.WriteValue(cORSRuleMemberallowedHeadersListValue); - xmlWriter.WriteEndElement(); - } - } - } - - if (cORSConfigurationCORSConfigurationcORSRulesListValue.IsSetMaxAgeSeconds()) - { - xmlWriter.WriteElementString("MaxAgeSeconds", S3Transforms.ToXmlStringValue(cORSConfigurationCORSConfigurationcORSRulesListValue.MaxAgeSeconds.Value)); - } - - if (cORSConfigurationCORSConfigurationcORSRulesListValue.IsSetId()) - { - xmlWriter.WriteElementString("ID", S3Transforms.ToXmlStringValue(cORSConfigurationCORSConfigurationcORSRulesListValue.Id)); - } - - xmlWriter.WriteEndElement(); - } - } - } - xmlWriter.WriteEndElement(); - } - } - - - try - { - var content = stringWriter.ToString(); - request.Content = Encoding.UTF8.GetBytes(content); - request.Headers[HeaderKeys.ContentTypeHeader] = "application/xml"; - - ChecksumUtils.SetChecksumData( - request, - putCORSConfigurationRequest.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 PutCORSConfigurationRequestMarshaller _instance; - - /// - /// Singleton for marshaller - /// - public static PutCORSConfigurationRequestMarshaller Instance - { - get - { - if (_instance == null) - { - _instance = new PutCORSConfigurationRequestMarshaller(); - } - return _instance; - } - } - } -} - diff --git a/sdk/src/Services/S3/Custom/Model/Internal/MarshallTransformations/PutCORSConfigurationResponseUnmarshaller.cs b/sdk/src/Services/S3/Custom/Model/Internal/MarshallTransformations/PutCORSConfigurationResponseUnmarshaller.cs deleted file mode 100644 index e18cd0932dee..000000000000 --- a/sdk/src/Services/S3/Custom/Model/Internal/MarshallTransformations/PutCORSConfigurationResponseUnmarshaller.cs +++ /dev/null @@ -1,62 +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 -{ - /// - /// Response Unmarshaller for PutCORSConfiguration operation - /// - public class PutCORSConfigurationResponseUnmarshaller : S3ReponseUnmarshaller - { - /// - /// Unmarshaller the response from the service to the response class. - /// - /// - /// - public override AmazonWebServiceResponse Unmarshall(XmlUnmarshallerContext context) - { - PutCORSConfigurationResponse response = new PutCORSConfigurationResponse(); - - - return response; - } - - private static PutCORSConfigurationResponseUnmarshaller _instance; - - /// - /// Singleton for the unmarshaller - /// - public static PutCORSConfigurationResponseUnmarshaller Instance - { - get - { - if (_instance == null) - { - _instance = new PutCORSConfigurationResponseUnmarshaller(); - } - return _instance; - } - } - - } -} - diff --git a/sdk/src/Services/S3/Custom/Model/ListVersionsResponse.cs b/sdk/src/Services/S3/Custom/Model/ListVersionsResponse.cs deleted file mode 100644 index 9d6cf4a3e769..000000000000 --- a/sdk/src/Services/S3/Custom/Model/ListVersionsResponse.cs +++ /dev/null @@ -1,251 +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 -{ - /// - /// Returns information about the ListVersions response and response metadata. - /// - public class ListVersionsResponse : AmazonWebServiceResponse - { - - private bool? isTruncated; - private string keyMarker; - private string versionIdMarker; - private string nextKeyMarker; - private string nextVersionIdMarker; - private List versions = AWSConfigs.InitializeCollections ? new List() : null; - private string name; - private string prefix; - private int? maxKeys; - private List commonPrefixes = AWSConfigs.InitializeCollections ? new List() : null; - private string delimiter; - private RequestCharged _requestCharged; - - /// - /// Gets and sets the property IsTruncated. - /// - /// A flag that indicates whether Amazon S3 returned all of the results that satisfied - /// the search criteria. If your results were truncated, you can make a follow-up paginated - /// request by using the NextKeyMarker and NextVersionIdMarker - /// response parameters as a starting place in another request to return the rest of the - /// results. - /// - /// - public bool? IsTruncated - { - get { return this.isTruncated; } - set { this.isTruncated = value; } - } - - // Check to see if IsTruncated property is set - internal bool IsSetIsTruncated() - { - return this.isTruncated.HasValue; - } - - /// - /// Marks the last Key returned in a truncated response. - /// - /// - public string KeyMarker - { - get { return this.keyMarker; } - set { this.keyMarker = value; } - } - - // Check to see if KeyMarker property is set - internal bool IsSetKeyMarker() - { - return this.keyMarker != null; - } - - /// - /// Gets and sets the VersionIdMarker property. - /// Marks the last Version-Id returned in a truncated response. - /// - public string VersionIdMarker - { - get { return this.versionIdMarker; } - set { this.versionIdMarker = value; } - } - - // Check to see if VersionIdMarker property is set - internal bool IsSetVersionIdMarker() - { - return this.versionIdMarker != null; - } - - /// - /// Use this value for the key marker request parameter in a subsequent request. - /// - /// - public string NextKeyMarker - { - get { return this.nextKeyMarker; } - set { this.nextKeyMarker = value; } - } - - // Check to see if NextKeyMarker property is set - internal bool IsSetNextKeyMarker() - { - return this.nextKeyMarker != null; - } - - /// - /// Gets and sets the property NextVersionIdMarker. - /// - /// When the number of responses exceeds the value of MaxKeys, NextVersionIdMarker - /// specifies the first object version not returned that satisfies the search criteria. - /// Use this value for the version-id-marker request parameter in a subsequent - /// request. - /// - /// - public string NextVersionIdMarker - { - get { return this.nextVersionIdMarker; } - set { this.nextVersionIdMarker = value; } - } - - // Check to see if NextVersionIdMarker property is set - internal bool IsSetNextVersionIdMarker() - { - return this.nextVersionIdMarker != null; - } - - /// - /// Gets and sets the Versions property. This is a list of - /// object versions in the bucket that match your search criteria. - /// - public List Versions - { - get { return this.versions; } - set { this.versions = value; } - } - - // Check to see if Versions property is set - internal bool IsSetVersions() - { - return this.versions != null && (this.versions.Count > 0 || !AWSConfigs.InitializeCollections); - } - - /// - /// The bucket name. - /// - public string Name - { - get { return this.name; } - set { this.name = value; } - } - - // Check to see if Name property is set - internal bool IsSetName() - { - return this.name != null; - } - - /// - /// Gets and sets the Prefix property. - /// Keys that begin with the indicated prefix are listed. - /// - public string Prefix - { - get { return this.prefix; } - set { this.prefix = value; } - } - - // Check to see if Prefix property is set - internal bool IsSetPrefix() - { - return this.prefix != null; - } - - /// - /// Gets and sets the property RequestCharged. - /// - public RequestCharged RequestCharged - { - get { return this._requestCharged; } - set { this._requestCharged = value; } - } - - // Check to see if RequestCharged property is set - internal bool IsSetRequestCharged() - { - return this._requestCharged != null; - } - - /// - /// Gets and sets the MaxKeys property. - /// This is the maximum number of keys in the S3ObjectVersions collection. - /// The value is derived from the MaxKeys parameter to ListVersionsRequest. - /// - public int? MaxKeys - { - get { return this.maxKeys; } - set { this.maxKeys = value; } - } - - // Check to see if MaxKeys property is set - internal bool IsSetMaxKeys() - { - return this.maxKeys.HasValue; - } - - /// - /// Gets the CommonPrefixes property. - /// A response can contain CommonPrefixes only if you specify a delimiter. - /// When you do, CommonPrefixes contains all (if there are any) keys between - /// Prefix and the next occurrence of the string specified by delimiter. - /// - public List CommonPrefixes - { - get { return this.commonPrefixes; } - set { this.commonPrefixes = value; } - } - - // Check to see if CommonPrefixes property is set - internal bool IsSetCommonPrefixes() - { - return this.commonPrefixes != null && (this.commonPrefixes.Count > 0 || !AWSConfigs.InitializeCollections); - } - - /// - /// Gets and sets the Delimiter property. - /// - /// The delimiter grouping the included keys. A delimiter is a character that you specify - /// to group keys. All keys that contain the same string between the prefix and the first - /// occurrence of the delimiter are grouped under a single result element in CommonPrefixes. - /// These groups are counted as one result against the max-keys limitation. - /// These keys are not returned elsewhere in the response. - /// - /// - /// - /// These rolled-up keys are not returned elsewhere in the response. - /// - public string Delimiter - { - get { return this.delimiter; } - set { this.delimiter = value; } - } - } -} - diff --git a/sdk/src/Services/S3/Custom/Model/S3AccessControlList.cs b/sdk/src/Services/S3/Custom/Model/S3AccessControlList.cs index 7d4cb73e4c1e..e38c9337b97c 100644 --- a/sdk/src/Services/S3/Custom/Model/S3AccessControlList.cs +++ b/sdk/src/Services/S3/Custom/Model/S3AccessControlList.cs @@ -39,10 +39,8 @@ namespace Amazon.S3.Model /// buckets as you will have no control over the objects others can store and their associated charges. /// For more information, see Grantees and Permissions
/// - public class S3AccessControlList + public partial class S3AccessControlList { - private List grantList = AWSConfigs.InitializeCollections ? new List() : null; - /// /// Creates a S3Grant and adds it to the list of grants. /// @@ -130,59 +128,12 @@ public void RemoveGrant(S3Grantee grantee) // this.Grants.Sort(new ComparatorGrant()); //} - /// - /// The owner of the bucket or object. - /// - /// - /// - /// Every bucket and object in Amazon S3 has an owner, the user that - /// created the bucket or object. The owner of a bucket or object cannot - /// be changed. However, if the object is overwritten by another user - /// (deleted and rewritten), the new object will have a new owner. - /// - /// - /// Note: Even the owner is subject to the ACL. For example, if an owner - /// does not have Permission.READ access to an object, the owner cannot read - /// that object. However, the owner of an object always has write access to the - /// access control policy (Permission.WriteAcp) and can change the ACL to - /// read the object. - /// - /// - public Owner Owner { get; set; } - - /// - /// Checks if Owner property is set. - /// - /// true if Owner property is set. - internal bool IsSetOwner() - { - return this.Owner != null; - } - - /// - /// A collection of grants. - /// - public List Grants - { - get { return this.grantList; } - set { this.grantList = value; } - } - - /// - /// Checks if Grants property is set. - /// - /// true if Grants property is set. - internal bool IsSetGrants() - { - return this.grantList != null && (this.grantList.Count > 0 || !AWSConfigs.InitializeCollections); - } - internal void Marshall(string memberName, XmlWriter xmlWriter) { xmlWriter.WriteStartElement(memberName); - if (grantList != null) + if (_grants != null) { - foreach (var grant in grantList) + foreach (var grant in _grants) { if (grant != null) { diff --git a/sdk/src/Services/S3/Custom/Model/S3Object.cs b/sdk/src/Services/S3/Custom/Model/S3Object.cs index a2e7ed3227f2..5f712675a391 100644 --- a/sdk/src/Services/S3/Custom/Model/S3Object.cs +++ b/sdk/src/Services/S3/Custom/Model/S3Object.cs @@ -25,78 +25,9 @@ namespace Amazon.S3.Model /// For more information about S3 Objects refer: /// ///
- public class S3Object + public partial class S3Object { - private List _checksumAlgorithm = AWSConfigs.InitializeCollections ? new List() : null; - private string eTag; - private string key; - private DateTime? lastModified; - private Owner owner; - private RestoreStatus _restoreStatus; - private long? size; - private S3StorageClass storageClass; private string bucketName; - private ChecksumType checksumType; - - /// - /// Gets and sets the property ChecksumAlgorithm. - /// - /// The algorithm that was used to create a checksum of the object. - /// - /// - public List ChecksumAlgorithm - { - get { return this._checksumAlgorithm; } - set { this._checksumAlgorithm = value; } - } - - // Check to see if ChecksumAlgorithm property is set - internal bool IsSetChecksumAlgorithm() - { - return this._checksumAlgorithm != null && (this._checksumAlgorithm.Count > 0 || !AWSConfigs.InitializeCollections); - } - - /// - /// Gets and sets the property ETag. - /// - /// The entity tag is a hash of the object. The ETag reflects changes only to the contents - /// of an object, not its metadata. The ETag may or may not be an MD5 digest of the object - /// data. Whether or not it is depends on how the object was created and how it is encrypted - /// as described below: - /// - ///
  • - /// - /// Objects created by the PUT Object, POST Object, or Copy operation, or through the - /// Amazon Web Services Management Console, and are encrypted by SSE-S3 or plaintext, - /// have ETags that are an MD5 digest of their object data. - /// - ///
  • - /// - /// Objects created by the PUT Object, POST Object, or Copy operation, or through the - /// Amazon Web Services Management Console, and are encrypted by SSE-C or SSE-KMS, have - /// ETags that are not an MD5 digest of their object data. - /// - ///
  • - /// - /// If an object is created by either the Multipart Upload or Part Copy operation, the - /// ETag is not an MD5 digest, regardless of the method of encryption. If an object is - /// larger than 16 MB, the Amazon Web Services Management Console will upload or copy - /// that object as a Multipart Upload, and therefore the ETag will not be an MD5 digest. - /// - ///
- ///
- public string ETag - { - get { return this.eTag; } - set { this.eTag = value; } - } - - // Check to see if ETag property is set - internal bool IsSetETag() - { - return this.eTag != null; - } - /// /// The name of the bucket containing this object. /// @@ -111,130 +42,5 @@ internal bool IsSetBucketName() { return this.bucketName != null; } - - /// - /// The key of the object. - /// - public string Key - { - get { return this.key; } - set { this.key = value; } - } - - // Check to see if Key property is set - internal bool IsSetKey() - { - return this.key != null; - } - - /// - /// Gets and sets the property LastModified. - /// - /// Date and time when the object was last modified. - /// - /// - /// The date retrieved from S3 is in ISO8601 format. A GMT formatted date is passed back to the user. - /// - /// - public DateTime? LastModified - { - get { return this.lastModified; } - set { this.lastModified = value; } - } - - // Check to see if LastModified property is set - internal bool IsSetLastModified() - { - return this.lastModified.HasValue; - } - - /// - /// The owner of the object. - /// - public Owner Owner - { - get { return this.owner; } - set { this.owner = value; } - } - - // Check to see if Owner property is set - internal bool IsSetOwner() - { - return this.owner != null; - } - - /// - /// Gets and sets the property RestoreStatus. - /// - /// Specifies the restoration status of an object. Objects in certain storage classes - /// must be restored before they can be retrieved. For more information about these storage - /// classes and how to work with archived objects, see - /// Working with archived objects in the Amazon S3 User Guide. - /// - /// - public RestoreStatus RestoreStatus - { - get { return this._restoreStatus; } - set { this._restoreStatus = value; } - } - - // Check to see if RestoreStatus property is set - internal bool IsSetRestoreStatus() - { - return this._restoreStatus != null; - } - /// - /// The size of the object. - /// - public long? Size - { - get { return this.size; } - set { this.size = value; } - } - - // Check to see if Size property is set - internal bool IsSetSize() - { - return this.size.HasValue; - } - - /// - /// The class of storage used to store the object. - /// - /// - public S3StorageClass StorageClass - { - get { return this.storageClass; } - set { this.storageClass = value; } - } - - // Check to see if StorageClass property is set - internal bool IsSetStorageClass() - { - return this.storageClass != null; - } - - /// - /// Gets and sets the property ChecksumType. - /// - /// The checksum type that is used to calculate the object's checksum value. - /// For more information, see - /// Checking object integrity in the Amazon S3 User Guide. - /// - /// - public ChecksumType ChecksumType - { - get { return this.checksumType; } - set { this.checksumType = value; } - } - - /// - /// Checks to see if ChecksumType is set. - /// - /// true, if ChecksumType property is set. - internal bool IsSetChecksumType() - { - return checksumType != null; - } } } diff --git a/sdk/src/Services/S3/Custom/Model/S3ObjectVersion.cs b/sdk/src/Services/S3/Custom/Model/S3ObjectVersion.cs index e4347e8c1b40..8695fdd0f93b 100644 --- a/sdk/src/Services/S3/Custom/Model/S3ObjectVersion.cs +++ b/sdk/src/Services/S3/Custom/Model/S3ObjectVersion.cs @@ -25,31 +25,9 @@ namespace Amazon.S3.Model /// that also has a version identifier, an indication of whether this is the latest version of the object /// and whether it's a DeleteMarker or not. ///
- public class S3ObjectVersion : S3Object + public partial class S3ObjectVersion : S3Object { - - private bool? isLatest; - private string versionId; private bool? isDeleteMarker; - - /// - /// Specifies whether the object is (true) or is not (false) the latest version of an object. - /// - public bool? IsLatest - { - get { return this.isLatest; } - set { this.isLatest = value; } - } - - /// - /// Version ID of an object. - /// - public string VersionId - { - get { return this.versionId; } - set { this.versionId = value; } - } - /// /// If true, the object is a delete marker for a deleted object. /// diff --git a/sdk/src/Services/S3/Generated/Model/CommonPrefix.cs b/sdk/src/Services/S3/Generated/Model/CommonPrefix.cs new file mode 100644 index 000000000000..8d67aa8bfbde --- /dev/null +++ b/sdk/src/Services/S3/Generated/Model/CommonPrefix.cs @@ -0,0 +1,61 @@ +/* + * 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 all (if there are any) keys between Prefix and the next occurrence of + /// the string specified by a delimiter. CommonPrefixes lists keys that act like subdirectories + /// in the directory specified by Prefix. For example, if the prefix is notes/ and the + /// delimiter is a slash (/) as in notes/summer/july, the common prefix is notes/summer/. + /// + public partial class CommonPrefix + { + private string _prefix; + + /// + /// Gets and sets the property Prefix. + /// + /// Container for the specified common prefix. + /// + /// + public string Prefix + { + get { return this._prefix; } + set { this._prefix = value; } + } + + // Check to see if Prefix property is set + internal bool IsSetPrefix() + { + return this._prefix != null; + } + + } +} \ No newline at end of file diff --git a/sdk/src/Services/S3/Generated/Model/DeleteMarkerEntry.cs b/sdk/src/Services/S3/Generated/Model/DeleteMarkerEntry.cs new file mode 100644 index 000000000000..3b28234dbf54 --- /dev/null +++ b/sdk/src/Services/S3/Generated/Model/DeleteMarkerEntry.cs @@ -0,0 +1,136 @@ +/* + * 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 +{ + /// + /// Information about the delete marker. + /// + public partial class DeleteMarkerEntry + { + private bool? _isLatest; + private string _key; + private DateTime? _lastModified; + private Owner _owner; + private string _versionId; + + /// + /// Gets and sets the property IsLatest. + /// + /// Specifies whether the object is (true) or is not (false) the latest version of an + /// object. + /// + /// + public bool? IsLatest + { + get { return this._isLatest; } + set { this._isLatest = value; } + } + + // Check to see if IsLatest property is set + internal bool IsSetIsLatest() + { + return this._isLatest.HasValue; + } + + /// + /// Gets and sets the property Key. + /// + /// The object key. + /// + /// + [AWSProperty(Min=1)] + public string Key + { + get { return this._key; } + set { this._key = value; } + } + + // Check to see if Key property is set + internal bool IsSetKey() + { + return this._key != null; + } + + /// + /// Gets and sets the property LastModified. + /// + /// Date and time when the object was last modified. + /// + /// + public DateTime? LastModified + { + get { return this._lastModified; } + set { this._lastModified = value; } + } + + // Check to see if LastModified property is set + internal bool IsSetLastModified() + { + return this._lastModified.HasValue; + } + + /// + /// Gets and sets the property Owner. + /// + /// The account that created the delete marker. + /// + /// + public Owner Owner + { + get { return this._owner; } + set { this._owner = value; } + } + + // Check to see if Owner property is set + internal bool IsSetOwner() + { + return this._owner != null; + } + + /// + /// Gets and sets the property VersionId. + /// + /// Version ID of an object. + /// + /// + public string VersionId + { + get { return this._versionId; } + set { this._versionId = value; } + } + + // Check to see if VersionId property is set + internal bool IsSetVersionId() + { + return this._versionId != null; + } + + } +} \ No newline at end of file diff --git a/sdk/src/Services/S3/Custom/Model/GetObjectACLRequest.cs b/sdk/src/Services/S3/Generated/Model/GetObjectAclRequest.cs similarity index 90% rename from sdk/src/Services/S3/Custom/Model/GetObjectACLRequest.cs rename to sdk/src/Services/S3/Generated/Model/GetObjectAclRequest.cs index 61072716ac8d..b5b82b967325 100644 --- a/sdk/src/Services/S3/Custom/Model/GetObjectACLRequest.cs +++ b/sdk/src/Services/S3/Generated/Model/GetObjectAclRequest.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,7 +13,9 @@ * 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; @@ -31,7 +33,7 @@ namespace Amazon.S3.Model /// Container for the parameters to the GetObjectAcl operation. /// /// - /// This operation is not supported by directory buckets. + /// This operation is not supported for directory buckets. /// /// /// @@ -99,9 +101,11 @@ public partial class GetObjectAclRequest : AmazonWebServiceRequest /// /// /// - /// Access points - When you use this action with an access point, you must provide - /// the alias of the access point in place of the bucket name or specify the access point - /// ARN. When using the access point ARN, you must direct requests to the access point + /// Access points - When you use this action with an access point for general + /// purpose buckets, you must provide the alias of the access point in place of the bucket + /// name or specify the access point ARN. When you use this action with an access point + /// for directory buckets, you must provide the access point name in place of the bucket + /// name. When using the access point ARN, you must direct requests to the access point /// hostname. The access point hostname takes the form AccessPointName-AccountId.s3-accesspoint.Region.amazonaws.com. /// When using this action with an access point through the Amazon Web Services SDKs, /// you provide the access point ARN in place of the bucket name. For more information @@ -138,7 +142,7 @@ public string ExpectedBucketOwner // Check to see if ExpectedBucketOwner property is set internal bool IsSetExpectedBucketOwner() { - return !string.IsNullOrEmpty(this._expectedBucketOwner); + return this._expectedBucketOwner != null; } /// @@ -147,7 +151,7 @@ internal bool IsSetExpectedBucketOwner() /// The key of the object for which to get the ACL information. /// /// - [AWSProperty(Required = true, Min = 1)] + [AWSProperty(Required=true, Min=1)] public string Key { get { return this._key; } @@ -172,7 +176,7 @@ public RequestPayer RequestPayer // Check to see if RequestPayer property is set internal bool IsSetRequestPayer() { - return !string.IsNullOrEmpty(this._requestPayer); + return this._requestPayer != null; } /// diff --git a/sdk/src/Services/S3/Custom/Model/GetObjectACLResponse.cs b/sdk/src/Services/S3/Generated/Model/GetObjectAclResponse.cs similarity index 78% rename from sdk/src/Services/S3/Custom/Model/GetObjectACLResponse.cs rename to sdk/src/Services/S3/Generated/Model/GetObjectAclResponse.cs index 716bb7b7eb60..dea605d226ff 100644 --- a/sdk/src/Services/S3/Custom/Model/GetObjectACLResponse.cs +++ b/sdk/src/Services/S3/Generated/Model/GetObjectAclResponse.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,6 +13,9 @@ * 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; @@ -40,6 +43,11 @@ public partial class GetObjectAclResponse : AmazonWebServiceResponse /// /// A list of grants. /// + /// + /// 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 Grants { @@ -50,7 +58,7 @@ public List Grants // Check to see if Grants property is set internal bool IsSetGrants() { - return this._grants != null && (this._grants.Count > 0 || !AWSConfigs.InitializeCollections); + return this._grants != null && (this._grants.Count > 0 || !AWSConfigs.InitializeCollections); } /// @@ -83,7 +91,7 @@ public RequestCharged RequestCharged // Check to see if RequestCharged property is set internal bool IsSetRequestCharged() { - return !string.IsNullOrEmpty(this._requestCharged); + return this._requestCharged != null; } } diff --git a/sdk/src/Services/S3/Generated/Model/GetObjectMetadataRequest.cs b/sdk/src/Services/S3/Generated/Model/GetObjectMetadataRequest.cs new file mode 100644 index 000000000000..0d36daa99e91 --- /dev/null +++ b/sdk/src/Services/S3/Generated/Model/GetObjectMetadataRequest.cs @@ -0,0 +1,688 @@ +/* + * 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 GetObjectMetadata operation. + /// The HEAD operation retrieves metadata from an object without returning the + /// object itself. This operation is useful if you're interested only in an object's metadata. + /// + /// + /// + /// A HEAD request has the same options as a GET operation on an object. + /// The response is identical to the GET response except that there is no response + /// body. Because of this, if the HEAD request generates an error, it returns a + /// generic code, such as 400 Bad Request, 403 Forbidden, 404 Not Found, + /// 405 Method Not Allowed, 412 Precondition Failed, or 304 Not Modified. + /// It's not possible to retrieve the exact exception of these error codes. + /// + /// + /// + /// Request headers are limited to 8 KB in size. For more information, see Common + /// Request Headers. + /// + ///
Permissions
  • + /// + /// General purpose bucket permissions - To use HEAD, you must have the + /// s3:GetObject permission. You need the relevant read object (or version) permission + /// for this operation. For more information, see Actions, + /// resources, and condition keys for Amazon S3 in the Amazon S3 User Guide. + /// For more information about the permissions to S3 API operations by S3 resource types, + /// see Required + /// permissions for Amazon S3 API operations in the Amazon S3 User Guide. + /// + /// + /// + /// If the object you request doesn't exist, the error that Amazon S3 returns depends + /// on whether you also have the s3:ListBucket permission. + /// + ///
    • + /// + /// If you have the s3:ListBucket permission on the bucket, Amazon S3 returns an + /// HTTP status code 404 Not Found error. + /// + ///
    • + /// + /// If you don’t have the s3:ListBucket permission, Amazon S3 returns an HTTP status + /// code 403 Forbidden error. + /// + ///
  • + /// + /// Directory bucket permissions - To grant access to this API operation on a + /// directory bucket, we recommend that you use the + /// CreateSession API operation for session-based authorization. Specifically, + /// you grant the s3express:CreateSession permission to the directory bucket in + /// a bucket policy or an IAM identity-based policy. Then, you make the CreateSession + /// API call on the bucket to obtain a session token. With the session token in your request + /// header, you can make API requests to this operation. After the session token expires, + /// you make another CreateSession API call to generate a new session token for + /// use. Amazon Web Services CLI or SDKs create session and refresh the session token + /// automatically to avoid service interruptions when a session expires. For more information + /// about authorization, see + /// CreateSession . + /// + /// + /// + /// If you enable x-amz-checksum-mode in the request and the object is encrypted + /// with Amazon Web Services Key Management Service (Amazon Web Services KMS), you must + /// also have the kms:GenerateDataKey and kms:Decrypt permissions in IAM + /// identity-based policies and KMS key policies for the KMS key to retrieve the checksum + /// of the object. + /// + ///
Encryption
+ /// + /// Encryption request headers, like x-amz-server-side-encryption, should not be + /// sent for HEAD requests if your object uses server-side encryption with Key + /// Management Service (KMS) keys (SSE-KMS), dual-layer server-side encryption with Amazon + /// Web Services KMS keys (DSSE-KMS), or server-side encryption with Amazon S3 managed + /// encryption keys (SSE-S3). The x-amz-server-side-encryption header is used when + /// you PUT an object to S3 and want to specify the encryption method. If you include + /// this header in a HEAD request for an object that uses these types of keys, + /// you’ll get an HTTP 400 Bad Request error. It's because the encryption method + /// can't be changed when you retrieve the object. + /// + /// + /// + /// If you encrypt an object by using server-side encryption with customer-provided encryption + /// keys (SSE-C) when you store the object in Amazon S3, then when you retrieve the metadata + /// from the object, you must use the following headers to provide the encryption key + /// for the server to be able to retrieve the object's metadata. The headers are: + /// + ///
  • + /// + /// x-amz-server-side-encryption-customer-algorithm + /// + ///
  • + /// + /// x-amz-server-side-encryption-customer-key + /// + ///
  • + /// + /// x-amz-server-side-encryption-customer-key-MD5 + /// + ///
+ /// + /// For more information about SSE-C, see Server-Side + /// Encryption (Using Customer-Provided Encryption Keys) in the Amazon S3 User + /// Guide. + /// + /// + /// + /// Directory bucket - For directory buckets, there are only two supported options + /// for server-side encryption: SSE-S3 and SSE-KMS. SSE-C isn't supported. For more information, + /// see Protecting + /// data with server-side encryption in the Amazon S3 User Guide. + /// + ///
Versioning
  • + /// + /// If the current version of the object is a delete marker, Amazon S3 behaves as if the + /// object was deleted and includes x-amz-delete-marker: true in the response. + /// + ///
  • + /// + /// If the specified version is a delete marker, the response returns a 405 Method + /// Not Allowed error and the Last-Modified: timestamp response header. + /// + ///
  • + /// + /// Directory buckets - Delete marker is not supported for directory buckets. + /// + ///
  • + /// + /// Directory buckets - S3 Versioning isn't enabled and supported for directory + /// buckets. For this API operation, only the null value of the version ID is supported + /// by directory buckets. You can only specify null to the versionId query + /// parameter in the request. + /// + ///
HTTP Host header syntax
+ /// + /// Directory buckets - The HTTP Host header syntax is Bucket-name.s3express-zone-id.region-code.amazonaws.com. + /// + /// + /// + /// For directory buckets, you must make requests for this API operation to the Zonal + /// endpoint. These endpoints support virtual-hosted-style requests in the format https://amzn-s3-demo-bucket.s3express-zone-id.region-code.amazonaws.com/key-name + /// . Path-style requests are not 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. + /// + ///
+ /// + /// The following actions are related to HeadObject: + /// + /// + ///
+ public partial class GetObjectMetadataRequest : AmazonWebServiceRequest + { + private string _bucketName; + private ChecksumMode _checksumMode; + private string _etagToMatch; + private string _etagToNotMatch; + private string _expectedBucketOwner; + private string _key; + private int? _partNumber; + private string _range; + private RequestPayer _requestPayer; + private string _responseCacheControl; + private string _responseContentDisposition; + private string _responseContentEncoding; + private string _responseContentLanguage; + private string _responseContentType; + private DateTime? _responseExpires; + private ServerSideEncryptionCustomerMethod _serverSideEncryptionCustomerMethod; + private string _serverSideEncryptionCustomerProvidedKey; + private string _serverSideEncryptionCustomerProvidedKeyMD5; + private string _versionId; + + /// + /// Gets and sets the property BucketName. + /// + /// The name of the bucket that contains the object. + /// + /// + /// + /// Directory buckets - When you use this operation with a directory bucket, you + /// must use virtual-hosted-style requests in the format Bucket-name.s3express-zone-id.region-code.amazonaws.com. + /// Path-style requests are not supported. Directory bucket names must be unique in the + /// chosen Zone (Availability Zone or Local Zone). Bucket names must follow the format + /// bucket-base-name--zone-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. + /// + /// + /// + /// Access points - When you use this action with an access point for general + /// purpose buckets, you must provide the alias of the access point in place of the bucket + /// name or specify the access point ARN. When you use this action with an access point + /// for directory buckets, you must provide the access point name in place of the bucket + /// name. When using the access point ARN, you must direct requests to the access point + /// hostname. The access point hostname takes the form AccessPointName-AccountId.s3-accesspoint.Region.amazonaws.com. + /// When using this action with an access point through the Amazon Web Services SDKs, + /// you provide the access point ARN in place of the bucket name. For more information + /// about access point ARNs, see Using + /// access points in the Amazon S3 User Guide. + /// + /// + /// + /// Object Lambda access points are not supported by directory buckets. + /// + /// + /// + /// S3 on Outposts - When you use this action with S3 on Outposts, you must direct + /// requests to the S3 on Outposts hostname. The S3 on Outposts hostname takes the form + /// AccessPointName-AccountId.outpostID.s3-outposts.Region.amazonaws.com. + /// When you use this action with S3 on Outposts, the destination bucket must be the Outposts + /// access point ARN or the access point alias. For more information about S3 on Outposts, + /// see What + /// is S3 on Outposts? 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 ChecksumMode. + /// + /// To retrieve the checksum, this parameter must be enabled. + /// + /// + /// + /// General purpose buckets - If you enable checksum mode and the object is uploaded + /// with a checksum + /// and encrypted with an Key Management Service (KMS) key, you must have permission to + /// use the kms:Decrypt action to retrieve the checksum. + /// + /// + /// + /// Directory buckets - If you enable ChecksumMode and the object is encrypted + /// with Amazon Web Services Key Management Service (Amazon Web Services KMS), you must + /// also have the kms:GenerateDataKey and kms:Decrypt permissions in IAM + /// identity-based policies and KMS key policies for the KMS key to retrieve the checksum + /// of the object. + /// + /// + public ChecksumMode ChecksumMode + { + get { return this._checksumMode; } + set { this._checksumMode = value; } + } + + // Check to see if ChecksumMode property is set + internal bool IsSetChecksumMode() + { + return this._checksumMode != null; + } + + /// + /// Gets and sets the property EtagToMatch. + /// + /// Return the object only if its entity tag (ETag) is the same as the one specified; + /// otherwise, return a 412 (precondition failed) error. + /// + /// + /// + /// If both of the If-Match and If-Unmodified-Since headers are present + /// in the request as follows: + /// + ///
  • + /// + /// If-Match condition evaluates to true, and; + /// + ///
  • + /// + /// If-Unmodified-Since condition evaluates to false; + /// + ///
+ /// + /// Then Amazon S3 returns 200 OK and the data requested. + /// + /// + /// + /// For more information about conditional requests, see RFC + /// 7232. + /// + ///
+ public string EtagToMatch + { + get { return this._etagToMatch; } + set { this._etagToMatch = value; } + } + + // Check to see if EtagToMatch property is set + internal bool IsSetEtagToMatch() + { + return this._etagToMatch != null; + } + + /// + /// Gets and sets the property EtagToNotMatch. + /// + /// Return the object only if its entity tag (ETag) is different from the one specified; + /// otherwise, return a 304 (not modified) error. + /// + /// + /// + /// If both of the If-None-Match and If-Modified-Since headers are present + /// in the request as follows: + /// + ///
  • + /// + /// If-None-Match condition evaluates to false, and; + /// + ///
  • + /// + /// If-Modified-Since condition evaluates to true; + /// + ///
+ /// + /// Then Amazon S3 returns the 304 Not Modified response code. + /// + /// + /// + /// For more information about conditional requests, see RFC + /// 7232. + /// + ///
+ public string EtagToNotMatch + { + get { return this._etagToNotMatch; } + set { this._etagToNotMatch = value; } + } + + // Check to see if EtagToNotMatch property is set + internal bool IsSetEtagToNotMatch() + { + return this._etagToNotMatch != 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). + /// + /// + 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 Key. + /// + /// The object key. + /// + /// + [AWSProperty(Required=true, Min=1)] + public string Key + { + get { return this._key; } + set { this._key = value; } + } + + // Check to see if Key property is set + internal bool IsSetKey() + { + return this._key != null; + } + + /// + /// Gets and sets the property PartNumber. + /// + /// Part number of the object being read. This is a positive integer between 1 and 10,000. + /// Effectively performs a 'ranged' HEAD request for the part specified. Useful querying + /// about the size of the part and the number of parts in this object. + /// + /// + public int? PartNumber + { + get { return this._partNumber; } + set { this._partNumber = value; } + } + + // Check to see if PartNumber property is set + internal bool IsSetPartNumber() + { + return this._partNumber.HasValue; + } + + /// + /// Gets and sets the property Range. + /// + /// HeadObject returns only the metadata for an object. If the Range is satisfiable, only + /// the ContentLength is affected in the response. If the Range is not satisfiable, + /// S3 returns a 416 - Requested Range Not Satisfiable error. + /// + /// + public string Range + { + get { return this._range; } + set { this._range = value; } + } + + // Check to see if Range property is set + internal bool IsSetRange() + { + return this._range != null; + } + + /// + /// Gets and sets the property RequestPayer. + /// + public RequestPayer RequestPayer + { + get { return this._requestPayer; } + set { this._requestPayer = value; } + } + + // Check to see if RequestPayer property is set + internal bool IsSetRequestPayer() + { + return this._requestPayer != null; + } + + /// + /// Gets and sets the property ResponseCacheControl. + /// + /// Sets the Cache-Control header of the response. + /// + /// + public string ResponseCacheControl + { + get { return this._responseCacheControl; } + set { this._responseCacheControl = value; } + } + + // Check to see if ResponseCacheControl property is set + internal bool IsSetResponseCacheControl() + { + return this._responseCacheControl != null; + } + + /// + /// Gets and sets the property ResponseContentDisposition. + /// + /// Sets the Content-Disposition header of the response. + /// + /// + public string ResponseContentDisposition + { + get { return this._responseContentDisposition; } + set { this._responseContentDisposition = value; } + } + + // Check to see if ResponseContentDisposition property is set + internal bool IsSetResponseContentDisposition() + { + return this._responseContentDisposition != null; + } + + /// + /// Gets and sets the property ResponseContentEncoding. + /// + /// Sets the Content-Encoding header of the response. + /// + /// + public string ResponseContentEncoding + { + get { return this._responseContentEncoding; } + set { this._responseContentEncoding = value; } + } + + // Check to see if ResponseContentEncoding property is set + internal bool IsSetResponseContentEncoding() + { + return this._responseContentEncoding != null; + } + + /// + /// Gets and sets the property ResponseContentLanguage. + /// + /// Sets the Content-Language header of the response. + /// + /// + public string ResponseContentLanguage + { + get { return this._responseContentLanguage; } + set { this._responseContentLanguage = value; } + } + + // Check to see if ResponseContentLanguage property is set + internal bool IsSetResponseContentLanguage() + { + return this._responseContentLanguage != null; + } + + /// + /// Gets and sets the property ResponseContentType. + /// + /// Sets the Content-Type header of the response. + /// + /// + public string ResponseContentType + { + get { return this._responseContentType; } + set { this._responseContentType = value; } + } + + // Check to see if ResponseContentType property is set + internal bool IsSetResponseContentType() + { + return this._responseContentType != null; + } + + /// + /// Gets and sets the property ResponseExpires. + /// + /// Sets the Expires header of the response. + /// + /// + public DateTime? ResponseExpires + { + get { return this._responseExpires; } + set { this._responseExpires = value; } + } + + // Check to see if ResponseExpires property is set + internal bool IsSetResponseExpires() + { + return this._responseExpires.HasValue; + } + + /// + /// Gets and sets the property ServerSideEncryptionCustomerMethod. + /// + /// Specifies the algorithm to use when encrypting the object (for example, AES256). + /// + /// + /// + /// This functionality is not supported for directory buckets. + /// + /// + /// + public ServerSideEncryptionCustomerMethod ServerSideEncryptionCustomerMethod + { + get { return this._serverSideEncryptionCustomerMethod; } + set { this._serverSideEncryptionCustomerMethod = value; } + } + + // Check to see if ServerSideEncryptionCustomerMethod property is set + internal bool IsSetServerSideEncryptionCustomerMethod() + { + return this._serverSideEncryptionCustomerMethod != null; + } + + /// + /// Gets and sets the property ServerSideEncryptionCustomerProvidedKey. + /// + /// Specifies the customer-provided encryption key for Amazon S3 to use in encrypting + /// data. This value is used to store the object and then it is discarded; Amazon S3 does + /// not store the encryption key. The key must be appropriate for use with the algorithm + /// specified in the x-amz-server-side-encryption-customer-algorithm header. + /// + /// + /// + /// This functionality is not supported for directory buckets. + /// + /// + /// + [AWSProperty(Sensitive=true)] + public string ServerSideEncryptionCustomerProvidedKey + { + get { return this._serverSideEncryptionCustomerProvidedKey; } + set { this._serverSideEncryptionCustomerProvidedKey = value; } + } + + // Check to see if ServerSideEncryptionCustomerProvidedKey property is set + internal bool IsSetServerSideEncryptionCustomerProvidedKey() + { + return this._serverSideEncryptionCustomerProvidedKey != null; + } + + /// + /// Gets and sets the property ServerSideEncryptionCustomerProvidedKeyMD5. + /// + /// Specifies the 128-bit MD5 digest of the encryption key according to RFC 1321. Amazon + /// S3 uses this header for a message integrity check to ensure that the encryption key + /// was transmitted without error. + /// + /// + /// + /// This functionality is not supported for directory buckets. + /// + /// + /// + public string ServerSideEncryptionCustomerProvidedKeyMD5 + { + get { return this._serverSideEncryptionCustomerProvidedKeyMD5; } + set { this._serverSideEncryptionCustomerProvidedKeyMD5 = value; } + } + + // Check to see if ServerSideEncryptionCustomerProvidedKeyMD5 property is set + internal bool IsSetServerSideEncryptionCustomerProvidedKeyMD5() + { + return this._serverSideEncryptionCustomerProvidedKeyMD5 != null; + } + + /// + /// Gets and sets the property VersionId. + /// + /// Version ID used to reference a specific version of the object. + /// + /// + /// + /// For directory buckets in this API operation, only the null value of the version + /// ID is supported. + /// + /// + /// + public string VersionId + { + get { return this._versionId; } + set { this._versionId = value; } + } + + // Check to see if VersionId property is set + internal bool IsSetVersionId() + { + return this._versionId != null; + } + + } +} \ No newline at end of file diff --git a/sdk/src/Services/S3/Generated/Model/GetObjectMetadataResponse.cs b/sdk/src/Services/S3/Generated/Model/GetObjectMetadataResponse.cs new file mode 100644 index 000000000000..15a789e27871 --- /dev/null +++ b/sdk/src/Services/S3/Generated/Model/GetObjectMetadataResponse.cs @@ -0,0 +1,796 @@ +/* + * 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 +{ + /// + /// This is the response object from the GetObjectMetadata operation. + /// + public partial class GetObjectMetadataResponse : AmazonWebServiceResponse + { + private string _acceptRanges; + private ArchiveStatus _archiveStatus; + private bool? _bucketKeyEnabled; + private string _cacheControl; + private string _checksumCRC32; + private string _checksumCRC32C; + private string _checksumCRC64NVME; + private string _checksumSHA1; + private string _checksumSHA256; + private ChecksumType _checksumType; + private string _contentDisposition; + private string _contentEncoding; + private string _contentLanguage; + private string _contentRange; + private string _contentType; + private string _eTag; + private Expiration _expiration; + private DateTime? _lastModified; + private int? _missingMeta; + private ObjectLockLegalHoldStatus _objectLockLegalHoldStatus; + private ObjectLockMode _objectLockMode; + private DateTime? _objectLockRetainUntilDate; + private int? _partsCount; + private ReplicationStatus _replicationStatus; + private RequestCharged _requestCharged; + private string _serverSideEncryptionCustomerProvidedKeyMD5; + private string _serverSideEncryptionKeyManagementServiceKeyId; + private S3StorageClass _storageClass; + private int? _tagsCount; + private string _versionId; + private string _websiteRedirectLocation; + + /// + /// Gets and sets the property AcceptRanges. + /// + /// Indicates that a range of bytes was specified. + /// + /// + public string AcceptRanges + { + get { return this._acceptRanges; } + set { this._acceptRanges = value; } + } + + // Check to see if AcceptRanges property is set + internal bool IsSetAcceptRanges() + { + return this._acceptRanges != null; + } + + /// + /// Gets and sets the property ArchiveStatus. + /// + /// The archive state of the head object. + /// + /// + /// + /// This functionality is not supported for directory buckets. + /// + /// + /// + public ArchiveStatus ArchiveStatus + { + get { return this._archiveStatus; } + set { this._archiveStatus = value; } + } + + // Check to see if ArchiveStatus property is set + internal bool IsSetArchiveStatus() + { + return this._archiveStatus != null; + } + + /// + /// Gets and sets the property BucketKeyEnabled. + /// + /// Indicates whether the object uses an S3 Bucket Key for server-side encryption with + /// Key Management Service (KMS) keys (SSE-KMS). + /// + /// + 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 CacheControl. + /// + /// Specifies caching behavior along the request/reply chain. + /// + /// + public string CacheControl + { + get { return this._cacheControl; } + set { this._cacheControl = value; } + } + + // Check to see if CacheControl property is set + internal bool IsSetCacheControl() + { + return this._cacheControl != null; + } + + /// + /// Gets and sets the property ChecksumCRC32. + /// + /// The Base64 encoded, 32-bit CRC32 checksum of the object. This checksum is only + /// be present if the checksum was uploaded with the object. When you use an API operation + /// on an object that was uploaded using multipart uploads, this value may not be a direct + /// checksum value of the full object. Instead, it's a calculation based on the checksum + /// values of each individual part. For more information about how checksums are calculated + /// with multipart uploads, see + /// Checking object integrity in the Amazon S3 User Guide. + /// + /// + public string ChecksumCRC32 + { + get { return this._checksumCRC32; } + set { this._checksumCRC32 = value; } + } + + // Check to see if ChecksumCRC32 property is set + internal bool IsSetChecksumCRC32() + { + return this._checksumCRC32 != null; + } + + /// + /// Gets and sets the property ChecksumCRC32C. + /// + /// The Base64 encoded, 32-bit CRC32C checksum of the object. This checksum is + /// only present if the checksum was uploaded with the object. When you use an API operation + /// on an object that was uploaded using multipart uploads, this value may not be a direct + /// checksum value of the full object. Instead, it's a calculation based on the checksum + /// values of each individual part. For more information about how checksums are calculated + /// with multipart uploads, see + /// Checking object integrity in the Amazon S3 User Guide. + /// + /// + public string ChecksumCRC32C + { + get { return this._checksumCRC32C; } + set { this._checksumCRC32C = value; } + } + + // Check to see if ChecksumCRC32C property is set + internal bool IsSetChecksumCRC32C() + { + return this._checksumCRC32C != null; + } + + /// + /// Gets and sets the property ChecksumCRC64NVME. + /// + /// The Base64 encoded, 64-bit CRC64NVME checksum of the object. For more information, + /// see Checking + /// object integrity in the Amazon S3 User Guide. + /// + /// + public string ChecksumCRC64NVME + { + get { return this._checksumCRC64NVME; } + set { this._checksumCRC64NVME = value; } + } + + // Check to see if ChecksumCRC64NVME property is set + internal bool IsSetChecksumCRC64NVME() + { + return this._checksumCRC64NVME != null; + } + + /// + /// Gets and sets the property ChecksumSHA1. + /// + /// The Base64 encoded, 160-bit SHA1 digest of the object. This will only be present + /// if the object was uploaded with the object. When you use the API operation on an object + /// that was uploaded using multipart uploads, this value may not be a direct checksum + /// value of the full object. Instead, it's a calculation based on the checksum values + /// of each individual part. For more information about how checksums are calculated with + /// multipart uploads, see + /// Checking object integrity in the Amazon S3 User Guide. + /// + /// + public string ChecksumSHA1 + { + get { return this._checksumSHA1; } + set { this._checksumSHA1 = value; } + } + + // Check to see if ChecksumSHA1 property is set + internal bool IsSetChecksumSHA1() + { + return this._checksumSHA1 != null; + } + + /// + /// Gets and sets the property ChecksumSHA256. + /// + /// The Base64 encoded, 256-bit SHA256 digest of the object. This will only be + /// present if the object was uploaded with the object. When you use an API operation + /// on an object that was uploaded using multipart uploads, this value may not be a direct + /// checksum value of the full object. Instead, it's a calculation based on the checksum + /// values of each individual part. For more information about how checksums are calculated + /// with multipart uploads, see + /// Checking object integrity in the Amazon S3 User Guide. + /// + /// + public string ChecksumSHA256 + { + get { return this._checksumSHA256; } + set { this._checksumSHA256 = value; } + } + + // Check to see if ChecksumSHA256 property is set + internal bool IsSetChecksumSHA256() + { + return this._checksumSHA256 != null; + } + + /// + /// Gets and sets the property ChecksumType. + /// + /// The checksum type, which determines how part-level checksums are combined to create + /// an object-level checksum for multipart objects. You can use this header response to + /// verify that the checksum type that is received is the same checksum type that was + /// specified in CreateMultipartUpload request. For more information, see Checking + /// object integrity in the Amazon S3 User Guide. + /// + /// + public ChecksumType ChecksumType + { + get { return this._checksumType; } + set { this._checksumType = value; } + } + + // Check to see if ChecksumType property is set + internal bool IsSetChecksumType() + { + return this._checksumType != null; + } + + /// + /// Gets and sets the property ContentDisposition. + /// + /// Specifies presentational information for the object. + /// + /// + public string ContentDisposition + { + get { return this._contentDisposition; } + set { this._contentDisposition = value; } + } + + // Check to see if ContentDisposition property is set + internal bool IsSetContentDisposition() + { + return this._contentDisposition != null; + } + + /// + /// Gets and sets the property ContentEncoding. + /// + /// Indicates what content encodings have been applied to the object and thus what decoding + /// mechanisms must be applied to obtain the media-type referenced by the Content-Type + /// header field. + /// + /// + public string ContentEncoding + { + get { return this._contentEncoding; } + set { this._contentEncoding = value; } + } + + // Check to see if ContentEncoding property is set + internal bool IsSetContentEncoding() + { + return this._contentEncoding != null; + } + + /// + /// Gets and sets the property ContentLanguage. + /// + /// The language the content is in. + /// + /// + public string ContentLanguage + { + get { return this._contentLanguage; } + set { this._contentLanguage = value; } + } + + // Check to see if ContentLanguage property is set + internal bool IsSetContentLanguage() + { + return this._contentLanguage != null; + } + + /// + /// Gets and sets the property ContentRange. + /// + /// The portion of the object returned in the response for a GET request. + /// + /// + public string ContentRange + { + get { return this._contentRange; } + set { this._contentRange = value; } + } + + // Check to see if ContentRange property is set + internal bool IsSetContentRange() + { + return this._contentRange != null; + } + + /// + /// Gets and sets the property ContentType. + /// + /// A standard MIME type describing the format of the object data. + /// + /// + public string ContentType + { + get { return this._contentType; } + set { this._contentType = value; } + } + + // Check to see if ContentType property is set + internal bool IsSetContentType() + { + return this._contentType != null; + } + + /// + /// Gets and sets the property ETag. + /// + /// An entity tag (ETag) is an opaque identifier assigned by a web server to a specific + /// version of a resource found at a URL. + /// + /// + public string ETag + { + get { return this._eTag; } + set { this._eTag = value; } + } + + // Check to see if ETag property is set + internal bool IsSetETag() + { + return this._eTag != null; + } + + /// + /// Gets and sets the property Expiration. + /// + /// If the object expiration is configured (see + /// PutBucketLifecycleConfiguration ), the response includes this header. It + /// includes the expiry-date and rule-id key-value pairs providing object + /// expiration information. The value of the rule-id is URL-encoded. + /// + /// + /// + /// Object expiration information is not returned in directory buckets and this header + /// returns the value "NotImplemented" in all responses for directory buckets. + /// + /// + /// + public Expiration Expiration + { + get { return this._expiration; } + set { this._expiration = value; } + } + + // Check to see if Expiration property is set + internal bool IsSetExpiration() + { + return this._expiration != null; + } + + /// + /// Gets and sets the property LastModified. + /// + /// Date and time when the object was last modified. + /// + /// + public DateTime? LastModified + { + get { return this._lastModified; } + set { this._lastModified = value; } + } + + // Check to see if LastModified property is set + internal bool IsSetLastModified() + { + return this._lastModified.HasValue; + } + + /// + /// Gets and sets the property MissingMeta. + /// + /// This is set to the number of metadata entries not returned in x-amz-meta headers. + /// This can happen if you create metadata using an API like SOAP that supports more flexible + /// metadata than the REST API. For example, using SOAP, you can create metadata whose + /// values are not legal HTTP headers. + /// + /// + /// + /// This functionality is not supported for directory buckets. + /// + /// + /// + public int? MissingMeta + { + get { return this._missingMeta; } + set { this._missingMeta = value; } + } + + // Check to see if MissingMeta property is set + internal bool IsSetMissingMeta() + { + return this._missingMeta.HasValue; + } + + /// + /// Gets and sets the property ObjectLockLegalHoldStatus. + /// + /// Specifies whether a legal hold is in effect for this object. This header is only returned + /// if the requester has the s3:GetObjectLegalHold permission. This header is not + /// returned if the specified version of this object has never had a legal hold applied. + /// For more information about S3 Object Lock, see Object + /// Lock. + /// + /// + /// + /// This functionality is not supported for directory buckets. + /// + /// + /// + public ObjectLockLegalHoldStatus ObjectLockLegalHoldStatus + { + get { return this._objectLockLegalHoldStatus; } + set { this._objectLockLegalHoldStatus = value; } + } + + // Check to see if ObjectLockLegalHoldStatus property is set + internal bool IsSetObjectLockLegalHoldStatus() + { + return this._objectLockLegalHoldStatus != null; + } + + /// + /// Gets and sets the property ObjectLockMode. + /// + /// The Object Lock mode, if any, that's in effect for this object. This header is only + /// returned if the requester has the s3:GetObjectRetention permission. For more + /// information about S3 Object Lock, see Object + /// Lock. + /// + /// + /// + /// This functionality is not supported for directory buckets. + /// + /// + /// + public ObjectLockMode ObjectLockMode + { + get { return this._objectLockMode; } + set { this._objectLockMode = value; } + } + + // Check to see if ObjectLockMode property is set + internal bool IsSetObjectLockMode() + { + return this._objectLockMode != null; + } + + /// + /// Gets and sets the property ObjectLockRetainUntilDate. + /// + /// The date and time when the Object Lock retention period expires. This header is only + /// returned if the requester has the s3:GetObjectRetention permission. + /// + /// + /// + /// This functionality is not supported for directory buckets. + /// + /// + /// + public DateTime? ObjectLockRetainUntilDate + { + get { return this._objectLockRetainUntilDate; } + set { this._objectLockRetainUntilDate = value; } + } + + // Check to see if ObjectLockRetainUntilDate property is set + internal bool IsSetObjectLockRetainUntilDate() + { + return this._objectLockRetainUntilDate.HasValue; + } + + /// + /// Gets and sets the property PartsCount. + /// + /// The count of parts this object has. This value is only returned if you specify partNumber + /// in your request and the object was uploaded as a multipart upload. + /// + /// + public int? PartsCount + { + get { return this._partsCount; } + set { this._partsCount = value; } + } + + // Check to see if PartsCount property is set + internal bool IsSetPartsCount() + { + return this._partsCount.HasValue; + } + + /// + /// Gets and sets the property ReplicationStatus. + /// + /// Amazon S3 can return this header if your request involves a bucket that is either + /// a source or a destination in a replication rule. + /// + /// + /// + /// In replication, you have a source bucket on which you configure replication and destination + /// bucket or buckets where Amazon S3 stores object replicas. When you request an object + /// (GetObject) or object metadata (HeadObject) from these buckets, Amazon + /// S3 will return the x-amz-replication-status header in the response as follows: + /// + ///
  • + /// + /// If requesting an object from the source bucket, Amazon S3 will return the + /// x-amz-replication-status header if the object in your request is eligible for + /// replication. + /// + /// + /// + /// For example, suppose that in your replication configuration, you specify object prefix + /// TaxDocs requesting Amazon S3 to replicate objects with key prefix TaxDocs. + /// Any objects you upload with this key name prefix, for example TaxDocs/document1.pdf, + /// are eligible for replication. For any object request with this key name prefix, Amazon + /// S3 will return the x-amz-replication-status header with value PENDING, COMPLETED + /// or FAILED indicating object replication status. + /// + ///
  • + /// + /// If requesting an object from a destination bucket, Amazon S3 will return the + /// x-amz-replication-status header with value REPLICA if the object in your request + /// is a replica that Amazon S3 created and there is no replica modification replication + /// in progress. + /// + ///
  • + /// + /// When replicating objects to multiple destination buckets, the x-amz-replication-status + /// header acts differently. The header of the source object will only return a value + /// of COMPLETED when replication is successful to all destinations. The header will remain + /// at value PENDING until replication has completed for all destinations. If one or more + /// destinations fails replication the header will return FAILED. + /// + ///
+ /// + /// For more information, see Replication. + /// + /// + /// + /// This functionality is not supported for directory buckets. + /// + /// + ///
+ public ReplicationStatus ReplicationStatus + { + get { return this._replicationStatus; } + set { this._replicationStatus = value; } + } + + // Check to see if ReplicationStatus property is set + internal bool IsSetReplicationStatus() + { + return this._replicationStatus != null; + } + + /// + /// Gets and sets the property RequestCharged. + /// + public RequestCharged RequestCharged + { + get { return this._requestCharged; } + set { this._requestCharged = value; } + } + + // Check to see if RequestCharged property is set + internal bool IsSetRequestCharged() + { + return this._requestCharged != null; + } + + /// + /// Gets and sets the property ServerSideEncryptionCustomerProvidedKeyMD5. + /// + /// If server-side encryption with a customer-provided encryption key was requested, the + /// response will include this header to provide the round-trip message integrity verification + /// of the customer-provided encryption key. + /// + /// + /// + /// This functionality is not supported for directory buckets. + /// + /// + /// + public string ServerSideEncryptionCustomerProvidedKeyMD5 + { + get { return this._serverSideEncryptionCustomerProvidedKeyMD5; } + set { this._serverSideEncryptionCustomerProvidedKeyMD5 = value; } + } + + // Check to see if ServerSideEncryptionCustomerProvidedKeyMD5 property is set + internal bool IsSetServerSideEncryptionCustomerProvidedKeyMD5() + { + return this._serverSideEncryptionCustomerProvidedKeyMD5 != null; + } + + /// + /// Gets and sets the property ServerSideEncryptionKeyManagementServiceKeyId. + /// + /// If present, indicates the ID of the KMS key that was used for object encryption. + /// + /// + [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; + } + + /// + /// Gets and sets the property StorageClass. + /// + /// Provides storage class information of the object. Amazon S3 returns this header for + /// all objects except for S3 Standard storage class objects. + /// + /// + /// + /// For more information, see Storage + /// Classes. + /// + /// + /// + /// Directory buckets - Directory buckets only support EXPRESS_ONEZONE + /// (the S3 Express One Zone storage class) in Availability Zones and ONEZONE_IA + /// (the S3 One Zone-Infrequent Access storage class) in Dedicated Local Zones. + /// + /// + /// + public S3StorageClass StorageClass + { + get { return this._storageClass; } + set { this._storageClass = value; } + } + + // Check to see if StorageClass property is set + internal bool IsSetStorageClass() + { + return this._storageClass != null; + } + + /// + /// Gets and sets the property TagsCount. + /// + /// The number of tags, if any, on the object, when you have the relevant permission to + /// read object tags. + /// + /// + /// + /// You can use GetObjectTagging + /// to retrieve the tag set associated with an object. + /// + /// + /// + /// This functionality is not supported for directory buckets. + /// + /// + /// + public int? TagsCount + { + get { return this._tagsCount; } + set { this._tagsCount = value; } + } + + // Check to see if TagsCount property is set + internal bool IsSetTagsCount() + { + return this._tagsCount.HasValue; + } + + /// + /// Gets and sets the property VersionId. + /// + /// Version ID of the object. + /// + /// + /// + /// This functionality is not supported for directory buckets. + /// + /// + /// + public string VersionId + { + get { return this._versionId; } + set { this._versionId = value; } + } + + // Check to see if VersionId property is set + internal bool IsSetVersionId() + { + return this._versionId != null; + } + + /// + /// Gets and sets the property WebsiteRedirectLocation. + /// + /// If the bucket is configured as a website, redirects requests for this object to another + /// object in the same bucket or to an external URL. Amazon S3 stores the value of this + /// header in the object metadata. + /// + /// + /// + /// This functionality is not supported for directory buckets. + /// + /// + /// + public string WebsiteRedirectLocation + { + get { return this._websiteRedirectLocation; } + set { this._websiteRedirectLocation = value; } + } + + // Check to see if WebsiteRedirectLocation property is set + internal bool IsSetWebsiteRedirectLocation() + { + return this._websiteRedirectLocation != null; + } + + } +} \ No newline at end of file diff --git a/sdk/src/Services/S3/Generated/Model/Internal/MarshallTransformations/AbortMultipartUploadResponseUnmarshaller.cs b/sdk/src/Services/S3/Generated/Model/Internal/MarshallTransformations/AbortMultipartUploadResponseUnmarshaller.cs index 39fe0976d898..c5ab6f91147f 100644 --- a/sdk/src/Services/S3/Generated/Model/Internal/MarshallTransformations/AbortMultipartUploadResponseUnmarshaller.cs +++ b/sdk/src/Services/S3/Generated/Model/Internal/MarshallTransformations/AbortMultipartUploadResponseUnmarshaller.cs @@ -36,7 +36,7 @@ namespace Amazon.S3.Model.Internal.MarshallTransformations /// /// Response Unmarshaller for AbortMultipartUpload operation /// - public class AbortMultipartUploadResponseUnmarshaller : S3ReponseUnmarshaller + public partial class AbortMultipartUploadResponseUnmarshaller : S3ReponseUnmarshaller { /// /// Unmarshaller the response from the service to the response class. @@ -49,6 +49,7 @@ public override AmazonWebServiceResponse Unmarshall(XmlUnmarshallerContext conte if (context.ResponseData.IsHeaderPresent("x-amz-request-charged")) response.RequestCharged = context.ResponseData.GetHeaderValue("x-amz-request-charged"); + PostUnmarshallCustomization(context, response); return response; } @@ -79,6 +80,8 @@ public override AmazonServiceException UnmarshallException(XmlUnmarshallerContex return base.ConstructS3Exception(context, errorResponse, innerException, statusCode); } + partial void PostUnmarshallCustomization(XmlUnmarshallerContext context, AbortMultipartUploadResponse response); + private static AbortMultipartUploadResponseUnmarshaller _instance = new AbortMultipartUploadResponseUnmarshaller(); internal static AbortMultipartUploadResponseUnmarshaller GetInstance() diff --git a/sdk/src/Services/S3/Generated/Model/Internal/MarshallTransformations/CommonPrefixUnmarshaller.cs b/sdk/src/Services/S3/Generated/Model/Internal/MarshallTransformations/CommonPrefixUnmarshaller.cs new file mode 100644 index 000000000000..65e8e313a3c4 --- /dev/null +++ b/sdk/src/Services/S3/Generated/Model/Internal/MarshallTransformations/CommonPrefixUnmarshaller.cs @@ -0,0 +1,91 @@ +/* + * 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 CommonPrefix Object + /// + public partial class CommonPrefixUnmarshaller : IXmlUnmarshaller + { + /// + /// Unmarshaller the response from the service to the response class. + /// + /// + /// + public CommonPrefix Unmarshall(XmlUnmarshallerContext context) + { + CommonPrefix unmarshalledObject = new CommonPrefix(); + int originalDepth = context.CurrentDepth; + int targetDepth = originalDepth + 1; + + if (context.IsStartOfDocument) + targetDepth += 2; + + while (context.Read()) + { + if (context.IsStartElement || context.IsAttribute) + { + if (context.TestExpression("Prefix", targetDepth)) + { + var unmarshaller = StringUnmarshaller.Instance; + unmarshalledObject.Prefix = unmarshaller.Unmarshall(context); + continue; + } + + XmlStructureUnmarshallCustomization(context, unmarshalledObject, targetDepth); + } + else if (context.IsEndElement && context.CurrentDepth < originalDepth) + { + return unmarshalledObject; + } + } + return unmarshalledObject; + } + + partial void XmlStructureUnmarshallCustomization(XmlUnmarshallerContext context, CommonPrefix unmarshalledObject, int targetDepth); + + private static CommonPrefixUnmarshaller _instance = new CommonPrefixUnmarshaller(); + + /// + /// Gets the singleton. + /// + public static CommonPrefixUnmarshaller Instance + { + get + { + return _instance; + } + } + } +} \ No newline at end of file diff --git a/sdk/src/Services/S3/Generated/Model/Internal/MarshallTransformations/CreateBucketMetadataTableConfigurationRequestMarshaller.cs b/sdk/src/Services/S3/Generated/Model/Internal/MarshallTransformations/CreateBucketMetadataTableConfigurationRequestMarshaller.cs index 48262db26ae7..5a60bd469a62 100644 --- a/sdk/src/Services/S3/Generated/Model/Internal/MarshallTransformations/CreateBucketMetadataTableConfigurationRequestMarshaller.cs +++ b/sdk/src/Services/S3/Generated/Model/Internal/MarshallTransformations/CreateBucketMetadataTableConfigurationRequestMarshaller.cs @@ -101,8 +101,6 @@ public IRequest Marshall(CreateBucketMetadataTableConfigurationRequest publicReq 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, diff --git a/sdk/src/Services/S3/Generated/Model/Internal/MarshallTransformations/CreateBucketMetadataTableConfigurationResponseUnmarshaller.cs b/sdk/src/Services/S3/Generated/Model/Internal/MarshallTransformations/CreateBucketMetadataTableConfigurationResponseUnmarshaller.cs index 1d2e9e85c451..f086b4aab2bc 100644 --- a/sdk/src/Services/S3/Generated/Model/Internal/MarshallTransformations/CreateBucketMetadataTableConfigurationResponseUnmarshaller.cs +++ b/sdk/src/Services/S3/Generated/Model/Internal/MarshallTransformations/CreateBucketMetadataTableConfigurationResponseUnmarshaller.cs @@ -36,7 +36,7 @@ namespace Amazon.S3.Model.Internal.MarshallTransformations /// /// Response Unmarshaller for CreateBucketMetadataTableConfiguration operation /// - public class CreateBucketMetadataTableConfigurationResponseUnmarshaller : S3ReponseUnmarshaller + public partial class CreateBucketMetadataTableConfigurationResponseUnmarshaller : S3ReponseUnmarshaller { /// /// Unmarshaller the response from the service to the response class. @@ -47,6 +47,7 @@ public override AmazonWebServiceResponse Unmarshall(XmlUnmarshallerContext conte { CreateBucketMetadataTableConfigurationResponse response = new CreateBucketMetadataTableConfigurationResponse(); + PostUnmarshallCustomization(context, response); return response; } @@ -73,6 +74,8 @@ public override AmazonServiceException UnmarshallException(XmlUnmarshallerContex return base.ConstructS3Exception(context, errorResponse, innerException, statusCode); } + partial void PostUnmarshallCustomization(XmlUnmarshallerContext context, CreateBucketMetadataTableConfigurationResponse response); + private static CreateBucketMetadataTableConfigurationResponseUnmarshaller _instance = new CreateBucketMetadataTableConfigurationResponseUnmarshaller(); internal static CreateBucketMetadataTableConfigurationResponseUnmarshaller GetInstance() diff --git a/sdk/src/Services/S3/Generated/Model/Internal/MarshallTransformations/DeleteBucketEncryptionResponseUnmarshaller.cs b/sdk/src/Services/S3/Generated/Model/Internal/MarshallTransformations/DeleteBucketEncryptionResponseUnmarshaller.cs index f8bbcc240f7f..1f5ee0e2fef7 100644 --- a/sdk/src/Services/S3/Generated/Model/Internal/MarshallTransformations/DeleteBucketEncryptionResponseUnmarshaller.cs +++ b/sdk/src/Services/S3/Generated/Model/Internal/MarshallTransformations/DeleteBucketEncryptionResponseUnmarshaller.cs @@ -36,7 +36,7 @@ namespace Amazon.S3.Model.Internal.MarshallTransformations /// /// Response Unmarshaller for DeleteBucketEncryption operation /// - public class DeleteBucketEncryptionResponseUnmarshaller : S3ReponseUnmarshaller + public partial class DeleteBucketEncryptionResponseUnmarshaller : S3ReponseUnmarshaller { /// /// Unmarshaller the response from the service to the response class. @@ -47,6 +47,7 @@ public override AmazonWebServiceResponse Unmarshall(XmlUnmarshallerContext conte { DeleteBucketEncryptionResponse response = new DeleteBucketEncryptionResponse(); + PostUnmarshallCustomization(context, response); return response; } @@ -73,6 +74,8 @@ public override AmazonServiceException UnmarshallException(XmlUnmarshallerContex return base.ConstructS3Exception(context, errorResponse, innerException, statusCode); } + partial void PostUnmarshallCustomization(XmlUnmarshallerContext context, DeleteBucketEncryptionResponse response); + private static DeleteBucketEncryptionResponseUnmarshaller _instance = new DeleteBucketEncryptionResponseUnmarshaller(); internal static DeleteBucketEncryptionResponseUnmarshaller GetInstance() diff --git a/sdk/src/Services/S3/Generated/Model/Internal/MarshallTransformations/DeleteBucketMetadataTableConfigurationResponseUnmarshaller.cs b/sdk/src/Services/S3/Generated/Model/Internal/MarshallTransformations/DeleteBucketMetadataTableConfigurationResponseUnmarshaller.cs index 295814ec497f..a6269b28a1da 100644 --- a/sdk/src/Services/S3/Generated/Model/Internal/MarshallTransformations/DeleteBucketMetadataTableConfigurationResponseUnmarshaller.cs +++ b/sdk/src/Services/S3/Generated/Model/Internal/MarshallTransformations/DeleteBucketMetadataTableConfigurationResponseUnmarshaller.cs @@ -36,7 +36,7 @@ namespace Amazon.S3.Model.Internal.MarshallTransformations /// /// Response Unmarshaller for DeleteBucketMetadataTableConfiguration operation /// - public class DeleteBucketMetadataTableConfigurationResponseUnmarshaller : S3ReponseUnmarshaller + public partial class DeleteBucketMetadataTableConfigurationResponseUnmarshaller : S3ReponseUnmarshaller { /// /// Unmarshaller the response from the service to the response class. @@ -47,6 +47,7 @@ public override AmazonWebServiceResponse Unmarshall(XmlUnmarshallerContext conte { DeleteBucketMetadataTableConfigurationResponse response = new DeleteBucketMetadataTableConfigurationResponse(); + PostUnmarshallCustomization(context, response); return response; } @@ -73,6 +74,8 @@ public override AmazonServiceException UnmarshallException(XmlUnmarshallerContex return base.ConstructS3Exception(context, errorResponse, innerException, statusCode); } + partial void PostUnmarshallCustomization(XmlUnmarshallerContext context, DeleteBucketMetadataTableConfigurationResponse response); + private static DeleteBucketMetadataTableConfigurationResponseUnmarshaller _instance = new DeleteBucketMetadataTableConfigurationResponseUnmarshaller(); internal static DeleteBucketMetadataTableConfigurationResponseUnmarshaller GetInstance() diff --git a/sdk/src/Services/S3/Generated/Model/Internal/MarshallTransformations/DeleteBucketOwnershipControlsResponseUnmarshaller.cs b/sdk/src/Services/S3/Generated/Model/Internal/MarshallTransformations/DeleteBucketOwnershipControlsResponseUnmarshaller.cs index cde6ce0c1346..889425e6be97 100644 --- a/sdk/src/Services/S3/Generated/Model/Internal/MarshallTransformations/DeleteBucketOwnershipControlsResponseUnmarshaller.cs +++ b/sdk/src/Services/S3/Generated/Model/Internal/MarshallTransformations/DeleteBucketOwnershipControlsResponseUnmarshaller.cs @@ -36,7 +36,7 @@ namespace Amazon.S3.Model.Internal.MarshallTransformations /// /// Response Unmarshaller for DeleteBucketOwnershipControls operation /// - public class DeleteBucketOwnershipControlsResponseUnmarshaller : S3ReponseUnmarshaller + public partial class DeleteBucketOwnershipControlsResponseUnmarshaller : S3ReponseUnmarshaller { /// /// Unmarshaller the response from the service to the response class. @@ -47,6 +47,7 @@ public override AmazonWebServiceResponse Unmarshall(XmlUnmarshallerContext conte { DeleteBucketOwnershipControlsResponse response = new DeleteBucketOwnershipControlsResponse(); + PostUnmarshallCustomization(context, response); return response; } @@ -73,6 +74,8 @@ public override AmazonServiceException UnmarshallException(XmlUnmarshallerContex return base.ConstructS3Exception(context, errorResponse, innerException, statusCode); } + partial void PostUnmarshallCustomization(XmlUnmarshallerContext context, DeleteBucketOwnershipControlsResponse response); + private static DeleteBucketOwnershipControlsResponseUnmarshaller _instance = new DeleteBucketOwnershipControlsResponseUnmarshaller(); internal static DeleteBucketOwnershipControlsResponseUnmarshaller GetInstance() diff --git a/sdk/src/Services/S3/Generated/Model/Internal/MarshallTransformations/DeleteBucketPolicyResponseUnmarshaller.cs b/sdk/src/Services/S3/Generated/Model/Internal/MarshallTransformations/DeleteBucketPolicyResponseUnmarshaller.cs index 3586e9c94a6a..e2ce12b0ede5 100644 --- a/sdk/src/Services/S3/Generated/Model/Internal/MarshallTransformations/DeleteBucketPolicyResponseUnmarshaller.cs +++ b/sdk/src/Services/S3/Generated/Model/Internal/MarshallTransformations/DeleteBucketPolicyResponseUnmarshaller.cs @@ -36,7 +36,7 @@ namespace Amazon.S3.Model.Internal.MarshallTransformations /// /// Response Unmarshaller for DeleteBucketPolicy operation /// - public class DeleteBucketPolicyResponseUnmarshaller : S3ReponseUnmarshaller + public partial class DeleteBucketPolicyResponseUnmarshaller : S3ReponseUnmarshaller { /// /// Unmarshaller the response from the service to the response class. @@ -47,6 +47,7 @@ public override AmazonWebServiceResponse Unmarshall(XmlUnmarshallerContext conte { DeleteBucketPolicyResponse response = new DeleteBucketPolicyResponse(); + PostUnmarshallCustomization(context, response); return response; } @@ -73,6 +74,8 @@ public override AmazonServiceException UnmarshallException(XmlUnmarshallerContex return base.ConstructS3Exception(context, errorResponse, innerException, statusCode); } + partial void PostUnmarshallCustomization(XmlUnmarshallerContext context, DeleteBucketPolicyResponse response); + private static DeleteBucketPolicyResponseUnmarshaller _instance = new DeleteBucketPolicyResponseUnmarshaller(); internal static DeleteBucketPolicyResponseUnmarshaller GetInstance() diff --git a/sdk/src/Services/S3/Generated/Model/Internal/MarshallTransformations/DeleteBucketReplicationResponseUnmarshaller.cs b/sdk/src/Services/S3/Generated/Model/Internal/MarshallTransformations/DeleteBucketReplicationResponseUnmarshaller.cs index 3c0c2b74188a..63fdb21c4e09 100644 --- a/sdk/src/Services/S3/Generated/Model/Internal/MarshallTransformations/DeleteBucketReplicationResponseUnmarshaller.cs +++ b/sdk/src/Services/S3/Generated/Model/Internal/MarshallTransformations/DeleteBucketReplicationResponseUnmarshaller.cs @@ -36,7 +36,7 @@ namespace Amazon.S3.Model.Internal.MarshallTransformations /// /// Response Unmarshaller for DeleteBucketReplication operation /// - public class DeleteBucketReplicationResponseUnmarshaller : S3ReponseUnmarshaller + public partial class DeleteBucketReplicationResponseUnmarshaller : S3ReponseUnmarshaller { /// /// Unmarshaller the response from the service to the response class. @@ -47,6 +47,7 @@ public override AmazonWebServiceResponse Unmarshall(XmlUnmarshallerContext conte { DeleteBucketReplicationResponse response = new DeleteBucketReplicationResponse(); + PostUnmarshallCustomization(context, response); return response; } @@ -73,6 +74,8 @@ public override AmazonServiceException UnmarshallException(XmlUnmarshallerContex return base.ConstructS3Exception(context, errorResponse, innerException, statusCode); } + partial void PostUnmarshallCustomization(XmlUnmarshallerContext context, DeleteBucketReplicationResponse response); + private static DeleteBucketReplicationResponseUnmarshaller _instance = new DeleteBucketReplicationResponseUnmarshaller(); internal static DeleteBucketReplicationResponseUnmarshaller GetInstance() diff --git a/sdk/src/Services/S3/Generated/Model/Internal/MarshallTransformations/DeleteBucketResponseUnmarshaller.cs b/sdk/src/Services/S3/Generated/Model/Internal/MarshallTransformations/DeleteBucketResponseUnmarshaller.cs index 82347c889e13..0b3cfa618b61 100644 --- a/sdk/src/Services/S3/Generated/Model/Internal/MarshallTransformations/DeleteBucketResponseUnmarshaller.cs +++ b/sdk/src/Services/S3/Generated/Model/Internal/MarshallTransformations/DeleteBucketResponseUnmarshaller.cs @@ -36,7 +36,7 @@ namespace Amazon.S3.Model.Internal.MarshallTransformations /// /// Response Unmarshaller for DeleteBucket operation /// - public class DeleteBucketResponseUnmarshaller : S3ReponseUnmarshaller + public partial class DeleteBucketResponseUnmarshaller : S3ReponseUnmarshaller { /// /// Unmarshaller the response from the service to the response class. @@ -47,6 +47,7 @@ public override AmazonWebServiceResponse Unmarshall(XmlUnmarshallerContext conte { DeleteBucketResponse response = new DeleteBucketResponse(); + PostUnmarshallCustomization(context, response); return response; } @@ -73,6 +74,8 @@ public override AmazonServiceException UnmarshallException(XmlUnmarshallerContex return base.ConstructS3Exception(context, errorResponse, innerException, statusCode); } + partial void PostUnmarshallCustomization(XmlUnmarshallerContext context, DeleteBucketResponse response); + private static DeleteBucketResponseUnmarshaller _instance = new DeleteBucketResponseUnmarshaller(); internal static DeleteBucketResponseUnmarshaller GetInstance() diff --git a/sdk/src/Services/S3/Generated/Model/Internal/MarshallTransformations/DeleteBucketTaggingResponseUnmarshaller.cs b/sdk/src/Services/S3/Generated/Model/Internal/MarshallTransformations/DeleteBucketTaggingResponseUnmarshaller.cs index d53376ed03cb..9165a8a7ccaf 100644 --- a/sdk/src/Services/S3/Generated/Model/Internal/MarshallTransformations/DeleteBucketTaggingResponseUnmarshaller.cs +++ b/sdk/src/Services/S3/Generated/Model/Internal/MarshallTransformations/DeleteBucketTaggingResponseUnmarshaller.cs @@ -36,7 +36,7 @@ namespace Amazon.S3.Model.Internal.MarshallTransformations /// /// Response Unmarshaller for DeleteBucketTagging operation /// - public class DeleteBucketTaggingResponseUnmarshaller : S3ReponseUnmarshaller + public partial class DeleteBucketTaggingResponseUnmarshaller : S3ReponseUnmarshaller { /// /// Unmarshaller the response from the service to the response class. @@ -47,6 +47,7 @@ public override AmazonWebServiceResponse Unmarshall(XmlUnmarshallerContext conte { DeleteBucketTaggingResponse response = new DeleteBucketTaggingResponse(); + PostUnmarshallCustomization(context, response); return response; } @@ -73,6 +74,8 @@ public override AmazonServiceException UnmarshallException(XmlUnmarshallerContex return base.ConstructS3Exception(context, errorResponse, innerException, statusCode); } + partial void PostUnmarshallCustomization(XmlUnmarshallerContext context, DeleteBucketTaggingResponse response); + private static DeleteBucketTaggingResponseUnmarshaller _instance = new DeleteBucketTaggingResponseUnmarshaller(); internal static DeleteBucketTaggingResponseUnmarshaller GetInstance() diff --git a/sdk/src/Services/S3/Generated/Model/Internal/MarshallTransformations/DeleteCORSConfigurationResponseUnmarshaller.cs b/sdk/src/Services/S3/Generated/Model/Internal/MarshallTransformations/DeleteCORSConfigurationResponseUnmarshaller.cs index b9b401722f02..15991f0bdbf5 100644 --- a/sdk/src/Services/S3/Generated/Model/Internal/MarshallTransformations/DeleteCORSConfigurationResponseUnmarshaller.cs +++ b/sdk/src/Services/S3/Generated/Model/Internal/MarshallTransformations/DeleteCORSConfigurationResponseUnmarshaller.cs @@ -36,7 +36,7 @@ namespace Amazon.S3.Model.Internal.MarshallTransformations /// /// Response Unmarshaller for DeleteCORSConfiguration operation /// - public class DeleteCORSConfigurationResponseUnmarshaller : S3ReponseUnmarshaller + public partial class DeleteCORSConfigurationResponseUnmarshaller : S3ReponseUnmarshaller { /// /// Unmarshaller the response from the service to the response class. @@ -47,6 +47,7 @@ public override AmazonWebServiceResponse Unmarshall(XmlUnmarshallerContext conte { DeleteCORSConfigurationResponse response = new DeleteCORSConfigurationResponse(); + PostUnmarshallCustomization(context, response); return response; } @@ -73,6 +74,8 @@ public override AmazonServiceException UnmarshallException(XmlUnmarshallerContex return base.ConstructS3Exception(context, errorResponse, innerException, statusCode); } + partial void PostUnmarshallCustomization(XmlUnmarshallerContext context, DeleteCORSConfigurationResponse response); + private static DeleteCORSConfigurationResponseUnmarshaller _instance = new DeleteCORSConfigurationResponseUnmarshaller(); internal static DeleteCORSConfigurationResponseUnmarshaller GetInstance() diff --git a/sdk/src/Services/S3/Generated/Model/Internal/MarshallTransformations/DeleteLifecycleConfigurationResponseUnmarshaller.cs b/sdk/src/Services/S3/Generated/Model/Internal/MarshallTransformations/DeleteLifecycleConfigurationResponseUnmarshaller.cs index c73152459169..3c235b9f6de8 100644 --- a/sdk/src/Services/S3/Generated/Model/Internal/MarshallTransformations/DeleteLifecycleConfigurationResponseUnmarshaller.cs +++ b/sdk/src/Services/S3/Generated/Model/Internal/MarshallTransformations/DeleteLifecycleConfigurationResponseUnmarshaller.cs @@ -36,7 +36,7 @@ namespace Amazon.S3.Model.Internal.MarshallTransformations /// /// Response Unmarshaller for DeleteLifecycleConfiguration operation /// - public class DeleteLifecycleConfigurationResponseUnmarshaller : S3ReponseUnmarshaller + public partial class DeleteLifecycleConfigurationResponseUnmarshaller : S3ReponseUnmarshaller { /// /// Unmarshaller the response from the service to the response class. @@ -47,6 +47,7 @@ public override AmazonWebServiceResponse Unmarshall(XmlUnmarshallerContext conte { DeleteLifecycleConfigurationResponse response = new DeleteLifecycleConfigurationResponse(); + PostUnmarshallCustomization(context, response); return response; } @@ -73,6 +74,8 @@ public override AmazonServiceException UnmarshallException(XmlUnmarshallerContex return base.ConstructS3Exception(context, errorResponse, innerException, statusCode); } + partial void PostUnmarshallCustomization(XmlUnmarshallerContext context, DeleteLifecycleConfigurationResponse response); + private static DeleteLifecycleConfigurationResponseUnmarshaller _instance = new DeleteLifecycleConfigurationResponseUnmarshaller(); internal static DeleteLifecycleConfigurationResponseUnmarshaller GetInstance() diff --git a/sdk/src/Services/S3/Generated/Model/Internal/MarshallTransformations/DeleteMarkerEntryUnmarshaller.cs b/sdk/src/Services/S3/Generated/Model/Internal/MarshallTransformations/DeleteMarkerEntryUnmarshaller.cs new file mode 100644 index 000000000000..f95cb8d86281 --- /dev/null +++ b/sdk/src/Services/S3/Generated/Model/Internal/MarshallTransformations/DeleteMarkerEntryUnmarshaller.cs @@ -0,0 +1,115 @@ +/* + * 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 DeleteMarkerEntry Object + /// + public partial class DeleteMarkerEntryUnmarshaller : IXmlUnmarshaller + { + /// + /// Unmarshaller the response from the service to the response class. + /// + /// + /// + public DeleteMarkerEntry Unmarshall(XmlUnmarshallerContext context) + { + DeleteMarkerEntry unmarshalledObject = new DeleteMarkerEntry(); + int originalDepth = context.CurrentDepth; + int targetDepth = originalDepth + 1; + + if (context.IsStartOfDocument) + targetDepth += 2; + + while (context.Read()) + { + if (context.IsStartElement || context.IsAttribute) + { + if (context.TestExpression("IsLatest", targetDepth)) + { + var unmarshaller = NullableBoolUnmarshaller.Instance; + unmarshalledObject.IsLatest = unmarshaller.Unmarshall(context); + continue; + } + if (context.TestExpression("Key", targetDepth)) + { + var unmarshaller = StringUnmarshaller.Instance; + unmarshalledObject.Key = unmarshaller.Unmarshall(context); + continue; + } + if (context.TestExpression("LastModified", targetDepth)) + { + var unmarshaller = NullableDateTimeUnmarshaller.Instance; + unmarshalledObject.LastModified = unmarshaller.Unmarshall(context); + continue; + } + if (context.TestExpression("Owner", targetDepth)) + { + var unmarshaller = OwnerUnmarshaller.Instance; + unmarshalledObject.Owner = unmarshaller.Unmarshall(context); + continue; + } + if (context.TestExpression("VersionId", targetDepth)) + { + var unmarshaller = StringUnmarshaller.Instance; + unmarshalledObject.VersionId = unmarshaller.Unmarshall(context); + continue; + } + + XmlStructureUnmarshallCustomization(context, unmarshalledObject, targetDepth); + } + else if (context.IsEndElement && context.CurrentDepth < originalDepth) + { + return unmarshalledObject; + } + } + return unmarshalledObject; + } + + partial void XmlStructureUnmarshallCustomization(XmlUnmarshallerContext context, DeleteMarkerEntry unmarshalledObject, int targetDepth); + + private static DeleteMarkerEntryUnmarshaller _instance = new DeleteMarkerEntryUnmarshaller(); + + /// + /// Gets the singleton. + /// + public static DeleteMarkerEntryUnmarshaller Instance + { + get + { + return _instance; + } + } + } +} \ No newline at end of file diff --git a/sdk/src/Services/S3/Generated/Model/Internal/MarshallTransformations/DeletePublicAccessBlockResponseUnmarshaller.cs b/sdk/src/Services/S3/Generated/Model/Internal/MarshallTransformations/DeletePublicAccessBlockResponseUnmarshaller.cs index 671c2b4b862e..c0de48728a8b 100644 --- a/sdk/src/Services/S3/Generated/Model/Internal/MarshallTransformations/DeletePublicAccessBlockResponseUnmarshaller.cs +++ b/sdk/src/Services/S3/Generated/Model/Internal/MarshallTransformations/DeletePublicAccessBlockResponseUnmarshaller.cs @@ -36,7 +36,7 @@ namespace Amazon.S3.Model.Internal.MarshallTransformations /// /// Response Unmarshaller for DeletePublicAccessBlock operation /// - public class DeletePublicAccessBlockResponseUnmarshaller : S3ReponseUnmarshaller + public partial class DeletePublicAccessBlockResponseUnmarshaller : S3ReponseUnmarshaller { /// /// Unmarshaller the response from the service to the response class. @@ -47,6 +47,7 @@ public override AmazonWebServiceResponse Unmarshall(XmlUnmarshallerContext conte { DeletePublicAccessBlockResponse response = new DeletePublicAccessBlockResponse(); + PostUnmarshallCustomization(context, response); return response; } @@ -73,6 +74,8 @@ public override AmazonServiceException UnmarshallException(XmlUnmarshallerContex return base.ConstructS3Exception(context, errorResponse, innerException, statusCode); } + partial void PostUnmarshallCustomization(XmlUnmarshallerContext context, DeletePublicAccessBlockResponse response); + private static DeletePublicAccessBlockResponseUnmarshaller _instance = new DeletePublicAccessBlockResponseUnmarshaller(); internal static DeletePublicAccessBlockResponseUnmarshaller GetInstance() diff --git a/sdk/src/Services/S3/Generated/Model/Internal/MarshallTransformations/GetBucketAccelerateConfigurationResponseUnmarshaller.cs b/sdk/src/Services/S3/Generated/Model/Internal/MarshallTransformations/GetBucketAccelerateConfigurationResponseUnmarshaller.cs index a02eaa2fd51b..5500a6578881 100644 --- a/sdk/src/Services/S3/Generated/Model/Internal/MarshallTransformations/GetBucketAccelerateConfigurationResponseUnmarshaller.cs +++ b/sdk/src/Services/S3/Generated/Model/Internal/MarshallTransformations/GetBucketAccelerateConfigurationResponseUnmarshaller.cs @@ -36,7 +36,7 @@ namespace Amazon.S3.Model.Internal.MarshallTransformations /// /// Response Unmarshaller for GetBucketAccelerateConfiguration operation /// - public class GetBucketAccelerateConfigurationResponseUnmarshaller : S3ReponseUnmarshaller + public partial class GetBucketAccelerateConfigurationResponseUnmarshaller : S3ReponseUnmarshaller { /// /// Unmarshaller the response from the service to the response class. @@ -50,6 +50,7 @@ public override AmazonWebServiceResponse Unmarshall(XmlUnmarshallerContext conte if (context.ResponseData.IsHeaderPresent("x-amz-request-charged")) response.RequestCharged = context.ResponseData.GetHeaderValue("x-amz-request-charged"); + PostUnmarshallCustomization(context, response); return response; } @@ -79,7 +80,6 @@ private static void UnmarshallResult(XmlUnmarshallerContext context, GetBucketAc return; } } - return; } @@ -106,6 +106,8 @@ public override AmazonServiceException UnmarshallException(XmlUnmarshallerContex return base.ConstructS3Exception(context, errorResponse, innerException, statusCode); } + partial void PostUnmarshallCustomization(XmlUnmarshallerContext context, GetBucketAccelerateConfigurationResponse response); + private static GetBucketAccelerateConfigurationResponseUnmarshaller _instance = new GetBucketAccelerateConfigurationResponseUnmarshaller(); internal static GetBucketAccelerateConfigurationResponseUnmarshaller GetInstance() diff --git a/sdk/src/Services/S3/Generated/Model/Internal/MarshallTransformations/GetBucketAclResponseUnmarshaller.cs b/sdk/src/Services/S3/Generated/Model/Internal/MarshallTransformations/GetBucketAclResponseUnmarshaller.cs index a2a126baf47a..c58f225b7d9a 100644 --- a/sdk/src/Services/S3/Generated/Model/Internal/MarshallTransformations/GetBucketAclResponseUnmarshaller.cs +++ b/sdk/src/Services/S3/Generated/Model/Internal/MarshallTransformations/GetBucketAclResponseUnmarshaller.cs @@ -36,7 +36,7 @@ namespace Amazon.S3.Model.Internal.MarshallTransformations /// /// Response Unmarshaller for GetBucketAcl operation /// - public class GetBucketAclResponseUnmarshaller : S3ReponseUnmarshaller + public partial class GetBucketAclResponseUnmarshaller : S3ReponseUnmarshaller { /// /// Unmarshaller the response from the service to the response class. @@ -48,6 +48,7 @@ public override AmazonWebServiceResponse Unmarshall(XmlUnmarshallerContext conte GetBucketAclResponse response = new GetBucketAclResponse(); UnmarshallResult(context,response); + PostUnmarshallCustomization(context, response); return response; } @@ -87,7 +88,6 @@ private static void UnmarshallResult(XmlUnmarshallerContext context, GetBucketAc return; } } - return; } @@ -114,6 +114,8 @@ public override AmazonServiceException UnmarshallException(XmlUnmarshallerContex return base.ConstructS3Exception(context, errorResponse, innerException, statusCode); } + partial void PostUnmarshallCustomization(XmlUnmarshallerContext context, GetBucketAclResponse response); + private static GetBucketAclResponseUnmarshaller _instance = new GetBucketAclResponseUnmarshaller(); internal static GetBucketAclResponseUnmarshaller GetInstance() diff --git a/sdk/src/Services/S3/Generated/Model/Internal/MarshallTransformations/GetBucketEncryptionResponseUnmarshaller.cs b/sdk/src/Services/S3/Generated/Model/Internal/MarshallTransformations/GetBucketEncryptionResponseUnmarshaller.cs index 7f92423f5be1..70cdc27f92d7 100644 --- a/sdk/src/Services/S3/Generated/Model/Internal/MarshallTransformations/GetBucketEncryptionResponseUnmarshaller.cs +++ b/sdk/src/Services/S3/Generated/Model/Internal/MarshallTransformations/GetBucketEncryptionResponseUnmarshaller.cs @@ -36,7 +36,7 @@ namespace Amazon.S3.Model.Internal.MarshallTransformations /// /// Response Unmarshaller for GetBucketEncryption operation /// - public class GetBucketEncryptionResponseUnmarshaller : S3ReponseUnmarshaller + public partial class GetBucketEncryptionResponseUnmarshaller : S3ReponseUnmarshaller { /// /// Unmarshaller the response from the service to the response class. @@ -48,6 +48,7 @@ public override AmazonWebServiceResponse Unmarshall(XmlUnmarshallerContext conte GetBucketEncryptionResponse response = new GetBucketEncryptionResponse(); UnmarshallResult(context,response); + PostUnmarshallCustomization(context, response); return response; } @@ -75,7 +76,6 @@ private static void UnmarshallResult(XmlUnmarshallerContext context, GetBucketEn return; } } - return; } @@ -102,6 +102,8 @@ public override AmazonServiceException UnmarshallException(XmlUnmarshallerContex return base.ConstructS3Exception(context, errorResponse, innerException, statusCode); } + partial void PostUnmarshallCustomization(XmlUnmarshallerContext context, GetBucketEncryptionResponse response); + private static GetBucketEncryptionResponseUnmarshaller _instance = new GetBucketEncryptionResponseUnmarshaller(); internal static GetBucketEncryptionResponseUnmarshaller GetInstance() diff --git a/sdk/src/Services/S3/Generated/Model/Internal/MarshallTransformations/GetBucketLocationResponseUnmarshaller.cs b/sdk/src/Services/S3/Generated/Model/Internal/MarshallTransformations/GetBucketLocationResponseUnmarshaller.cs index ed5ed1d760c2..786e326aaf40 100644 --- a/sdk/src/Services/S3/Generated/Model/Internal/MarshallTransformations/GetBucketLocationResponseUnmarshaller.cs +++ b/sdk/src/Services/S3/Generated/Model/Internal/MarshallTransformations/GetBucketLocationResponseUnmarshaller.cs @@ -36,7 +36,7 @@ namespace Amazon.S3.Model.Internal.MarshallTransformations /// /// Response Unmarshaller for GetBucketLocation operation /// - public class GetBucketLocationResponseUnmarshaller : S3ReponseUnmarshaller + public partial class GetBucketLocationResponseUnmarshaller : S3ReponseUnmarshaller { /// /// Unmarshaller the response from the service to the response class. @@ -48,6 +48,7 @@ public override AmazonWebServiceResponse Unmarshall(XmlUnmarshallerContext conte GetBucketLocationResponse response = new GetBucketLocationResponse(); UnmarshallResult(context,response); + PostUnmarshallCustomization(context, response); return response; } @@ -75,7 +76,6 @@ private static void UnmarshallResult(XmlUnmarshallerContext context, GetBucketLo return; } } - return; } @@ -102,6 +102,8 @@ public override AmazonServiceException UnmarshallException(XmlUnmarshallerContex return base.ConstructS3Exception(context, errorResponse, innerException, statusCode); } + partial void PostUnmarshallCustomization(XmlUnmarshallerContext context, GetBucketLocationResponse response); + private static GetBucketLocationResponseUnmarshaller _instance = new GetBucketLocationResponseUnmarshaller(); internal static GetBucketLocationResponseUnmarshaller GetInstance() diff --git a/sdk/src/Services/S3/Generated/Model/Internal/MarshallTransformations/GetBucketMetadataTableConfigurationResponseUnmarshaller.cs b/sdk/src/Services/S3/Generated/Model/Internal/MarshallTransformations/GetBucketMetadataTableConfigurationResponseUnmarshaller.cs index 2a03a976b2f0..4b8c4a0f2b04 100644 --- a/sdk/src/Services/S3/Generated/Model/Internal/MarshallTransformations/GetBucketMetadataTableConfigurationResponseUnmarshaller.cs +++ b/sdk/src/Services/S3/Generated/Model/Internal/MarshallTransformations/GetBucketMetadataTableConfigurationResponseUnmarshaller.cs @@ -36,7 +36,7 @@ namespace Amazon.S3.Model.Internal.MarshallTransformations /// /// Response Unmarshaller for GetBucketMetadataTableConfiguration operation /// - public class GetBucketMetadataTableConfigurationResponseUnmarshaller : S3ReponseUnmarshaller + public partial class GetBucketMetadataTableConfigurationResponseUnmarshaller : S3ReponseUnmarshaller { /// /// Unmarshaller the response from the service to the response class. @@ -48,6 +48,7 @@ public override AmazonWebServiceResponse Unmarshall(XmlUnmarshallerContext conte GetBucketMetadataTableConfigurationResponse response = new GetBucketMetadataTableConfigurationResponse(); UnmarshallResult(context,response); + PostUnmarshallCustomization(context, response); return response; } @@ -75,7 +76,6 @@ private static void UnmarshallResult(XmlUnmarshallerContext context, GetBucketMe return; } } - return; } @@ -102,6 +102,8 @@ public override AmazonServiceException UnmarshallException(XmlUnmarshallerContex return base.ConstructS3Exception(context, errorResponse, innerException, statusCode); } + partial void PostUnmarshallCustomization(XmlUnmarshallerContext context, GetBucketMetadataTableConfigurationResponse response); + private static GetBucketMetadataTableConfigurationResponseUnmarshaller _instance = new GetBucketMetadataTableConfigurationResponseUnmarshaller(); internal static GetBucketMetadataTableConfigurationResponseUnmarshaller GetInstance() diff --git a/sdk/src/Services/S3/Generated/Model/Internal/MarshallTransformations/GetBucketNotificationResponseUnmarshaller.cs b/sdk/src/Services/S3/Generated/Model/Internal/MarshallTransformations/GetBucketNotificationResponseUnmarshaller.cs index 89e0359a8889..f2ae62def887 100644 --- a/sdk/src/Services/S3/Generated/Model/Internal/MarshallTransformations/GetBucketNotificationResponseUnmarshaller.cs +++ b/sdk/src/Services/S3/Generated/Model/Internal/MarshallTransformations/GetBucketNotificationResponseUnmarshaller.cs @@ -36,7 +36,7 @@ namespace Amazon.S3.Model.Internal.MarshallTransformations /// /// Response Unmarshaller for GetBucketNotification operation /// - public class GetBucketNotificationResponseUnmarshaller : S3ReponseUnmarshaller + public partial class GetBucketNotificationResponseUnmarshaller : S3ReponseUnmarshaller { /// /// Unmarshaller the response from the service to the response class. @@ -48,6 +48,7 @@ public override AmazonWebServiceResponse Unmarshall(XmlUnmarshallerContext conte GetBucketNotificationResponse response = new GetBucketNotificationResponse(); UnmarshallResult(context,response); + PostUnmarshallCustomization(context, response); return response; } @@ -107,7 +108,6 @@ private static void UnmarshallResult(XmlUnmarshallerContext context, GetBucketNo return; } } - return; } @@ -134,6 +134,8 @@ public override AmazonServiceException UnmarshallException(XmlUnmarshallerContex return base.ConstructS3Exception(context, errorResponse, innerException, statusCode); } + partial void PostUnmarshallCustomization(XmlUnmarshallerContext context, GetBucketNotificationResponse response); + private static GetBucketNotificationResponseUnmarshaller _instance = new GetBucketNotificationResponseUnmarshaller(); internal static GetBucketNotificationResponseUnmarshaller GetInstance() diff --git a/sdk/src/Services/S3/Generated/Model/Internal/MarshallTransformations/GetBucketOwnershipControlsResponseUnmarshaller.cs b/sdk/src/Services/S3/Generated/Model/Internal/MarshallTransformations/GetBucketOwnershipControlsResponseUnmarshaller.cs index 810b89649456..4ea88dcb6b16 100644 --- a/sdk/src/Services/S3/Generated/Model/Internal/MarshallTransformations/GetBucketOwnershipControlsResponseUnmarshaller.cs +++ b/sdk/src/Services/S3/Generated/Model/Internal/MarshallTransformations/GetBucketOwnershipControlsResponseUnmarshaller.cs @@ -36,7 +36,7 @@ namespace Amazon.S3.Model.Internal.MarshallTransformations /// /// Response Unmarshaller for GetBucketOwnershipControls operation /// - public class GetBucketOwnershipControlsResponseUnmarshaller : S3ReponseUnmarshaller + public partial class GetBucketOwnershipControlsResponseUnmarshaller : S3ReponseUnmarshaller { /// /// Unmarshaller the response from the service to the response class. @@ -48,6 +48,7 @@ public override AmazonWebServiceResponse Unmarshall(XmlUnmarshallerContext conte GetBucketOwnershipControlsResponse response = new GetBucketOwnershipControlsResponse(); UnmarshallResult(context,response); + PostUnmarshallCustomization(context, response); return response; } @@ -75,7 +76,6 @@ private static void UnmarshallResult(XmlUnmarshallerContext context, GetBucketOw return; } } - return; } @@ -102,6 +102,8 @@ public override AmazonServiceException UnmarshallException(XmlUnmarshallerContex return base.ConstructS3Exception(context, errorResponse, innerException, statusCode); } + partial void PostUnmarshallCustomization(XmlUnmarshallerContext context, GetBucketOwnershipControlsResponse response); + private static GetBucketOwnershipControlsResponseUnmarshaller _instance = new GetBucketOwnershipControlsResponseUnmarshaller(); internal static GetBucketOwnershipControlsResponseUnmarshaller GetInstance() diff --git a/sdk/src/Services/S3/Generated/Model/Internal/MarshallTransformations/GetBucketPolicyResponseUnmarshaller.cs b/sdk/src/Services/S3/Generated/Model/Internal/MarshallTransformations/GetBucketPolicyResponseUnmarshaller.cs index 365cbdbf48d2..5a84d4d2ac5f 100644 --- a/sdk/src/Services/S3/Generated/Model/Internal/MarshallTransformations/GetBucketPolicyResponseUnmarshaller.cs +++ b/sdk/src/Services/S3/Generated/Model/Internal/MarshallTransformations/GetBucketPolicyResponseUnmarshaller.cs @@ -36,7 +36,7 @@ namespace Amazon.S3.Model.Internal.MarshallTransformations /// /// Response Unmarshaller for GetBucketPolicy operation /// - public class GetBucketPolicyResponseUnmarshaller : S3ReponseUnmarshaller + public partial class GetBucketPolicyResponseUnmarshaller : S3ReponseUnmarshaller { /// /// Unmarshaller the response from the service to the response class. @@ -51,6 +51,7 @@ public override AmazonWebServiceResponse Unmarshall(XmlUnmarshallerContext conte response.Policy = sr.ReadToEnd(); } + PostUnmarshallCustomization(context, response); return response; } @@ -77,6 +78,8 @@ public override AmazonServiceException UnmarshallException(XmlUnmarshallerContex return base.ConstructS3Exception(context, errorResponse, innerException, statusCode); } + partial void PostUnmarshallCustomization(XmlUnmarshallerContext context, GetBucketPolicyResponse response); + private static GetBucketPolicyResponseUnmarshaller _instance = new GetBucketPolicyResponseUnmarshaller(); internal static GetBucketPolicyResponseUnmarshaller GetInstance() diff --git a/sdk/src/Services/S3/Generated/Model/Internal/MarshallTransformations/GetBucketPolicyStatusResponseUnmarshaller.cs b/sdk/src/Services/S3/Generated/Model/Internal/MarshallTransformations/GetBucketPolicyStatusResponseUnmarshaller.cs index 4bfd5afb99be..454e1664fb79 100644 --- a/sdk/src/Services/S3/Generated/Model/Internal/MarshallTransformations/GetBucketPolicyStatusResponseUnmarshaller.cs +++ b/sdk/src/Services/S3/Generated/Model/Internal/MarshallTransformations/GetBucketPolicyStatusResponseUnmarshaller.cs @@ -36,7 +36,7 @@ namespace Amazon.S3.Model.Internal.MarshallTransformations /// /// Response Unmarshaller for GetBucketPolicyStatus operation /// - public class GetBucketPolicyStatusResponseUnmarshaller : S3ReponseUnmarshaller + public partial class GetBucketPolicyStatusResponseUnmarshaller : S3ReponseUnmarshaller { /// /// Unmarshaller the response from the service to the response class. @@ -48,6 +48,7 @@ public override AmazonWebServiceResponse Unmarshall(XmlUnmarshallerContext conte GetBucketPolicyStatusResponse response = new GetBucketPolicyStatusResponse(); UnmarshallResult(context,response); + PostUnmarshallCustomization(context, response); return response; } @@ -75,7 +76,6 @@ private static void UnmarshallResult(XmlUnmarshallerContext context, GetBucketPo return; } } - return; } @@ -102,6 +102,8 @@ public override AmazonServiceException UnmarshallException(XmlUnmarshallerContex return base.ConstructS3Exception(context, errorResponse, innerException, statusCode); } + partial void PostUnmarshallCustomization(XmlUnmarshallerContext context, GetBucketPolicyStatusResponse response); + private static GetBucketPolicyStatusResponseUnmarshaller _instance = new GetBucketPolicyStatusResponseUnmarshaller(); internal static GetBucketPolicyStatusResponseUnmarshaller GetInstance() diff --git a/sdk/src/Services/S3/Generated/Model/Internal/MarshallTransformations/GetBucketReplicationResponseUnmarshaller.cs b/sdk/src/Services/S3/Generated/Model/Internal/MarshallTransformations/GetBucketReplicationResponseUnmarshaller.cs index 035b9378a3e7..d8a70d0e1c60 100644 --- a/sdk/src/Services/S3/Generated/Model/Internal/MarshallTransformations/GetBucketReplicationResponseUnmarshaller.cs +++ b/sdk/src/Services/S3/Generated/Model/Internal/MarshallTransformations/GetBucketReplicationResponseUnmarshaller.cs @@ -36,7 +36,7 @@ namespace Amazon.S3.Model.Internal.MarshallTransformations /// /// Response Unmarshaller for GetBucketReplication operation /// - public class GetBucketReplicationResponseUnmarshaller : S3ReponseUnmarshaller + public partial class GetBucketReplicationResponseUnmarshaller : S3ReponseUnmarshaller { /// /// Unmarshaller the response from the service to the response class. @@ -48,6 +48,7 @@ public override AmazonWebServiceResponse Unmarshall(XmlUnmarshallerContext conte GetBucketReplicationResponse response = new GetBucketReplicationResponse(); UnmarshallResult(context,response); + PostUnmarshallCustomization(context, response); return response; } @@ -75,7 +76,6 @@ private static void UnmarshallResult(XmlUnmarshallerContext context, GetBucketRe return; } } - return; } @@ -102,6 +102,8 @@ public override AmazonServiceException UnmarshallException(XmlUnmarshallerContex return base.ConstructS3Exception(context, errorResponse, innerException, statusCode); } + partial void PostUnmarshallCustomization(XmlUnmarshallerContext context, GetBucketReplicationResponse response); + private static GetBucketReplicationResponseUnmarshaller _instance = new GetBucketReplicationResponseUnmarshaller(); internal static GetBucketReplicationResponseUnmarshaller GetInstance() diff --git a/sdk/src/Services/S3/Generated/Model/Internal/MarshallTransformations/GetBucketRequestPaymentResponseUnmarshaller.cs b/sdk/src/Services/S3/Generated/Model/Internal/MarshallTransformations/GetBucketRequestPaymentResponseUnmarshaller.cs index 093489aeada9..5f9b74270b31 100644 --- a/sdk/src/Services/S3/Generated/Model/Internal/MarshallTransformations/GetBucketRequestPaymentResponseUnmarshaller.cs +++ b/sdk/src/Services/S3/Generated/Model/Internal/MarshallTransformations/GetBucketRequestPaymentResponseUnmarshaller.cs @@ -36,7 +36,7 @@ namespace Amazon.S3.Model.Internal.MarshallTransformations /// /// Response Unmarshaller for GetBucketRequestPayment operation /// - public class GetBucketRequestPaymentResponseUnmarshaller : S3ReponseUnmarshaller + public partial class GetBucketRequestPaymentResponseUnmarshaller : S3ReponseUnmarshaller { /// /// Unmarshaller the response from the service to the response class. @@ -48,6 +48,7 @@ public override AmazonWebServiceResponse Unmarshall(XmlUnmarshallerContext conte GetBucketRequestPaymentResponse response = new GetBucketRequestPaymentResponse(); UnmarshallResult(context,response); + PostUnmarshallCustomization(context, response); return response; } @@ -77,7 +78,6 @@ private static void UnmarshallResult(XmlUnmarshallerContext context, GetBucketRe return; } } - return; } @@ -104,6 +104,8 @@ public override AmazonServiceException UnmarshallException(XmlUnmarshallerContex return base.ConstructS3Exception(context, errorResponse, innerException, statusCode); } + partial void PostUnmarshallCustomization(XmlUnmarshallerContext context, GetBucketRequestPaymentResponse response); + private static GetBucketRequestPaymentResponseUnmarshaller _instance = new GetBucketRequestPaymentResponseUnmarshaller(); internal static GetBucketRequestPaymentResponseUnmarshaller GetInstance() diff --git a/sdk/src/Services/S3/Generated/Model/Internal/MarshallTransformations/GetBucketTaggingResponseUnmarshaller.cs b/sdk/src/Services/S3/Generated/Model/Internal/MarshallTransformations/GetBucketTaggingResponseUnmarshaller.cs index 0e29de00f097..637534b6ebd1 100644 --- a/sdk/src/Services/S3/Generated/Model/Internal/MarshallTransformations/GetBucketTaggingResponseUnmarshaller.cs +++ b/sdk/src/Services/S3/Generated/Model/Internal/MarshallTransformations/GetBucketTaggingResponseUnmarshaller.cs @@ -36,7 +36,7 @@ namespace Amazon.S3.Model.Internal.MarshallTransformations /// /// Response Unmarshaller for GetBucketTagging operation /// - public class GetBucketTaggingResponseUnmarshaller : S3ReponseUnmarshaller + public partial class GetBucketTaggingResponseUnmarshaller : S3ReponseUnmarshaller { /// /// Unmarshaller the response from the service to the response class. @@ -48,6 +48,7 @@ public override AmazonWebServiceResponse Unmarshall(XmlUnmarshallerContext conte GetBucketTaggingResponse response = new GetBucketTaggingResponse(); UnmarshallResult(context,response); + PostUnmarshallCustomization(context, response); return response; } @@ -81,7 +82,6 @@ private static void UnmarshallResult(XmlUnmarshallerContext context, GetBucketTa return; } } - return; } @@ -108,6 +108,8 @@ public override AmazonServiceException UnmarshallException(XmlUnmarshallerContex return base.ConstructS3Exception(context, errorResponse, innerException, statusCode); } + partial void PostUnmarshallCustomization(XmlUnmarshallerContext context, GetBucketTaggingResponse response); + private static GetBucketTaggingResponseUnmarshaller _instance = new GetBucketTaggingResponseUnmarshaller(); internal static GetBucketTaggingResponseUnmarshaller GetInstance() diff --git a/sdk/src/Services/S3/Generated/Model/Internal/MarshallTransformations/GetCORSConfigurationResponseUnmarshaller.cs b/sdk/src/Services/S3/Generated/Model/Internal/MarshallTransformations/GetCORSConfigurationResponseUnmarshaller.cs index 4a16529c6985..d4955b0430b6 100644 --- a/sdk/src/Services/S3/Generated/Model/Internal/MarshallTransformations/GetCORSConfigurationResponseUnmarshaller.cs +++ b/sdk/src/Services/S3/Generated/Model/Internal/MarshallTransformations/GetCORSConfigurationResponseUnmarshaller.cs @@ -36,7 +36,7 @@ namespace Amazon.S3.Model.Internal.MarshallTransformations /// /// Response Unmarshaller for GetCORSConfiguration operation /// - public class GetCORSConfigurationResponseUnmarshaller : S3ReponseUnmarshaller + public partial class GetCORSConfigurationResponseUnmarshaller : S3ReponseUnmarshaller { /// /// Unmarshaller the response from the service to the response class. @@ -48,6 +48,7 @@ public override AmazonWebServiceResponse Unmarshall(XmlUnmarshallerContext conte GetCORSConfigurationResponse response = new GetCORSConfigurationResponse(); UnmarshallResult(context,response); + PostUnmarshallCustomization(context, response); return response; } @@ -74,7 +75,6 @@ private static void UnmarshallResult(XmlUnmarshallerContext context, GetCORSConf return; } } - return; } @@ -101,6 +101,8 @@ public override AmazonServiceException UnmarshallException(XmlUnmarshallerContex return base.ConstructS3Exception(context, errorResponse, innerException, statusCode); } + partial void PostUnmarshallCustomization(XmlUnmarshallerContext context, GetCORSConfigurationResponse response); + private static GetCORSConfigurationResponseUnmarshaller _instance = new GetCORSConfigurationResponseUnmarshaller(); internal static GetCORSConfigurationResponseUnmarshaller GetInstance() diff --git a/sdk/src/Services/S3/Generated/Model/Internal/MarshallTransformations/GetLifecycleConfigurationResponseUnmarshaller.cs b/sdk/src/Services/S3/Generated/Model/Internal/MarshallTransformations/GetLifecycleConfigurationResponseUnmarshaller.cs index 7883ea956b76..fca9e984515e 100644 --- a/sdk/src/Services/S3/Generated/Model/Internal/MarshallTransformations/GetLifecycleConfigurationResponseUnmarshaller.cs +++ b/sdk/src/Services/S3/Generated/Model/Internal/MarshallTransformations/GetLifecycleConfigurationResponseUnmarshaller.cs @@ -36,7 +36,7 @@ namespace Amazon.S3.Model.Internal.MarshallTransformations /// /// Response Unmarshaller for GetLifecycleConfiguration operation /// - public class GetLifecycleConfigurationResponseUnmarshaller : S3ReponseUnmarshaller + public partial class GetLifecycleConfigurationResponseUnmarshaller : S3ReponseUnmarshaller { /// /// Unmarshaller the response from the service to the response class. @@ -50,6 +50,7 @@ public override AmazonWebServiceResponse Unmarshall(XmlUnmarshallerContext conte if (context.ResponseData.IsHeaderPresent("x-amz-transition-default-minimum-object-size")) response.TransitionDefaultMinimumObjectSize = context.ResponseData.GetHeaderValue("x-amz-transition-default-minimum-object-size"); + PostUnmarshallCustomization(context, response); return response; } @@ -76,7 +77,6 @@ private static void UnmarshallResult(XmlUnmarshallerContext context, GetLifecycl return; } } - return; } @@ -103,6 +103,8 @@ public override AmazonServiceException UnmarshallException(XmlUnmarshallerContex return base.ConstructS3Exception(context, errorResponse, innerException, statusCode); } + partial void PostUnmarshallCustomization(XmlUnmarshallerContext context, GetLifecycleConfigurationResponse response); + private static GetLifecycleConfigurationResponseUnmarshaller _instance = new GetLifecycleConfigurationResponseUnmarshaller(); internal static GetLifecycleConfigurationResponseUnmarshaller GetInstance() diff --git a/sdk/src/Services/S3/Custom/Model/Internal/MarshallTransformations/GetObjectACLRequestMarshaller.cs b/sdk/src/Services/S3/Generated/Model/Internal/MarshallTransformations/GetObjectAclRequestMarshaller.cs similarity index 82% rename from sdk/src/Services/S3/Custom/Model/Internal/MarshallTransformations/GetObjectACLRequestMarshaller.cs rename to sdk/src/Services/S3/Generated/Model/Internal/MarshallTransformations/GetObjectAclRequestMarshaller.cs index 2d363e36ee65..12b89ec252fa 100644 --- a/sdk/src/Services/S3/Custom/Model/Internal/MarshallTransformations/GetObjectACLRequestMarshaller.cs +++ b/sdk/src/Services/S3/Generated/Model/Internal/MarshallTransformations/GetObjectAclRequestMarshaller.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,6 +13,9 @@ * 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; @@ -33,7 +36,7 @@ namespace Amazon.S3.Model.Internal.MarshallTransformations /// /// GetObjectAcl Request Marshaller /// - public class GetObjectAclRequestMarshaller : IMarshaller, IMarshaller + public partial class GetObjectAclRequestMarshaller : IMarshaller , IMarshaller { /// /// Marshaller the request object to the HTTP request. @@ -55,13 +58,13 @@ public IRequest Marshall(GetObjectAclRequest publicRequest) var request = new DefaultRequest(publicRequest, "Amazon.S3"); request.HttpMethod = "GET"; request.AddSubResource("acl"); - - if (publicRequest.IsSetExpectedBucketOwner()) + + if (publicRequest.IsSetExpectedBucketOwner()) { request.Headers["x-amz-expected-bucket-owner"] = publicRequest.ExpectedBucketOwner; } - - if (publicRequest.IsSetRequestPayer()) + + if (publicRequest.IsSetRequestPayer()) { request.Headers["x-amz-request-payer"] = publicRequest.RequestPayer; } @@ -69,17 +72,17 @@ public IRequest Marshall(GetObjectAclRequest publicRequest) throw new AmazonS3Exception("Request object does not have required field BucketName set"); if (!publicRequest.IsSetKey()) throw new AmazonS3Exception("Request object does not have required field Key set"); - request.AddPathResource("{Key+}", StringUtils.FromString(publicRequest.Key.TrimStart('/'))); - + request.AddPathResource("{Key+}", StringUtils.FromString(publicRequest.Key)); + if (publicRequest.IsSetVersionId()) request.Parameters.Add("versionId", StringUtils.FromString(publicRequest.VersionId)); request.ResourcePath = "/{Key+}"; - + PostMarshallCustomization(request, publicRequest); request.UseQueryString = true; return request; } - private static GetObjectAclRequestMarshaller _instance = new GetObjectAclRequestMarshaller(); + private static GetObjectAclRequestMarshaller _instance = new GetObjectAclRequestMarshaller(); internal static GetObjectAclRequestMarshaller GetInstance() { @@ -97,5 +100,6 @@ public static GetObjectAclRequestMarshaller Instance } } - } + partial void PostMarshallCustomization(DefaultRequest defaultRequest, GetObjectAclRequest publicRequest); + } } \ No newline at end of file diff --git a/sdk/src/Services/S3/Custom/Model/Internal/MarshallTransformations/GetObjectACLResponseUnmarshaller.cs b/sdk/src/Services/S3/Generated/Model/Internal/MarshallTransformations/GetObjectAclResponseUnmarshaller.cs similarity index 69% rename from sdk/src/Services/S3/Custom/Model/Internal/MarshallTransformations/GetObjectACLResponseUnmarshaller.cs rename to sdk/src/Services/S3/Generated/Model/Internal/MarshallTransformations/GetObjectAclResponseUnmarshaller.cs index c8524695c182..d9e2e6ec941d 100644 --- a/sdk/src/Services/S3/Custom/Model/Internal/MarshallTransformations/GetObjectACLResponseUnmarshaller.cs +++ b/sdk/src/Services/S3/Generated/Model/Internal/MarshallTransformations/GetObjectAclResponseUnmarshaller.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"). @@ -36,7 +36,7 @@ namespace Amazon.S3.Model.Internal.MarshallTransformations /// /// Response Unmarshaller for GetObjectAcl operation /// - public class GetObjectAclResponseUnmarshaller : S3ReponseUnmarshaller + public partial class GetObjectAclResponseUnmarshaller : S3ReponseUnmarshaller { /// /// Unmarshaller the response from the service to the response class. @@ -46,27 +46,20 @@ public class GetObjectAclResponseUnmarshaller : S3ReponseUnmarshaller public override AmazonWebServiceResponse Unmarshall(XmlUnmarshallerContext context) { GetObjectAclResponse response = new GetObjectAclResponse(); - while (context.Read()) - { - if (context.IsStartElement) - { - UnmarshallResult(context, response); - continue; - } - } - + UnmarshallResult(context,response); if (context.ResponseData.IsHeaderPresent("x-amz-request-charged")) response.RequestCharged = context.ResponseData.GetHeaderValue("x-amz-request-charged"); - + + PostUnmarshallCustomization(context, response); return response; - } + } private static void UnmarshallResult(XmlUnmarshallerContext context, GetObjectAclResponse response) { int originalDepth = context.CurrentDepth; int targetDepth = originalDepth + 1; - if (context.IsStartOfDocument) - targetDepth += 1; + if (context.IsStartOfDocument) + targetDepth += 1; if (context.IsEmptyResponse) { return; @@ -97,12 +90,39 @@ private static void UnmarshallResult(XmlUnmarshallerContext context, GetObjectAc 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)) + { + if (errorResponse.Code != null && errorResponse.Code.Equals("NoSuchKey")) + { + return NoSuchKeyExceptionUnmarshaller.Instance.Unmarshall(contextCopy, errorResponse); + } + } + return base.ConstructS3Exception(context, errorResponse, innerException, statusCode); + } + partial void PostUnmarshallCustomization(XmlUnmarshallerContext context, GetObjectAclResponse response); - private static GetObjectAclResponseUnmarshaller _instance = new GetObjectAclResponseUnmarshaller(); + private static GetObjectAclResponseUnmarshaller _instance = new GetObjectAclResponseUnmarshaller(); internal static GetObjectAclResponseUnmarshaller GetInstance() { diff --git a/sdk/src/Services/S3/Generated/Model/Internal/MarshallTransformations/GetObjectAttributesResponseUnmarshaller.cs b/sdk/src/Services/S3/Generated/Model/Internal/MarshallTransformations/GetObjectAttributesResponseUnmarshaller.cs index ccced5c7a2a7..345f67a9f67c 100644 --- a/sdk/src/Services/S3/Generated/Model/Internal/MarshallTransformations/GetObjectAttributesResponseUnmarshaller.cs +++ b/sdk/src/Services/S3/Generated/Model/Internal/MarshallTransformations/GetObjectAttributesResponseUnmarshaller.cs @@ -36,7 +36,7 @@ namespace Amazon.S3.Model.Internal.MarshallTransformations /// /// Response Unmarshaller for GetObjectAttributes operation /// - public class GetObjectAttributesResponseUnmarshaller : S3ReponseUnmarshaller + public partial class GetObjectAttributesResponseUnmarshaller : S3ReponseUnmarshaller { /// /// Unmarshaller the response from the service to the response class. @@ -56,6 +56,7 @@ public override AmazonWebServiceResponse Unmarshall(XmlUnmarshallerContext conte if (context.ResponseData.IsHeaderPresent("x-amz-version-id")) response.VersionId = context.ResponseData.GetHeaderValue("x-amz-version-id"); + PostUnmarshallCustomization(context, response); return response; } @@ -109,7 +110,6 @@ private static void UnmarshallResult(XmlUnmarshallerContext context, GetObjectAt return; } } - return; } @@ -140,6 +140,8 @@ public override AmazonServiceException UnmarshallException(XmlUnmarshallerContex return base.ConstructS3Exception(context, errorResponse, innerException, statusCode); } + partial void PostUnmarshallCustomization(XmlUnmarshallerContext context, GetObjectAttributesResponse response); + private static GetObjectAttributesResponseUnmarshaller _instance = new GetObjectAttributesResponseUnmarshaller(); internal static GetObjectAttributesResponseUnmarshaller GetInstance() diff --git a/sdk/src/Services/S3/Generated/Model/Internal/MarshallTransformations/GetObjectLegalHoldResponseUnmarshaller.cs b/sdk/src/Services/S3/Generated/Model/Internal/MarshallTransformations/GetObjectLegalHoldResponseUnmarshaller.cs index 13b0e79b2164..e5f5dc6c5381 100644 --- a/sdk/src/Services/S3/Generated/Model/Internal/MarshallTransformations/GetObjectLegalHoldResponseUnmarshaller.cs +++ b/sdk/src/Services/S3/Generated/Model/Internal/MarshallTransformations/GetObjectLegalHoldResponseUnmarshaller.cs @@ -36,7 +36,7 @@ namespace Amazon.S3.Model.Internal.MarshallTransformations /// /// Response Unmarshaller for GetObjectLegalHold operation /// - public class GetObjectLegalHoldResponseUnmarshaller : S3ReponseUnmarshaller + public partial class GetObjectLegalHoldResponseUnmarshaller : S3ReponseUnmarshaller { /// /// Unmarshaller the response from the service to the response class. @@ -48,6 +48,7 @@ public override AmazonWebServiceResponse Unmarshall(XmlUnmarshallerContext conte GetObjectLegalHoldResponse response = new GetObjectLegalHoldResponse(); UnmarshallResult(context,response); + PostUnmarshallCustomization(context, response); return response; } @@ -75,7 +76,6 @@ private static void UnmarshallResult(XmlUnmarshallerContext context, GetObjectLe return; } } - return; } @@ -102,6 +102,8 @@ public override AmazonServiceException UnmarshallException(XmlUnmarshallerContex return base.ConstructS3Exception(context, errorResponse, innerException, statusCode); } + partial void PostUnmarshallCustomization(XmlUnmarshallerContext context, GetObjectLegalHoldResponse response); + private static GetObjectLegalHoldResponseUnmarshaller _instance = new GetObjectLegalHoldResponseUnmarshaller(); internal static GetObjectLegalHoldResponseUnmarshaller GetInstance() diff --git a/sdk/src/Services/S3/Generated/Model/Internal/MarshallTransformations/GetObjectLockConfigurationResponseUnmarshaller.cs b/sdk/src/Services/S3/Generated/Model/Internal/MarshallTransformations/GetObjectLockConfigurationResponseUnmarshaller.cs index e4e3bb39a265..96d9f37859f0 100644 --- a/sdk/src/Services/S3/Generated/Model/Internal/MarshallTransformations/GetObjectLockConfigurationResponseUnmarshaller.cs +++ b/sdk/src/Services/S3/Generated/Model/Internal/MarshallTransformations/GetObjectLockConfigurationResponseUnmarshaller.cs @@ -36,7 +36,7 @@ namespace Amazon.S3.Model.Internal.MarshallTransformations /// /// Response Unmarshaller for GetObjectLockConfiguration operation /// - public class GetObjectLockConfigurationResponseUnmarshaller : S3ReponseUnmarshaller + public partial class GetObjectLockConfigurationResponseUnmarshaller : S3ReponseUnmarshaller { /// /// Unmarshaller the response from the service to the response class. @@ -48,6 +48,7 @@ public override AmazonWebServiceResponse Unmarshall(XmlUnmarshallerContext conte GetObjectLockConfigurationResponse response = new GetObjectLockConfigurationResponse(); UnmarshallResult(context,response); + PostUnmarshallCustomization(context, response); return response; } @@ -75,7 +76,6 @@ private static void UnmarshallResult(XmlUnmarshallerContext context, GetObjectLo return; } } - return; } @@ -102,6 +102,8 @@ public override AmazonServiceException UnmarshallException(XmlUnmarshallerContex return base.ConstructS3Exception(context, errorResponse, innerException, statusCode); } + partial void PostUnmarshallCustomization(XmlUnmarshallerContext context, GetObjectLockConfigurationResponse response); + private static GetObjectLockConfigurationResponseUnmarshaller _instance = new GetObjectLockConfigurationResponseUnmarshaller(); internal static GetObjectLockConfigurationResponseUnmarshaller GetInstance() diff --git a/sdk/src/Services/S3/Generated/Model/Internal/MarshallTransformations/GetObjectMetadataRequestMarshaller.cs b/sdk/src/Services/S3/Generated/Model/Internal/MarshallTransformations/GetObjectMetadataRequestMarshaller.cs new file mode 100644 index 000000000000..27c4a3174247 --- /dev/null +++ b/sdk/src/Services/S3/Generated/Model/Internal/MarshallTransformations/GetObjectMetadataRequestMarshaller.cs @@ -0,0 +1,160 @@ +/* + * 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 +{ + /// + /// GetObjectMetadata Request Marshaller + /// + public partial class GetObjectMetadataRequestMarshaller : IMarshaller , IMarshaller + { + /// + /// Marshaller the request object to the HTTP request. + /// + /// + /// + public IRequest Marshall(AmazonWebServiceRequest input) + { + return this.Marshall((GetObjectMetadataRequest)input); + } + + /// + /// Marshaller the request object to the HTTP request. + /// + /// + /// + public IRequest Marshall(GetObjectMetadataRequest publicRequest) + { + var request = new DefaultRequest(publicRequest, "Amazon.S3"); + request.HttpMethod = "HEAD"; + + if (publicRequest.IsSetChecksumMode()) + { + request.Headers["x-amz-checksum-mode"] = publicRequest.ChecksumMode; + } + + if (publicRequest.IsSetEtagToMatch()) + { + request.Headers["If-Match"] = publicRequest.EtagToMatch; + } + + if (publicRequest.IsSetEtagToNotMatch()) + { + request.Headers["If-None-Match"] = publicRequest.EtagToNotMatch; + } + + if (publicRequest.IsSetExpectedBucketOwner()) + { + request.Headers["x-amz-expected-bucket-owner"] = publicRequest.ExpectedBucketOwner; + } + + if (publicRequest.IsSetModifiedSinceDate()) + { + request.Headers["If-Modified-Since"] = StringUtils.FromDateTimeToRFC822(publicRequest.ModifiedSinceDate); + } + + if (publicRequest.IsSetRange()) + { + request.Headers["Range"] = publicRequest.Range; + } + + if (publicRequest.IsSetRequestPayer()) + { + request.Headers["x-amz-request-payer"] = publicRequest.RequestPayer; + } + + if (publicRequest.IsSetServerSideEncryptionCustomerMethod()) + { + request.Headers["x-amz-server-side-encryption-customer-algorithm"] = StringUtils.FromString(publicRequest.ServerSideEncryptionCustomerMethod); + } + + if (publicRequest.IsSetUnmodifiedSinceDate()) + { + request.Headers["If-Unmodified-Since"] = StringUtils.FromDateTimeToRFC822(publicRequest.UnmodifiedSinceDate); + } + if (string.IsNullOrEmpty(publicRequest.BucketName)) + throw new System.ArgumentException("BucketName is a required property and must be set before making this call.", "GetObjectMetadataRequest.BucketName"); + if (string.IsNullOrEmpty(publicRequest.Key)) + throw new System.ArgumentException("Key is a required property and must be set before making this call.", "GetObjectMetadataRequest.Key"); + request.AddPathResource("{Key+}", StringUtils.FromString(publicRequest.Key)); + + if (publicRequest.IsSetPartNumber()) + request.AddSubResource("partNumber", StringUtils.FromInt(publicRequest.PartNumber)); + + if (publicRequest.IsSetResponseCacheControl()) + request.AddSubResource("response-cache-control", StringUtils.FromString(publicRequest.ResponseCacheControl)); + + if (publicRequest.IsSetResponseContentDisposition()) + request.AddSubResource("response-content-disposition", StringUtils.FromString(publicRequest.ResponseContentDisposition)); + + if (publicRequest.IsSetResponseContentEncoding()) + request.AddSubResource("response-content-encoding", StringUtils.FromString(publicRequest.ResponseContentEncoding)); + + if (publicRequest.IsSetResponseContentLanguage()) + request.AddSubResource("response-content-language", StringUtils.FromString(publicRequest.ResponseContentLanguage)); + + if (publicRequest.IsSetResponseContentType()) + request.AddSubResource("response-content-type", StringUtils.FromString(publicRequest.ResponseContentType)); + + if (publicRequest.IsSetResponseExpires()) + request.AddSubResource("response-expires", StringUtils.FromDateTimeToRFC822(publicRequest.ResponseExpires)); + + if (publicRequest.IsSetVersionId()) + request.AddSubResource("versionId", StringUtils.FromString(publicRequest.VersionId)); + request.ResourcePath = "/{Key+}"; + + PostMarshallCustomization(request, publicRequest); + request.UseQueryString = true; + return request; + } + private static GetObjectMetadataRequestMarshaller _instance = new GetObjectMetadataRequestMarshaller(); + + internal static GetObjectMetadataRequestMarshaller GetInstance() + { + return _instance; + } + + /// + /// Gets the singleton. + /// + public static GetObjectMetadataRequestMarshaller Instance + { + get + { + return _instance; + } + } + + partial void PostMarshallCustomization(DefaultRequest defaultRequest, GetObjectMetadataRequest publicRequest); + } +} \ No newline at end of file diff --git a/sdk/src/Services/S3/Generated/Model/Internal/MarshallTransformations/GetObjectMetadataResponseUnmarshaller.cs b/sdk/src/Services/S3/Generated/Model/Internal/MarshallTransformations/GetObjectMetadataResponseUnmarshaller.cs new file mode 100644 index 000000000000..edb00da0b342 --- /dev/null +++ b/sdk/src/Services/S3/Generated/Model/Internal/MarshallTransformations/GetObjectMetadataResponseUnmarshaller.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.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 GetObjectMetadata operation + /// + public partial class GetObjectMetadataResponseUnmarshaller : S3ReponseUnmarshaller + { + /// + /// Unmarshaller the response from the service to the response class. + /// + /// + /// + public override AmazonWebServiceResponse Unmarshall(XmlUnmarshallerContext context) + { + GetObjectMetadataResponse response = new GetObjectMetadataResponse(); + if (context.ResponseData.IsHeaderPresent("accept-ranges")) + response.AcceptRanges = context.ResponseData.GetHeaderValue("accept-ranges"); + if (context.ResponseData.IsHeaderPresent("x-amz-archive-status")) + response.ArchiveStatus = context.ResponseData.GetHeaderValue("x-amz-archive-status"); + if (context.ResponseData.IsHeaderPresent("x-amz-server-side-encryption-bucket-key-enabled")) + response.BucketKeyEnabled = bool.Parse(context.ResponseData.GetHeaderValue("x-amz-server-side-encryption-bucket-key-enabled")); + if (context.ResponseData.IsHeaderPresent("Cache-Control")) + response.CacheControl = context.ResponseData.GetHeaderValue("Cache-Control"); + if (context.ResponseData.IsHeaderPresent("x-amz-checksum-crc32")) + response.ChecksumCRC32 = context.ResponseData.GetHeaderValue("x-amz-checksum-crc32"); + if (context.ResponseData.IsHeaderPresent("x-amz-checksum-crc32c")) + response.ChecksumCRC32C = context.ResponseData.GetHeaderValue("x-amz-checksum-crc32c"); + if (context.ResponseData.IsHeaderPresent("x-amz-checksum-crc64nvme")) + response.ChecksumCRC64NVME = context.ResponseData.GetHeaderValue("x-amz-checksum-crc64nvme"); + if (context.ResponseData.IsHeaderPresent("x-amz-checksum-sha1")) + response.ChecksumSHA1 = context.ResponseData.GetHeaderValue("x-amz-checksum-sha1"); + if (context.ResponseData.IsHeaderPresent("x-amz-checksum-sha256")) + response.ChecksumSHA256 = context.ResponseData.GetHeaderValue("x-amz-checksum-sha256"); + if (context.ResponseData.IsHeaderPresent("x-amz-checksum-type")) + response.ChecksumType = context.ResponseData.GetHeaderValue("x-amz-checksum-type"); + if (context.ResponseData.IsHeaderPresent("Content-Disposition")) + response.ContentDisposition = context.ResponseData.GetHeaderValue("Content-Disposition"); + if (context.ResponseData.IsHeaderPresent("Content-Encoding")) + response.ContentEncoding = context.ResponseData.GetHeaderValue("Content-Encoding"); + if (context.ResponseData.IsHeaderPresent("Content-Language")) + response.ContentLanguage = context.ResponseData.GetHeaderValue("Content-Language"); + if (context.ResponseData.IsHeaderPresent("Content-Length")) + response.ContentLength = long.Parse(context.ResponseData.GetHeaderValue("Content-Length"), CultureInfo.InvariantCulture); + if (context.ResponseData.IsHeaderPresent("Content-Range")) + response.ContentRange = context.ResponseData.GetHeaderValue("Content-Range"); + if (context.ResponseData.IsHeaderPresent("Content-Type")) + response.ContentType = context.ResponseData.GetHeaderValue("Content-Type"); + if (context.ResponseData.IsHeaderPresent("ETag")) + response.ETag = context.ResponseData.GetHeaderValue("ETag"); + if (context.ResponseData.IsHeaderPresent("Last-Modified")) + response.LastModified = DateTime.Parse(context.ResponseData.GetHeaderValue("Last-Modified"), CultureInfo.InvariantCulture, DateTimeStyles.AssumeUniversal | DateTimeStyles.AdjustToUniversal); + if (context.ResponseData.IsHeaderPresent("x-amz-missing-meta")) + response.MissingMeta = int.Parse(context.ResponseData.GetHeaderValue("x-amz-missing-meta"), CultureInfo.InvariantCulture); + if (context.ResponseData.IsHeaderPresent("x-amz-object-lock-legal-hold")) + response.ObjectLockLegalHoldStatus = context.ResponseData.GetHeaderValue("x-amz-object-lock-legal-hold"); + if (context.ResponseData.IsHeaderPresent("x-amz-object-lock-mode")) + response.ObjectLockMode = context.ResponseData.GetHeaderValue("x-amz-object-lock-mode"); + if (context.ResponseData.IsHeaderPresent("x-amz-object-lock-retain-until-date")) + response.ObjectLockRetainUntilDate = DateTime.Parse(context.ResponseData.GetHeaderValue("x-amz-object-lock-retain-until-date"), CultureInfo.InvariantCulture, DateTimeStyles.AssumeUniversal | DateTimeStyles.AdjustToUniversal); + if (context.ResponseData.IsHeaderPresent("x-amz-mp-parts-count")) + response.PartsCount = int.Parse(context.ResponseData.GetHeaderValue("x-amz-mp-parts-count"), CultureInfo.InvariantCulture); + if (context.ResponseData.IsHeaderPresent("x-amz-replication-status")) + response.ReplicationStatus = context.ResponseData.GetHeaderValue("x-amz-replication-status"); + if (context.ResponseData.IsHeaderPresent("x-amz-request-charged")) + response.RequestCharged = context.ResponseData.GetHeaderValue("x-amz-request-charged"); + if (context.ResponseData.IsHeaderPresent("x-amz-server-side-encryption-customer-key-MD5")) + response.ServerSideEncryptionCustomerProvidedKeyMD5 = context.ResponseData.GetHeaderValue("x-amz-server-side-encryption-customer-key-MD5"); + if (context.ResponseData.IsHeaderPresent("x-amz-server-side-encryption-aws-kms-key-id")) + response.ServerSideEncryptionKeyManagementServiceKeyId = context.ResponseData.GetHeaderValue("x-amz-server-side-encryption-aws-kms-key-id"); + if (context.ResponseData.IsHeaderPresent("x-amz-storage-class")) + response.StorageClass = context.ResponseData.GetHeaderValue("x-amz-storage-class"); + if (context.ResponseData.IsHeaderPresent("x-amz-tagging-count")) + response.TagsCount = int.Parse(context.ResponseData.GetHeaderValue("x-amz-tagging-count"), CultureInfo.InvariantCulture); + if (context.ResponseData.IsHeaderPresent("x-amz-version-id")) + response.VersionId = context.ResponseData.GetHeaderValue("x-amz-version-id"); + if (context.ResponseData.IsHeaderPresent("x-amz-website-redirect-location")) + response.WebsiteRedirectLocation = context.ResponseData.GetHeaderValue("x-amz-website-redirect-location"); + + PostUnmarshallCustomization(context, response); + 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)) + { + if (errorResponse.Code != null && errorResponse.Code.Equals("NoSuchKey")) + { + return NoSuchKeyExceptionUnmarshaller.Instance.Unmarshall(contextCopy, errorResponse); + } + } + return base.ConstructS3Exception(context, errorResponse, innerException, statusCode); + } + + partial void PostUnmarshallCustomization(XmlUnmarshallerContext context, GetObjectMetadataResponse response); + + private static GetObjectMetadataResponseUnmarshaller _instance = new GetObjectMetadataResponseUnmarshaller(); + + internal static GetObjectMetadataResponseUnmarshaller GetInstance() + { + return _instance; + } + + /// + /// Gets the singleton. + /// + public static GetObjectMetadataResponseUnmarshaller Instance + { + get + { + return _instance; + } + } + + } +} \ No newline at end of file diff --git a/sdk/src/Services/S3/Generated/Model/Internal/MarshallTransformations/GetObjectRetentionResponseUnmarshaller.cs b/sdk/src/Services/S3/Generated/Model/Internal/MarshallTransformations/GetObjectRetentionResponseUnmarshaller.cs index d9994475206c..fb28e7571951 100644 --- a/sdk/src/Services/S3/Generated/Model/Internal/MarshallTransformations/GetObjectRetentionResponseUnmarshaller.cs +++ b/sdk/src/Services/S3/Generated/Model/Internal/MarshallTransformations/GetObjectRetentionResponseUnmarshaller.cs @@ -36,7 +36,7 @@ namespace Amazon.S3.Model.Internal.MarshallTransformations /// /// Response Unmarshaller for GetObjectRetention operation /// - public class GetObjectRetentionResponseUnmarshaller : S3ReponseUnmarshaller + public partial class GetObjectRetentionResponseUnmarshaller : S3ReponseUnmarshaller { /// /// Unmarshaller the response from the service to the response class. @@ -48,6 +48,7 @@ public override AmazonWebServiceResponse Unmarshall(XmlUnmarshallerContext conte GetObjectRetentionResponse response = new GetObjectRetentionResponse(); UnmarshallResult(context,response); + PostUnmarshallCustomization(context, response); return response; } @@ -75,7 +76,6 @@ private static void UnmarshallResult(XmlUnmarshallerContext context, GetObjectRe return; } } - return; } @@ -102,6 +102,8 @@ public override AmazonServiceException UnmarshallException(XmlUnmarshallerContex return base.ConstructS3Exception(context, errorResponse, innerException, statusCode); } + partial void PostUnmarshallCustomization(XmlUnmarshallerContext context, GetObjectRetentionResponse response); + private static GetObjectRetentionResponseUnmarshaller _instance = new GetObjectRetentionResponseUnmarshaller(); internal static GetObjectRetentionResponseUnmarshaller GetInstance() diff --git a/sdk/src/Services/S3/Generated/Model/Internal/MarshallTransformations/GetObjectTaggingResponseUnmarshaller.cs b/sdk/src/Services/S3/Generated/Model/Internal/MarshallTransformations/GetObjectTaggingResponseUnmarshaller.cs index 1f0b0931262f..0c8e54bd6d4e 100644 --- a/sdk/src/Services/S3/Generated/Model/Internal/MarshallTransformations/GetObjectTaggingResponseUnmarshaller.cs +++ b/sdk/src/Services/S3/Generated/Model/Internal/MarshallTransformations/GetObjectTaggingResponseUnmarshaller.cs @@ -36,7 +36,7 @@ namespace Amazon.S3.Model.Internal.MarshallTransformations /// /// Response Unmarshaller for GetObjectTagging operation /// - public class GetObjectTaggingResponseUnmarshaller : S3ReponseUnmarshaller + public partial class GetObjectTaggingResponseUnmarshaller : S3ReponseUnmarshaller { /// /// Unmarshaller the response from the service to the response class. @@ -50,6 +50,7 @@ public override AmazonWebServiceResponse Unmarshall(XmlUnmarshallerContext conte if (context.ResponseData.IsHeaderPresent("x-amz-version-id")) response.VersionId = context.ResponseData.GetHeaderValue("x-amz-version-id"); + PostUnmarshallCustomization(context, response); return response; } @@ -83,7 +84,6 @@ private static void UnmarshallResult(XmlUnmarshallerContext context, GetObjectTa return; } } - return; } @@ -110,6 +110,8 @@ public override AmazonServiceException UnmarshallException(XmlUnmarshallerContex return base.ConstructS3Exception(context, errorResponse, innerException, statusCode); } + partial void PostUnmarshallCustomization(XmlUnmarshallerContext context, GetObjectTaggingResponse response); + private static GetObjectTaggingResponseUnmarshaller _instance = new GetObjectTaggingResponseUnmarshaller(); internal static GetObjectTaggingResponseUnmarshaller GetInstance() diff --git a/sdk/src/Services/S3/Generated/Model/Internal/MarshallTransformations/GetPublicAccessBlockResponseUnmarshaller.cs b/sdk/src/Services/S3/Generated/Model/Internal/MarshallTransformations/GetPublicAccessBlockResponseUnmarshaller.cs index e4a4e487a330..69efbb8f15c0 100644 --- a/sdk/src/Services/S3/Generated/Model/Internal/MarshallTransformations/GetPublicAccessBlockResponseUnmarshaller.cs +++ b/sdk/src/Services/S3/Generated/Model/Internal/MarshallTransformations/GetPublicAccessBlockResponseUnmarshaller.cs @@ -36,7 +36,7 @@ namespace Amazon.S3.Model.Internal.MarshallTransformations /// /// Response Unmarshaller for GetPublicAccessBlock operation /// - public class GetPublicAccessBlockResponseUnmarshaller : S3ReponseUnmarshaller + public partial class GetPublicAccessBlockResponseUnmarshaller : S3ReponseUnmarshaller { /// /// Unmarshaller the response from the service to the response class. @@ -48,6 +48,7 @@ public override AmazonWebServiceResponse Unmarshall(XmlUnmarshallerContext conte GetPublicAccessBlockResponse response = new GetPublicAccessBlockResponse(); UnmarshallResult(context,response); + PostUnmarshallCustomization(context, response); return response; } @@ -75,7 +76,6 @@ private static void UnmarshallResult(XmlUnmarshallerContext context, GetPublicAc return; } } - return; } @@ -102,6 +102,8 @@ public override AmazonServiceException UnmarshallException(XmlUnmarshallerContex return base.ConstructS3Exception(context, errorResponse, innerException, statusCode); } + partial void PostUnmarshallCustomization(XmlUnmarshallerContext context, GetPublicAccessBlockResponse response); + private static GetPublicAccessBlockResponseUnmarshaller _instance = new GetPublicAccessBlockResponseUnmarshaller(); internal static GetPublicAccessBlockResponseUnmarshaller GetInstance() diff --git a/sdk/src/Services/S3/Generated/Model/Internal/MarshallTransformations/HeadBucketResponseUnmarshaller.cs b/sdk/src/Services/S3/Generated/Model/Internal/MarshallTransformations/HeadBucketResponseUnmarshaller.cs index d237f9f30fde..520f5cb23d5d 100644 --- a/sdk/src/Services/S3/Generated/Model/Internal/MarshallTransformations/HeadBucketResponseUnmarshaller.cs +++ b/sdk/src/Services/S3/Generated/Model/Internal/MarshallTransformations/HeadBucketResponseUnmarshaller.cs @@ -36,7 +36,7 @@ namespace Amazon.S3.Model.Internal.MarshallTransformations /// /// Response Unmarshaller for HeadBucket operation /// - public class HeadBucketResponseUnmarshaller : S3ReponseUnmarshaller + public partial class HeadBucketResponseUnmarshaller : S3ReponseUnmarshaller { /// /// Unmarshaller the response from the service to the response class. @@ -57,6 +57,7 @@ public override AmazonWebServiceResponse Unmarshall(XmlUnmarshallerContext conte if (context.ResponseData.IsHeaderPresent("x-amz-bucket-region")) response.BucketRegion = context.ResponseData.GetHeaderValue("x-amz-bucket-region"); + PostUnmarshallCustomization(context, response); return response; } @@ -87,6 +88,8 @@ public override AmazonServiceException UnmarshallException(XmlUnmarshallerContex return base.ConstructS3Exception(context, errorResponse, innerException, statusCode); } + partial void PostUnmarshallCustomization(XmlUnmarshallerContext context, HeadBucketResponse response); + private static HeadBucketResponseUnmarshaller _instance = new HeadBucketResponseUnmarshaller(); internal static HeadBucketResponseUnmarshaller GetInstance() diff --git a/sdk/src/Services/S3/Generated/Model/Internal/MarshallTransformations/InitiateMultipartUploadResponseUnmarshaller.cs b/sdk/src/Services/S3/Generated/Model/Internal/MarshallTransformations/InitiateMultipartUploadResponseUnmarshaller.cs index 4b145d16f8c3..69f53df29b1e 100644 --- a/sdk/src/Services/S3/Generated/Model/Internal/MarshallTransformations/InitiateMultipartUploadResponseUnmarshaller.cs +++ b/sdk/src/Services/S3/Generated/Model/Internal/MarshallTransformations/InitiateMultipartUploadResponseUnmarshaller.cs @@ -36,7 +36,7 @@ namespace Amazon.S3.Model.Internal.MarshallTransformations /// /// Response Unmarshaller for InitiateMultipartUpload operation /// - public class InitiateMultipartUploadResponseUnmarshaller : S3ReponseUnmarshaller + public partial class InitiateMultipartUploadResponseUnmarshaller : S3ReponseUnmarshaller { /// /// Unmarshaller the response from the service to the response class. @@ -70,6 +70,7 @@ public override AmazonWebServiceResponse Unmarshall(XmlUnmarshallerContext conte if (context.ResponseData.IsHeaderPresent("x-amz-server-side-encryption")) response.ServerSideEncryptionMethod = context.ResponseData.GetHeaderValue("x-amz-server-side-encryption"); + PostUnmarshallCustomization(context, response); return response; } @@ -111,7 +112,6 @@ private static void UnmarshallResult(XmlUnmarshallerContext context, InitiateMul return; } } - return; } @@ -138,6 +138,8 @@ public override AmazonServiceException UnmarshallException(XmlUnmarshallerContex return base.ConstructS3Exception(context, errorResponse, innerException, statusCode); } + partial void PostUnmarshallCustomization(XmlUnmarshallerContext context, InitiateMultipartUploadResponse response); + private static InitiateMultipartUploadResponseUnmarshaller _instance = new InitiateMultipartUploadResponseUnmarshaller(); internal static InitiateMultipartUploadResponseUnmarshaller GetInstance() diff --git a/sdk/src/Services/S3/Generated/Model/Internal/MarshallTransformations/ListBucketsResponseUnmarshaller.cs b/sdk/src/Services/S3/Generated/Model/Internal/MarshallTransformations/ListBucketsResponseUnmarshaller.cs index a6161ee9e185..d8c9d68ad949 100644 --- a/sdk/src/Services/S3/Generated/Model/Internal/MarshallTransformations/ListBucketsResponseUnmarshaller.cs +++ b/sdk/src/Services/S3/Generated/Model/Internal/MarshallTransformations/ListBucketsResponseUnmarshaller.cs @@ -36,7 +36,7 @@ namespace Amazon.S3.Model.Internal.MarshallTransformations /// /// Response Unmarshaller for ListBuckets operation /// - public class ListBucketsResponseUnmarshaller : S3ReponseUnmarshaller + public partial class ListBucketsResponseUnmarshaller : S3ReponseUnmarshaller { /// /// Unmarshaller the response from the service to the response class. @@ -48,6 +48,7 @@ public override AmazonWebServiceResponse Unmarshall(XmlUnmarshallerContext conte ListBucketsResponse response = new ListBucketsResponse(); UnmarshallResult(context,response); + PostUnmarshallCustomization(context, response); return response; } @@ -99,7 +100,6 @@ private static void UnmarshallResult(XmlUnmarshallerContext context, ListBuckets return; } } - return; } @@ -126,6 +126,8 @@ public override AmazonServiceException UnmarshallException(XmlUnmarshallerContex return base.ConstructS3Exception(context, errorResponse, innerException, statusCode); } + partial void PostUnmarshallCustomization(XmlUnmarshallerContext context, ListBucketsResponse response); + private static ListBucketsResponseUnmarshaller _instance = new ListBucketsResponseUnmarshaller(); internal static ListBucketsResponseUnmarshaller GetInstance() diff --git a/sdk/src/Services/S3/Generated/Model/Internal/MarshallTransformations/ListDirectoryBucketsResponseUnmarshaller.cs b/sdk/src/Services/S3/Generated/Model/Internal/MarshallTransformations/ListDirectoryBucketsResponseUnmarshaller.cs index 29d3a6b47252..bfc5af2fd309 100644 --- a/sdk/src/Services/S3/Generated/Model/Internal/MarshallTransformations/ListDirectoryBucketsResponseUnmarshaller.cs +++ b/sdk/src/Services/S3/Generated/Model/Internal/MarshallTransformations/ListDirectoryBucketsResponseUnmarshaller.cs @@ -36,7 +36,7 @@ namespace Amazon.S3.Model.Internal.MarshallTransformations /// /// Response Unmarshaller for ListDirectoryBuckets operation /// - public class ListDirectoryBucketsResponseUnmarshaller : S3ReponseUnmarshaller + public partial class ListDirectoryBucketsResponseUnmarshaller : S3ReponseUnmarshaller { /// /// Unmarshaller the response from the service to the response class. @@ -48,6 +48,7 @@ public override AmazonWebServiceResponse Unmarshall(XmlUnmarshallerContext conte ListDirectoryBucketsResponse response = new ListDirectoryBucketsResponse(); UnmarshallResult(context,response); + PostUnmarshallCustomization(context, response); return response; } @@ -87,7 +88,6 @@ private static void UnmarshallResult(XmlUnmarshallerContext context, ListDirecto return; } } - return; } @@ -114,6 +114,8 @@ public override AmazonServiceException UnmarshallException(XmlUnmarshallerContex return base.ConstructS3Exception(context, errorResponse, innerException, statusCode); } + partial void PostUnmarshallCustomization(XmlUnmarshallerContext context, ListDirectoryBucketsResponse response); + private static ListDirectoryBucketsResponseUnmarshaller _instance = new ListDirectoryBucketsResponseUnmarshaller(); internal static ListDirectoryBucketsResponseUnmarshaller GetInstance() diff --git a/sdk/src/Services/S3/Generated/Model/Internal/MarshallTransformations/ListObjectsV2RequestMarshaller.cs b/sdk/src/Services/S3/Generated/Model/Internal/MarshallTransformations/ListObjectsV2RequestMarshaller.cs new file mode 100644 index 000000000000..e34e608ef44f --- /dev/null +++ b/sdk/src/Services/S3/Generated/Model/Internal/MarshallTransformations/ListObjectsV2RequestMarshaller.cs @@ -0,0 +1,125 @@ +/* + * 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 +{ + /// + /// ListObjectsV2 Request Marshaller + /// + public partial class ListObjectsV2RequestMarshaller : IMarshaller , IMarshaller + { + /// + /// Marshaller the request object to the HTTP request. + /// + /// + /// + public IRequest Marshall(AmazonWebServiceRequest input) + { + return this.Marshall((ListObjectsV2Request)input); + } + + /// + /// Marshaller the request object to the HTTP request. + /// + /// + /// + public IRequest Marshall(ListObjectsV2Request publicRequest) + { + var request = new DefaultRequest(publicRequest, "Amazon.S3"); + request.HttpMethod = "GET"; + request.AddSubResource("list-type", "2"); + + if (publicRequest.IsSetExpectedBucketOwner()) + { + request.Headers["x-amz-expected-bucket-owner"] = publicRequest.ExpectedBucketOwner; + } + + if (publicRequest.IsSetOptionalObjectAttributes()) + { + request.Headers["x-amz-optional-object-attributes"] = StringUtils.FromList(publicRequest.OptionalObjectAttributes); + } + + 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.", "ListObjectsV2Request.BucketName"); + + if (publicRequest.IsSetContinuationToken()) + request.Parameters.Add("continuation-token", StringUtils.FromString(publicRequest.ContinuationToken)); + + if (publicRequest.IsSetDelimiter()) + request.Parameters.Add("delimiter", StringUtils.FromString(publicRequest.Delimiter)); + + if (publicRequest.IsSetEncoding()) + request.Parameters.Add("encoding-type", StringUtils.FromString(publicRequest.Encoding)); + + if (publicRequest.IsSetFetchOwner()) + request.Parameters.Add("fetch-owner", StringUtils.FromBool(publicRequest.FetchOwner)); + + if (publicRequest.IsSetMaxKeys()) + request.Parameters.Add("max-keys", StringUtils.FromInt(publicRequest.MaxKeys)); + + if (publicRequest.IsSetPrefix()) + request.Parameters.Add("prefix", StringUtils.FromString(publicRequest.Prefix)); + + if (publicRequest.IsSetStartAfter()) + request.Parameters.Add("start-after", StringUtils.FromString(publicRequest.StartAfter)); + request.ResourcePath = "/"; + + PostMarshallCustomization(request, publicRequest); + request.UseQueryString = true; + return request; + } + private static ListObjectsV2RequestMarshaller _instance = new ListObjectsV2RequestMarshaller(); + + internal static ListObjectsV2RequestMarshaller GetInstance() + { + return _instance; + } + + /// + /// Gets the singleton. + /// + public static ListObjectsV2RequestMarshaller Instance + { + get + { + return _instance; + } + } + + partial void PostMarshallCustomization(DefaultRequest defaultRequest, ListObjectsV2Request publicRequest); + } +} \ No newline at end of file diff --git a/sdk/src/Services/S3/Generated/Model/Internal/MarshallTransformations/ListObjectsV2ResponseUnmarshaller.cs b/sdk/src/Services/S3/Generated/Model/Internal/MarshallTransformations/ListObjectsV2ResponseUnmarshaller.cs new file mode 100644 index 000000000000..80d47cf05b62 --- /dev/null +++ b/sdk/src/Services/S3/Generated/Model/Internal/MarshallTransformations/ListObjectsV2ResponseUnmarshaller.cs @@ -0,0 +1,203 @@ +/* + * 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 ListObjectsV2 operation + /// + public partial class ListObjectsV2ResponseUnmarshaller : S3ReponseUnmarshaller + { + /// + /// Unmarshaller the response from the service to the response class. + /// + /// + /// + public override AmazonWebServiceResponse Unmarshall(XmlUnmarshallerContext context) + { + ListObjectsV2Response response = new ListObjectsV2Response(); + UnmarshallResult(context,response); + if (context.ResponseData.IsHeaderPresent("x-amz-request-charged")) + response.RequestCharged = context.ResponseData.GetHeaderValue("x-amz-request-charged"); + + PostUnmarshallCustomization(context, response); + return response; + } + + private static void UnmarshallResult(XmlUnmarshallerContext context, ListObjectsV2Response 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("CommonPrefixes", targetDepth)) + { + if (response.CommonPrefixes == null) + { + response.CommonPrefixes = new List(); + } + var unmarshaller = CommonPrefixesItemUnmarshaller.Instance; + response.CommonPrefixes.Add(unmarshaller.Unmarshall(context)); + continue; + } + if (context.TestExpression("ContinuationToken", targetDepth)) + { + var unmarshaller = StringUnmarshaller.Instance; + response.ContinuationToken = unmarshaller.Unmarshall(context); + continue; + } + if (context.TestExpression("Delimiter", targetDepth)) + { + var unmarshaller = StringUnmarshaller.Instance; + response.Delimiter = unmarshaller.Unmarshall(context); + continue; + } + if (context.TestExpression("EncodingType", targetDepth)) + { + var unmarshaller = StringUnmarshaller.Instance; + response.Encoding = unmarshaller.Unmarshall(context); + continue; + } + if (context.TestExpression("IsTruncated", targetDepth)) + { + var unmarshaller = NullableBoolUnmarshaller.Instance; + response.IsTruncated = unmarshaller.Unmarshall(context); + continue; + } + if (context.TestExpression("KeyCount", targetDepth)) + { + var unmarshaller = NullableIntUnmarshaller.Instance; + response.KeyCount = unmarshaller.Unmarshall(context); + continue; + } + if (context.TestExpression("MaxKeys", targetDepth)) + { + var unmarshaller = NullableIntUnmarshaller.Instance; + response.MaxKeys = unmarshaller.Unmarshall(context); + continue; + } + if (context.TestExpression("Name", targetDepth)) + { + var unmarshaller = StringUnmarshaller.Instance; + response.Name = unmarshaller.Unmarshall(context); + continue; + } + if (context.TestExpression("NextContinuationToken", targetDepth)) + { + var unmarshaller = StringUnmarshaller.Instance; + response.NextContinuationToken = unmarshaller.Unmarshall(context); + continue; + } + if (context.TestExpression("Prefix", targetDepth)) + { + var unmarshaller = StringUnmarshaller.Instance; + response.Prefix = unmarshaller.Unmarshall(context); + continue; + } + if (context.TestExpression("Contents", targetDepth)) + { + CustomContentsUnmarshall(context, response); + continue; + } + if (context.TestExpression("StartAfter", targetDepth)) + { + var unmarshaller = StringUnmarshaller.Instance; + response.StartAfter = 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)) + { + if (errorResponse.Code != null && errorResponse.Code.Equals("NoSuchBucket")) + { + return NoSuchBucketExceptionUnmarshaller.Instance.Unmarshall(contextCopy, errorResponse); + } + } + return base.ConstructS3Exception(context, errorResponse, innerException, statusCode); + } + + partial void PostUnmarshallCustomization(XmlUnmarshallerContext context, ListObjectsV2Response response); + + private static ListObjectsV2ResponseUnmarshaller _instance = new ListObjectsV2ResponseUnmarshaller(); + + internal static ListObjectsV2ResponseUnmarshaller GetInstance() + { + return _instance; + } + + /// + /// Gets the singleton. + /// + public static ListObjectsV2ResponseUnmarshaller Instance + { + get + { + return _instance; + } + } + + } +} \ No newline at end of file diff --git a/sdk/src/Services/S3/Generated/Model/Internal/MarshallTransformations/ListPartsResponseUnmarshaller.cs b/sdk/src/Services/S3/Generated/Model/Internal/MarshallTransformations/ListPartsResponseUnmarshaller.cs index c792d1cf20da..894bf5a8a101 100644 --- a/sdk/src/Services/S3/Generated/Model/Internal/MarshallTransformations/ListPartsResponseUnmarshaller.cs +++ b/sdk/src/Services/S3/Generated/Model/Internal/MarshallTransformations/ListPartsResponseUnmarshaller.cs @@ -36,7 +36,7 @@ namespace Amazon.S3.Model.Internal.MarshallTransformations /// /// Response Unmarshaller for ListParts operation /// - public class ListPartsResponseUnmarshaller : S3ReponseUnmarshaller + public partial class ListPartsResponseUnmarshaller : S3ReponseUnmarshaller { /// /// Unmarshaller the response from the service to the response class. @@ -54,6 +54,7 @@ public override AmazonWebServiceResponse Unmarshall(XmlUnmarshallerContext conte if (context.ResponseData.IsHeaderPresent("x-amz-request-charged")) response.RequestCharged = context.ResponseData.GetHeaderValue("x-amz-request-charged"); + PostUnmarshallCustomization(context, response); return response; } @@ -159,7 +160,6 @@ private static void UnmarshallResult(XmlUnmarshallerContext context, ListPartsRe return; } } - return; } @@ -186,6 +186,8 @@ public override AmazonServiceException UnmarshallException(XmlUnmarshallerContex return base.ConstructS3Exception(context, errorResponse, innerException, statusCode); } + partial void PostUnmarshallCustomization(XmlUnmarshallerContext context, ListPartsResponse response); + private static ListPartsResponseUnmarshaller _instance = new ListPartsResponseUnmarshaller(); internal static ListPartsResponseUnmarshaller GetInstance() diff --git a/sdk/src/Services/S3/Generated/Model/Internal/MarshallTransformations/ListVersionsRequestMarshaller.cs b/sdk/src/Services/S3/Generated/Model/Internal/MarshallTransformations/ListVersionsRequestMarshaller.cs new file mode 100644 index 000000000000..8f9ee0b748e5 --- /dev/null +++ b/sdk/src/Services/S3/Generated/Model/Internal/MarshallTransformations/ListVersionsRequestMarshaller.cs @@ -0,0 +1,122 @@ +/* + * 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 +{ + /// + /// ListVersions Request Marshaller + /// + public partial class ListVersionsRequestMarshaller : IMarshaller , IMarshaller + { + /// + /// Marshaller the request object to the HTTP request. + /// + /// + /// + public IRequest Marshall(AmazonWebServiceRequest input) + { + return this.Marshall((ListVersionsRequest)input); + } + + /// + /// Marshaller the request object to the HTTP request. + /// + /// + /// + public IRequest Marshall(ListVersionsRequest publicRequest) + { + var request = new DefaultRequest(publicRequest, "Amazon.S3"); + request.HttpMethod = "GET"; + request.AddSubResource("versions"); + + if (publicRequest.IsSetExpectedBucketOwner()) + { + request.Headers["x-amz-expected-bucket-owner"] = publicRequest.ExpectedBucketOwner; + } + + if (publicRequest.IsSetOptionalObjectAttributes()) + { + request.Headers["x-amz-optional-object-attributes"] = StringUtils.FromList(publicRequest.OptionalObjectAttributes); + } + + 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.", "ListVersionsRequest.BucketName"); + + if (publicRequest.IsSetDelimiter()) + request.Parameters.Add("delimiter", StringUtils.FromString(publicRequest.Delimiter)); + + if (publicRequest.IsSetEncoding()) + request.Parameters.Add("encoding-type", StringUtils.FromString(publicRequest.Encoding)); + + if (publicRequest.IsSetKeyMarker()) + request.Parameters.Add("key-marker", StringUtils.FromString(publicRequest.KeyMarker)); + + if (publicRequest.IsSetMaxKeys()) + request.Parameters.Add("max-keys", StringUtils.FromInt(publicRequest.MaxKeys)); + + if (publicRequest.IsSetPrefix()) + request.Parameters.Add("prefix", StringUtils.FromString(publicRequest.Prefix)); + + if (publicRequest.IsSetVersionIdMarker()) + request.Parameters.Add("version-id-marker", StringUtils.FromString(publicRequest.VersionIdMarker)); + request.ResourcePath = "/"; + + PostMarshallCustomization(request, publicRequest); + request.UseQueryString = true; + return request; + } + private static ListVersionsRequestMarshaller _instance = new ListVersionsRequestMarshaller(); + + internal static ListVersionsRequestMarshaller GetInstance() + { + return _instance; + } + + /// + /// Gets the singleton. + /// + public static ListVersionsRequestMarshaller Instance + { + get + { + return _instance; + } + } + + partial void PostMarshallCustomization(DefaultRequest defaultRequest, ListVersionsRequest publicRequest); + } +} \ No newline at end of file diff --git a/sdk/src/Services/S3/Generated/Model/Internal/MarshallTransformations/ListVersionsResponseUnmarshaller.cs b/sdk/src/Services/S3/Generated/Model/Internal/MarshallTransformations/ListVersionsResponseUnmarshaller.cs new file mode 100644 index 000000000000..4a3b6240fdb5 --- /dev/null +++ b/sdk/src/Services/S3/Generated/Model/Internal/MarshallTransformations/ListVersionsResponseUnmarshaller.cs @@ -0,0 +1,204 @@ +/* + * 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 ListVersions operation + /// + public partial class ListVersionsResponseUnmarshaller : S3ReponseUnmarshaller + { + /// + /// Unmarshaller the response from the service to the response class. + /// + /// + /// + public override AmazonWebServiceResponse Unmarshall(XmlUnmarshallerContext context) + { + ListVersionsResponse response = new ListVersionsResponse(); + UnmarshallResult(context,response); + if (context.ResponseData.IsHeaderPresent("x-amz-request-charged")) + response.RequestCharged = context.ResponseData.GetHeaderValue("x-amz-request-charged"); + + PostUnmarshallCustomization(context, response); + return response; + } + + private static void UnmarshallResult(XmlUnmarshallerContext context, ListVersionsResponse 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("CommonPrefixes", targetDepth)) + { + if (response.CommonPrefixes == null) + { + response.CommonPrefixes = new List(); + } + var unmarshaller = CommonPrefixesItemUnmarshaller.Instance; + response.CommonPrefixes.Add(unmarshaller.Unmarshall(context)); + continue; + } + if (context.TestExpression("DeleteMarker", targetDepth)) + { + DeleteItemCustomUnmarshall(context, response); + continue; + } + if (context.TestExpression("Delimiter", targetDepth)) + { + var unmarshaller = StringUnmarshaller.Instance; + response.Delimiter = unmarshaller.Unmarshall(context); + continue; + } + if (context.TestExpression("EncodingType", targetDepth)) + { + var unmarshaller = StringUnmarshaller.Instance; + response.Encoding = unmarshaller.Unmarshall(context); + continue; + } + if (context.TestExpression("IsTruncated", targetDepth)) + { + var unmarshaller = NullableBoolUnmarshaller.Instance; + response.IsTruncated = unmarshaller.Unmarshall(context); + continue; + } + if (context.TestExpression("KeyMarker", targetDepth)) + { + var unmarshaller = StringUnmarshaller.Instance; + response.KeyMarker = unmarshaller.Unmarshall(context); + continue; + } + if (context.TestExpression("MaxKeys", targetDepth)) + { + var unmarshaller = NullableIntUnmarshaller.Instance; + response.MaxKeys = unmarshaller.Unmarshall(context); + continue; + } + if (context.TestExpression("Name", targetDepth)) + { + var unmarshaller = StringUnmarshaller.Instance; + response.Name = unmarshaller.Unmarshall(context); + continue; + } + if (context.TestExpression("NextKeyMarker", targetDepth)) + { + var unmarshaller = StringUnmarshaller.Instance; + response.NextKeyMarker = unmarshaller.Unmarshall(context); + continue; + } + if (context.TestExpression("NextVersionIdMarker", targetDepth)) + { + var unmarshaller = StringUnmarshaller.Instance; + response.NextVersionIdMarker = unmarshaller.Unmarshall(context); + continue; + } + if (context.TestExpression("Prefix", targetDepth)) + { + var unmarshaller = StringUnmarshaller.Instance; + response.Prefix = unmarshaller.Unmarshall(context); + continue; + } + if (context.TestExpression("VersionIdMarker", targetDepth)) + { + var unmarshaller = StringUnmarshaller.Instance; + response.VersionIdMarker = unmarshaller.Unmarshall(context); + continue; + } + if (context.TestExpression("Version", targetDepth)) + { + VersionsItemCustomUnmarshall(context, response); + 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); + } + + partial void PostUnmarshallCustomization(XmlUnmarshallerContext context, ListVersionsResponse response); + + private static ListVersionsResponseUnmarshaller _instance = new ListVersionsResponseUnmarshaller(); + + internal static ListVersionsResponseUnmarshaller GetInstance() + { + return _instance; + } + + /// + /// Gets the singleton. + /// + public static ListVersionsResponseUnmarshaller Instance + { + get + { + return _instance; + } + } + + } +} \ No newline at end of file diff --git a/sdk/src/Services/S3/Custom/Model/Internal/MarshallTransformations/PutBucketACLRequestMarshaller.cs b/sdk/src/Services/S3/Generated/Model/Internal/MarshallTransformations/PutBucketAclRequestMarshaller.cs similarity index 60% rename from sdk/src/Services/S3/Custom/Model/Internal/MarshallTransformations/PutBucketACLRequestMarshaller.cs rename to sdk/src/Services/S3/Generated/Model/Internal/MarshallTransformations/PutBucketAclRequestMarshaller.cs index f161c9157e9a..905da432cbd0 100644 --- a/sdk/src/Services/S3/Custom/Model/Internal/MarshallTransformations/PutBucketACLRequestMarshaller.cs +++ b/sdk/src/Services/S3/Generated/Model/Internal/MarshallTransformations/PutBucketAclRequestMarshaller.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"). @@ -29,8 +29,6 @@ using Amazon.Runtime.Internal.Transform; using Amazon.Runtime.Internal.Util; using System.Xml; -using Amazon.Util; -using Amazon.S3.Util; #pragma warning disable CS0612,CS0618 namespace Amazon.S3.Model.Internal.MarshallTransformations @@ -38,7 +36,7 @@ namespace Amazon.S3.Model.Internal.MarshallTransformations /// /// PutBucketAcl Request Marshaller /// - public class PutBucketAclRequestMarshaller : IMarshaller, IMarshaller + public partial class PutBucketAclRequestMarshaller : IMarshaller , IMarshaller { /// /// Marshaller the request object to the HTTP request. @@ -60,132 +58,126 @@ public IRequest Marshall(PutBucketAclRequest publicRequest) var request = new DefaultRequest(publicRequest, "Amazon.S3"); request.HttpMethod = "PUT"; request.AddSubResource("acl"); - - if (publicRequest.IsSetACL()) + + if (publicRequest.IsSetACL()) { request.Headers["x-amz-acl"] = publicRequest.ACL; } - - if (publicRequest.IsSetChecksumAlgorithm()) + + if (publicRequest.IsSetChecksumAlgorithm()) { request.Headers["x-amz-sdk-checksum-algorithm"] = publicRequest.ChecksumAlgorithm; } - - if (publicRequest.IsSetContentMD5()) + + if (publicRequest.IsSetContentMD5()) { request.Headers["Content-MD5"] = publicRequest.ContentMD5; } - - if (publicRequest.IsSetExpectedBucketOwner()) + + if (publicRequest.IsSetExpectedBucketOwner()) { request.Headers["x-amz-expected-bucket-owner"] = publicRequest.ExpectedBucketOwner; } - - if (publicRequest.IsSetGrantFullControl()) + + if (publicRequest.IsSetGrantFullControl()) { request.Headers["x-amz-grant-full-control"] = publicRequest.GrantFullControl; } - - if (publicRequest.IsSetGrantRead()) + + if (publicRequest.IsSetGrantRead()) { request.Headers["x-amz-grant-read"] = publicRequest.GrantRead; } - - if (publicRequest.IsSetGrantReadACP()) + + if (publicRequest.IsSetGrantReadACP()) { request.Headers["x-amz-grant-read-acp"] = publicRequest.GrantReadACP; } - - if (publicRequest.IsSetGrantWrite()) + + if (publicRequest.IsSetGrantWrite()) { request.Headers["x-amz-grant-write"] = publicRequest.GrantWrite; } - - if (publicRequest.IsSetGrantWriteACP()) + + if (publicRequest.IsSetGrantWriteACP()) { request.Headers["x-amz-grant-write-acp"] = publicRequest.GrantWriteACP; } if (!publicRequest.IsSetBucketName()) throw new AmazonS3Exception("Request object does not have required field BucketName set"); - + 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.IsSetAccessControlPolicy()) { - xmlWriter.WriteStartElement("AccessControlPolicy", S3Constants.S3RequestXmlNamespace); + xmlWriter.WriteStartElement("AccessControlPolicy", "http://s3.amazonaws.com/doc/2006-03-01/"); var publicRequestAccessControlPolicyGrants = publicRequest.AccessControlPolicy.Grants; - if (publicRequestAccessControlPolicyGrants != null && (publicRequestAccessControlPolicyGrants.Count > 0 || !AWSConfigs.InitializeCollections)) + if (publicRequestAccessControlPolicyGrants != null && (publicRequestAccessControlPolicyGrants.Count > 0 || !AWSConfigs.InitializeCollections)) { xmlWriter.WriteStartElement("AccessControlList"); - foreach (var publicRequestAccessControlPolicyGrantsValue in publicRequestAccessControlPolicyGrants) + foreach (var publicRequestAccessControlPolicyGrantsValue in publicRequestAccessControlPolicyGrants) + { + if (publicRequestAccessControlPolicyGrantsValue != null) { xmlWriter.WriteStartElement("Grant"); - if (publicRequestAccessControlPolicyGrantsValue != null) + if (publicRequestAccessControlPolicyGrantsValue.Grantee != null) { - if (publicRequestAccessControlPolicyGrantsValue.Grantee != null) - { - xmlWriter.WriteStartElement( "xsi","Grantee", "http://www.w3.org/2001/XMLSchema-instance"); - if (publicRequestAccessControlPolicyGrantsValue.Grantee.IsSetType()) - xmlWriter.WriteAttributeString("xsi", "type", "http://www.w3.org/2001/XMLSchema-instance", S3Transforms.ToXmlStringValue(publicRequestAccessControlPolicyGrantsValue.Grantee.Type)); - if (publicRequestAccessControlPolicyGrantsValue.Grantee.IsSetDisplayName()) - xmlWriter.WriteElementString("DisplayName",S3Transforms.ToXmlStringValue(publicRequestAccessControlPolicyGrantsValue.Grantee.DisplayName)); - - if (publicRequestAccessControlPolicyGrantsValue.Grantee.IsSetEmailAddress()) - xmlWriter.WriteElementString("EmailAddress", S3Transforms.ToXmlStringValue(publicRequestAccessControlPolicyGrantsValue.Grantee.EmailAddress)); - - if (publicRequestAccessControlPolicyGrantsValue.Grantee.IsSetCanonicalUser()) - xmlWriter.WriteElementString("ID", S3Transforms.ToXmlStringValue(publicRequestAccessControlPolicyGrantsValue.Grantee.CanonicalUser)); - - if (publicRequestAccessControlPolicyGrantsValue.Grantee.IsSetURI()) - xmlWriter.WriteElementString("URI", S3Transforms.ToXmlStringValue(publicRequestAccessControlPolicyGrantsValue.Grantee.URI)); - xmlWriter.WriteEndElement(); - } - if (publicRequestAccessControlPolicyGrantsValue.IsSetPermission()) - xmlWriter.WriteElementString("Permission", S3Transforms.ToXmlStringValue(publicRequestAccessControlPolicyGrantsValue.Permission)); - + xmlWriter.WriteStartElement("xsi","Grantee","http://www.w3.org/2001/XMLSchema-instance"); + if(publicRequestAccessControlPolicyGrantsValue.Grantee.IsSetCanonicalUser()) + xmlWriter.WriteElementString("ID", StringUtils.FromString(publicRequestAccessControlPolicyGrantsValue.Grantee.CanonicalUser)); + if(publicRequestAccessControlPolicyGrantsValue.Grantee.IsSetDisplayName()) + xmlWriter.WriteElementString("DisplayName", StringUtils.FromString(publicRequestAccessControlPolicyGrantsValue.Grantee.DisplayName)); + if(publicRequestAccessControlPolicyGrantsValue.Grantee.IsSetEmailAddress()) + xmlWriter.WriteElementString("EmailAddress", StringUtils.FromString(publicRequestAccessControlPolicyGrantsValue.Grantee.EmailAddress)); + if(publicRequestAccessControlPolicyGrantsValue.Grantee.IsSetType()) + xmlWriter.WriteAttributeString("xsi","type", "http://www.w3.org/2001/XMLSchema-instance",StringUtils.FromString(publicRequestAccessControlPolicyGrantsValue.Grantee.Type)); + if(publicRequestAccessControlPolicyGrantsValue.Grantee.IsSetURI()) + xmlWriter.WriteElementString("URI", StringUtils.FromString(publicRequestAccessControlPolicyGrantsValue.Grantee.URI)); xmlWriter.WriteEndElement(); } + if(publicRequestAccessControlPolicyGrantsValue.IsSetPermission()) + xmlWriter.WriteElementString("Permission", StringUtils.FromString(publicRequestAccessControlPolicyGrantsValue.Permission)); + xmlWriter.WriteEndElement(); } - xmlWriter.WriteEndElement(); + } + xmlWriter.WriteEndElement(); } if (publicRequest.AccessControlPolicy.Owner != null) { xmlWriter.WriteStartElement("Owner"); - if (publicRequest.AccessControlPolicy.Owner.IsSetDisplayName()) - xmlWriter.WriteElementString("DisplayName", S3Transforms.ToXmlStringValue(publicRequest.AccessControlPolicy.Owner.DisplayName)); - - if (publicRequest.AccessControlPolicy.Owner.IsSetId()) - xmlWriter.WriteElementString("ID", S3Transforms.ToXmlStringValue(publicRequest.AccessControlPolicy.Owner.Id)); - + if(publicRequest.AccessControlPolicy.Owner.IsSetDisplayName()) + xmlWriter.WriteElementString("DisplayName", StringUtils.FromString(publicRequest.AccessControlPolicy.Owner.DisplayName)); + if(publicRequest.AccessControlPolicy.Owner.IsSetId()) + xmlWriter.WriteElementString("ID", StringUtils.FromString(publicRequest.AccessControlPolicy.Owner.Id)); xmlWriter.WriteEndElement(); } xmlWriter.WriteEndElement(); } } - try + PostMarshallCustomization(request, publicRequest); + try { string content = stringWriter.ToString(); - request.Content = Encoding.UTF8.GetBytes(content); - request.Headers[HeaderKeys.ContentTypeHeader] = "application/xml"; - + request.Content = System.Text.Encoding.UTF8.GetBytes(content); + request.Headers["Content-Type"] = "application/xml"; ChecksumUtils.SetChecksumData( request, publicRequest.ChecksumAlgorithm, fallbackToMD5: false, isRequestChecksumRequired: true, - headerName: S3Constants.AmzHeaderSdkChecksumAlgorithm + headerName: "x-amz-sdk-checksum-algorithm" ); - } - catch (EncoderFallbackException e) + request.Headers[Amazon.Util.HeaderKeys.XAmzApiVersion] = "2006-03-01"; + } + catch (EncoderFallbackException e) { throw new AmazonServiceException("Unable to marshall request to XML", e); } - return request; } - private static PutBucketAclRequestMarshaller _instance = new PutBucketAclRequestMarshaller(); + private static PutBucketAclRequestMarshaller _instance = new PutBucketAclRequestMarshaller(); internal static PutBucketAclRequestMarshaller GetInstance() { @@ -203,5 +195,6 @@ public static PutBucketAclRequestMarshaller Instance } } - } + partial void PostMarshallCustomization(DefaultRequest defaultRequest, PutBucketAclRequest publicRequest); + } } \ No newline at end of file diff --git a/sdk/src/Services/S3/Custom/Model/Internal/MarshallTransformations/PutBucketACLResponseUnmarshaller.cs b/sdk/src/Services/S3/Generated/Model/Internal/MarshallTransformations/PutBucketAclResponseUnmarshaller.cs similarity index 60% rename from sdk/src/Services/S3/Custom/Model/Internal/MarshallTransformations/PutBucketACLResponseUnmarshaller.cs rename to sdk/src/Services/S3/Generated/Model/Internal/MarshallTransformations/PutBucketAclResponseUnmarshaller.cs index fc4bd18f4e0a..f3d2990e205d 100644 --- a/sdk/src/Services/S3/Custom/Model/Internal/MarshallTransformations/PutBucketACLResponseUnmarshaller.cs +++ b/sdk/src/Services/S3/Generated/Model/Internal/MarshallTransformations/PutBucketAclResponseUnmarshaller.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"). @@ -36,7 +36,7 @@ namespace Amazon.S3.Model.Internal.MarshallTransformations /// /// Response Unmarshaller for PutBucketAcl operation /// - public class PutBucketAclResponseUnmarshaller : S3ReponseUnmarshaller + public partial class PutBucketAclResponseUnmarshaller : S3ReponseUnmarshaller { /// /// Unmarshaller the response from the service to the response class. @@ -46,11 +46,37 @@ public class PutBucketAclResponseUnmarshaller : S3ReponseUnmarshaller public override AmazonWebServiceResponse Unmarshall(XmlUnmarshallerContext context) { PutBucketAclResponse response = new PutBucketAclResponse(); - + + PostUnmarshallCustomization(context, response); 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 PutBucketAclResponseUnmarshaller _instance = new PutBucketAclResponseUnmarshaller(); + partial void PostUnmarshallCustomization(XmlUnmarshallerContext context, PutBucketAclResponse response); + + private static PutBucketAclResponseUnmarshaller _instance = new PutBucketAclResponseUnmarshaller(); internal static PutBucketAclResponseUnmarshaller GetInstance() { diff --git a/sdk/src/Services/S3/Generated/Model/Internal/MarshallTransformations/PutBucketEncryptionRequestMarshaller.cs b/sdk/src/Services/S3/Generated/Model/Internal/MarshallTransformations/PutBucketEncryptionRequestMarshaller.cs index 6914d7723d58..c7402ef4dc57 100644 --- a/sdk/src/Services/S3/Generated/Model/Internal/MarshallTransformations/PutBucketEncryptionRequestMarshaller.cs +++ b/sdk/src/Services/S3/Generated/Model/Internal/MarshallTransformations/PutBucketEncryptionRequestMarshaller.cs @@ -115,8 +115,6 @@ public IRequest Marshall(PutBucketEncryptionRequest publicRequest) 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, diff --git a/sdk/src/Services/S3/Generated/Model/Internal/MarshallTransformations/PutBucketEncryptionResponseUnmarshaller.cs b/sdk/src/Services/S3/Generated/Model/Internal/MarshallTransformations/PutBucketEncryptionResponseUnmarshaller.cs index ba640ee35990..f92ad1db865a 100644 --- a/sdk/src/Services/S3/Generated/Model/Internal/MarshallTransformations/PutBucketEncryptionResponseUnmarshaller.cs +++ b/sdk/src/Services/S3/Generated/Model/Internal/MarshallTransformations/PutBucketEncryptionResponseUnmarshaller.cs @@ -36,7 +36,7 @@ namespace Amazon.S3.Model.Internal.MarshallTransformations /// /// Response Unmarshaller for PutBucketEncryption operation /// - public class PutBucketEncryptionResponseUnmarshaller : S3ReponseUnmarshaller + public partial class PutBucketEncryptionResponseUnmarshaller : S3ReponseUnmarshaller { /// /// Unmarshaller the response from the service to the response class. @@ -47,6 +47,7 @@ public override AmazonWebServiceResponse Unmarshall(XmlUnmarshallerContext conte { PutBucketEncryptionResponse response = new PutBucketEncryptionResponse(); + PostUnmarshallCustomization(context, response); return response; } @@ -73,6 +74,8 @@ public override AmazonServiceException UnmarshallException(XmlUnmarshallerContex return base.ConstructS3Exception(context, errorResponse, innerException, statusCode); } + partial void PostUnmarshallCustomization(XmlUnmarshallerContext context, PutBucketEncryptionResponse response); + private static PutBucketEncryptionResponseUnmarshaller _instance = new PutBucketEncryptionResponseUnmarshaller(); internal static PutBucketEncryptionResponseUnmarshaller GetInstance() diff --git a/sdk/src/Services/S3/Generated/Model/Internal/MarshallTransformations/PutBucketNotificationResponseUnmarshaller.cs b/sdk/src/Services/S3/Generated/Model/Internal/MarshallTransformations/PutBucketNotificationResponseUnmarshaller.cs index 9c305f853340..00431c7ec889 100644 --- a/sdk/src/Services/S3/Generated/Model/Internal/MarshallTransformations/PutBucketNotificationResponseUnmarshaller.cs +++ b/sdk/src/Services/S3/Generated/Model/Internal/MarshallTransformations/PutBucketNotificationResponseUnmarshaller.cs @@ -36,7 +36,7 @@ namespace Amazon.S3.Model.Internal.MarshallTransformations /// /// Response Unmarshaller for PutBucketNotification operation /// - public class PutBucketNotificationResponseUnmarshaller : S3ReponseUnmarshaller + public partial class PutBucketNotificationResponseUnmarshaller : S3ReponseUnmarshaller { /// /// Unmarshaller the response from the service to the response class. @@ -47,6 +47,7 @@ public override AmazonWebServiceResponse Unmarshall(XmlUnmarshallerContext conte { PutBucketNotificationResponse response = new PutBucketNotificationResponse(); + PostUnmarshallCustomization(context, response); return response; } @@ -73,6 +74,8 @@ public override AmazonServiceException UnmarshallException(XmlUnmarshallerContex return base.ConstructS3Exception(context, errorResponse, innerException, statusCode); } + partial void PostUnmarshallCustomization(XmlUnmarshallerContext context, PutBucketNotificationResponse response); + private static PutBucketNotificationResponseUnmarshaller _instance = new PutBucketNotificationResponseUnmarshaller(); internal static PutBucketNotificationResponseUnmarshaller GetInstance() diff --git a/sdk/src/Services/S3/Generated/Model/Internal/MarshallTransformations/PutBucketPolicyRequestMarshaller.cs b/sdk/src/Services/S3/Generated/Model/Internal/MarshallTransformations/PutBucketPolicyRequestMarshaller.cs index 47b00e8ae725..4d325285e4ad 100644 --- a/sdk/src/Services/S3/Generated/Model/Internal/MarshallTransformations/PutBucketPolicyRequestMarshaller.cs +++ b/sdk/src/Services/S3/Generated/Model/Internal/MarshallTransformations/PutBucketPolicyRequestMarshaller.cs @@ -84,8 +84,6 @@ public IRequest Marshall(PutBucketPolicyRequest publicRequest) request.Content = Encoding.UTF8.GetBytes(StringUtils.FromString(publicRequest.Policy)); request.Headers["Content-Type"] = "text/plain"; PostMarshallCustomization(request, publicRequest); - if (publicRequest.IsSetContentMD5()) - request.Headers[Amazon.Util.HeaderKeys.ContentMD5Header] = publicRequest.ContentMD5; ChecksumUtils.SetChecksumData( request, publicRequest.ChecksumAlgorithm, diff --git a/sdk/src/Services/S3/Generated/Model/Internal/MarshallTransformations/PutBucketPolicyResponseUnmarshaller.cs b/sdk/src/Services/S3/Generated/Model/Internal/MarshallTransformations/PutBucketPolicyResponseUnmarshaller.cs index 49a8a5fab922..aede05c50362 100644 --- a/sdk/src/Services/S3/Generated/Model/Internal/MarshallTransformations/PutBucketPolicyResponseUnmarshaller.cs +++ b/sdk/src/Services/S3/Generated/Model/Internal/MarshallTransformations/PutBucketPolicyResponseUnmarshaller.cs @@ -36,7 +36,7 @@ namespace Amazon.S3.Model.Internal.MarshallTransformations /// /// Response Unmarshaller for PutBucketPolicy operation /// - public class PutBucketPolicyResponseUnmarshaller : S3ReponseUnmarshaller + public partial class PutBucketPolicyResponseUnmarshaller : S3ReponseUnmarshaller { /// /// Unmarshaller the response from the service to the response class. @@ -47,6 +47,7 @@ public override AmazonWebServiceResponse Unmarshall(XmlUnmarshallerContext conte { PutBucketPolicyResponse response = new PutBucketPolicyResponse(); + PostUnmarshallCustomization(context, response); return response; } @@ -73,6 +74,8 @@ public override AmazonServiceException UnmarshallException(XmlUnmarshallerContex return base.ConstructS3Exception(context, errorResponse, innerException, statusCode); } + partial void PostUnmarshallCustomization(XmlUnmarshallerContext context, PutBucketPolicyResponse response); + private static PutBucketPolicyResponseUnmarshaller _instance = new PutBucketPolicyResponseUnmarshaller(); internal static PutBucketPolicyResponseUnmarshaller GetInstance() diff --git a/sdk/src/Services/S3/Generated/Model/Internal/MarshallTransformations/PutBucketReplicationRequestMarshaller.cs b/sdk/src/Services/S3/Generated/Model/Internal/MarshallTransformations/PutBucketReplicationRequestMarshaller.cs index d7e7f2c6cdcb..0600bf1b5180 100644 --- a/sdk/src/Services/S3/Generated/Model/Internal/MarshallTransformations/PutBucketReplicationRequestMarshaller.cs +++ b/sdk/src/Services/S3/Generated/Model/Internal/MarshallTransformations/PutBucketReplicationRequestMarshaller.cs @@ -245,8 +245,6 @@ public IRequest Marshall(PutBucketReplicationRequest publicRequest) 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, diff --git a/sdk/src/Services/S3/Generated/Model/Internal/MarshallTransformations/PutBucketReplicationResponseUnmarshaller.cs b/sdk/src/Services/S3/Generated/Model/Internal/MarshallTransformations/PutBucketReplicationResponseUnmarshaller.cs index c0885ff4dd47..e7a0a45fa3fc 100644 --- a/sdk/src/Services/S3/Generated/Model/Internal/MarshallTransformations/PutBucketReplicationResponseUnmarshaller.cs +++ b/sdk/src/Services/S3/Generated/Model/Internal/MarshallTransformations/PutBucketReplicationResponseUnmarshaller.cs @@ -36,7 +36,7 @@ namespace Amazon.S3.Model.Internal.MarshallTransformations /// /// Response Unmarshaller for PutBucketReplication operation /// - public class PutBucketReplicationResponseUnmarshaller : S3ReponseUnmarshaller + public partial class PutBucketReplicationResponseUnmarshaller : S3ReponseUnmarshaller { /// /// Unmarshaller the response from the service to the response class. @@ -47,6 +47,7 @@ public override AmazonWebServiceResponse Unmarshall(XmlUnmarshallerContext conte { PutBucketReplicationResponse response = new PutBucketReplicationResponse(); + PostUnmarshallCustomization(context, response); return response; } @@ -73,6 +74,8 @@ public override AmazonServiceException UnmarshallException(XmlUnmarshallerContex return base.ConstructS3Exception(context, errorResponse, innerException, statusCode); } + partial void PostUnmarshallCustomization(XmlUnmarshallerContext context, PutBucketReplicationResponse response); + private static PutBucketReplicationResponseUnmarshaller _instance = new PutBucketReplicationResponseUnmarshaller(); internal static PutBucketReplicationResponseUnmarshaller GetInstance() diff --git a/sdk/src/Services/S3/Generated/Model/Internal/MarshallTransformations/PutBucketResponseUnmarshaller.cs b/sdk/src/Services/S3/Generated/Model/Internal/MarshallTransformations/PutBucketResponseUnmarshaller.cs index dee0658fa0cf..ee9a8aa8a61a 100644 --- a/sdk/src/Services/S3/Generated/Model/Internal/MarshallTransformations/PutBucketResponseUnmarshaller.cs +++ b/sdk/src/Services/S3/Generated/Model/Internal/MarshallTransformations/PutBucketResponseUnmarshaller.cs @@ -36,7 +36,7 @@ namespace Amazon.S3.Model.Internal.MarshallTransformations /// /// Response Unmarshaller for PutBucket operation /// - public class PutBucketResponseUnmarshaller : S3ReponseUnmarshaller + public partial class PutBucketResponseUnmarshaller : S3ReponseUnmarshaller { /// /// Unmarshaller the response from the service to the response class. @@ -51,6 +51,7 @@ public override AmazonWebServiceResponse Unmarshall(XmlUnmarshallerContext conte if (context.ResponseData.IsHeaderPresent("Location")) response.Location = context.ResponseData.GetHeaderValue("Location"); + PostUnmarshallCustomization(context, response); return response; } @@ -85,6 +86,8 @@ public override AmazonServiceException UnmarshallException(XmlUnmarshallerContex return base.ConstructS3Exception(context, errorResponse, innerException, statusCode); } + partial void PostUnmarshallCustomization(XmlUnmarshallerContext context, PutBucketResponse response); + private static PutBucketResponseUnmarshaller _instance = new PutBucketResponseUnmarshaller(); internal static PutBucketResponseUnmarshaller GetInstance() diff --git a/sdk/src/Services/S3/Generated/Model/Internal/MarshallTransformations/PutCORSConfigurationRequestMarshaller.cs b/sdk/src/Services/S3/Generated/Model/Internal/MarshallTransformations/PutCORSConfigurationRequestMarshaller.cs new file mode 100644 index 000000000000..a6b578f62c46 --- /dev/null +++ b/sdk/src/Services/S3/Generated/Model/Internal/MarshallTransformations/PutCORSConfigurationRequestMarshaller.cs @@ -0,0 +1,186 @@ +/* + * 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 +{ + /// + /// PutCORSConfiguration Request Marshaller + /// + public partial class PutCORSConfigurationRequestMarshaller : IMarshaller , IMarshaller + { + /// + /// Marshaller the request object to the HTTP request. + /// + /// + /// + public IRequest Marshall(AmazonWebServiceRequest input) + { + return this.Marshall((PutCORSConfigurationRequest)input); + } + + /// + /// Marshaller the request object to the HTTP request. + /// + /// + /// + public IRequest Marshall(PutCORSConfigurationRequest publicRequest) + { + var request = new DefaultRequest(publicRequest, "Amazon.S3"); + request.HttpMethod = "PUT"; + request.AddSubResource("cors"); + + 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.", "PutCORSConfigurationRequest.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.IsSetConfiguration()) + { + xmlWriter.WriteStartElement("CORSConfiguration", "http://s3.amazonaws.com/doc/2006-03-01/"); + var publicRequestConfigurationRules = publicRequest.Configuration.Rules; + if (publicRequestConfigurationRules != null && (publicRequestConfigurationRules.Count > 0 || !AWSConfigs.InitializeCollections)) + { + foreach (var publicRequestConfigurationRulesValue in publicRequestConfigurationRules) + { + if (publicRequestConfigurationRulesValue != null) + { + xmlWriter.WriteStartElement("CORSRule"); + var publicRequestConfigurationRulesValueAllowedHeaders = publicRequestConfigurationRulesValue.AllowedHeaders; + if (publicRequestConfigurationRulesValueAllowedHeaders != null && (publicRequestConfigurationRulesValueAllowedHeaders.Count > 0 || !AWSConfigs.InitializeCollections)) + { + foreach (var publicRequestConfigurationRulesValueAllowedHeadersValue in publicRequestConfigurationRulesValueAllowedHeaders) + { + xmlWriter.WriteStartElement("AllowedHeader"); + xmlWriter.WriteValue(publicRequestConfigurationRulesValueAllowedHeadersValue); + xmlWriter.WriteEndElement(); + } + } + var publicRequestConfigurationRulesValueAllowedMethods = publicRequestConfigurationRulesValue.AllowedMethods; + if (publicRequestConfigurationRulesValueAllowedMethods != null && (publicRequestConfigurationRulesValueAllowedMethods.Count > 0 || !AWSConfigs.InitializeCollections)) + { + foreach (var publicRequestConfigurationRulesValueAllowedMethodsValue in publicRequestConfigurationRulesValueAllowedMethods) + { + xmlWriter.WriteStartElement("AllowedMethod"); + xmlWriter.WriteValue(publicRequestConfigurationRulesValueAllowedMethodsValue); + xmlWriter.WriteEndElement(); + } + } + var publicRequestConfigurationRulesValueAllowedOrigins = publicRequestConfigurationRulesValue.AllowedOrigins; + if (publicRequestConfigurationRulesValueAllowedOrigins != null && (publicRequestConfigurationRulesValueAllowedOrigins.Count > 0 || !AWSConfigs.InitializeCollections)) + { + foreach (var publicRequestConfigurationRulesValueAllowedOriginsValue in publicRequestConfigurationRulesValueAllowedOrigins) + { + xmlWriter.WriteStartElement("AllowedOrigin"); + xmlWriter.WriteValue(publicRequestConfigurationRulesValueAllowedOriginsValue); + xmlWriter.WriteEndElement(); + } + } + var publicRequestConfigurationRulesValueExposeHeaders = publicRequestConfigurationRulesValue.ExposeHeaders; + if (publicRequestConfigurationRulesValueExposeHeaders != null && (publicRequestConfigurationRulesValueExposeHeaders.Count > 0 || !AWSConfigs.InitializeCollections)) + { + foreach (var publicRequestConfigurationRulesValueExposeHeadersValue in publicRequestConfigurationRulesValueExposeHeaders) + { + xmlWriter.WriteStartElement("ExposeHeader"); + xmlWriter.WriteValue(publicRequestConfigurationRulesValueExposeHeadersValue); + xmlWriter.WriteEndElement(); + } + } + if(publicRequestConfigurationRulesValue.IsSetId()) + xmlWriter.WriteElementString("ID", StringUtils.FromString(publicRequestConfigurationRulesValue.Id)); + if(publicRequestConfigurationRulesValue.IsSetMaxAgeSeconds()) + xmlWriter.WriteElementString("MaxAgeSeconds", StringUtils.FromInt(publicRequestConfigurationRulesValue.MaxAgeSeconds.Value)); + xmlWriter.WriteEndElement(); + } + } + } + + xmlWriter.WriteEndElement(); + } + } + PostMarshallCustomization(request, publicRequest); + try + { + string content = stringWriter.ToString(); + request.Content = System.Text.Encoding.UTF8.GetBytes(content); + request.Headers["Content-Type"] = "application/xml"; + 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); + } + return request; + } + private static PutCORSConfigurationRequestMarshaller _instance = new PutCORSConfigurationRequestMarshaller(); + + internal static PutCORSConfigurationRequestMarshaller GetInstance() + { + return _instance; + } + + /// + /// Gets the singleton. + /// + public static PutCORSConfigurationRequestMarshaller Instance + { + get + { + return _instance; + } + } + + partial void PostMarshallCustomization(DefaultRequest defaultRequest, PutCORSConfigurationRequest publicRequest); + } +} \ No newline at end of file diff --git a/sdk/src/Services/S3/Generated/Model/Internal/MarshallTransformations/PutCORSConfigurationResponseUnmarshaller.cs b/sdk/src/Services/S3/Generated/Model/Internal/MarshallTransformations/PutCORSConfigurationResponseUnmarshaller.cs new file mode 100644 index 000000000000..ced5fe7e3a4f --- /dev/null +++ b/sdk/src/Services/S3/Generated/Model/Internal/MarshallTransformations/PutCORSConfigurationResponseUnmarshaller.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.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 PutCORSConfiguration operation + /// + public partial class PutCORSConfigurationResponseUnmarshaller : S3ReponseUnmarshaller + { + /// + /// Unmarshaller the response from the service to the response class. + /// + /// + /// + public override AmazonWebServiceResponse Unmarshall(XmlUnmarshallerContext context) + { + PutCORSConfigurationResponse response = new PutCORSConfigurationResponse(); + + PostUnmarshallCustomization(context, response); + 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); + } + + partial void PostUnmarshallCustomization(XmlUnmarshallerContext context, PutCORSConfigurationResponse response); + + private static PutCORSConfigurationResponseUnmarshaller _instance = new PutCORSConfigurationResponseUnmarshaller(); + + internal static PutCORSConfigurationResponseUnmarshaller GetInstance() + { + return _instance; + } + + /// + /// Gets the singleton. + /// + public static PutCORSConfigurationResponseUnmarshaller Instance + { + get + { + return _instance; + } + } + + } +} \ No newline at end of file diff --git a/sdk/src/Services/S3/Generated/Model/Internal/MarshallTransformations/PutLifecycleConfigurationResponseUnmarshaller.cs b/sdk/src/Services/S3/Generated/Model/Internal/MarshallTransformations/PutLifecycleConfigurationResponseUnmarshaller.cs index 00ebb272f5bf..504602752695 100644 --- a/sdk/src/Services/S3/Generated/Model/Internal/MarshallTransformations/PutLifecycleConfigurationResponseUnmarshaller.cs +++ b/sdk/src/Services/S3/Generated/Model/Internal/MarshallTransformations/PutLifecycleConfigurationResponseUnmarshaller.cs @@ -36,7 +36,7 @@ namespace Amazon.S3.Model.Internal.MarshallTransformations /// /// Response Unmarshaller for PutLifecycleConfiguration operation /// - public class PutLifecycleConfigurationResponseUnmarshaller : S3ReponseUnmarshaller + public partial class PutLifecycleConfigurationResponseUnmarshaller : S3ReponseUnmarshaller { /// /// Unmarshaller the response from the service to the response class. @@ -49,6 +49,7 @@ public override AmazonWebServiceResponse Unmarshall(XmlUnmarshallerContext conte if (context.ResponseData.IsHeaderPresent("x-amz-transition-default-minimum-object-size")) response.TransitionDefaultMinimumObjectSize = context.ResponseData.GetHeaderValue("x-amz-transition-default-minimum-object-size"); + PostUnmarshallCustomization(context, response); return response; } @@ -75,6 +76,8 @@ public override AmazonServiceException UnmarshallException(XmlUnmarshallerContex return base.ConstructS3Exception(context, errorResponse, innerException, statusCode); } + partial void PostUnmarshallCustomization(XmlUnmarshallerContext context, PutLifecycleConfigurationResponse response); + private static PutLifecycleConfigurationResponseUnmarshaller _instance = new PutLifecycleConfigurationResponseUnmarshaller(); internal static PutLifecycleConfigurationResponseUnmarshaller GetInstance() diff --git a/sdk/src/Services/S3/Custom/Model/Internal/MarshallTransformations/PutObjectACLRequestMarshaller.cs b/sdk/src/Services/S3/Generated/Model/Internal/MarshallTransformations/PutObjectAclRequestMarshaller.cs similarity index 64% rename from sdk/src/Services/S3/Custom/Model/Internal/MarshallTransformations/PutObjectACLRequestMarshaller.cs rename to sdk/src/Services/S3/Generated/Model/Internal/MarshallTransformations/PutObjectAclRequestMarshaller.cs index 48db908234d1..55184abe0b84 100644 --- a/sdk/src/Services/S3/Custom/Model/Internal/MarshallTransformations/PutObjectACLRequestMarshaller.cs +++ b/sdk/src/Services/S3/Generated/Model/Internal/MarshallTransformations/PutObjectAclRequestMarshaller.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"). @@ -29,7 +29,6 @@ using Amazon.Runtime.Internal.Transform; using Amazon.Runtime.Internal.Util; using System.Xml; -using Amazon.S3.Util; #pragma warning disable CS0612,CS0618 namespace Amazon.S3.Model.Internal.MarshallTransformations @@ -37,7 +36,7 @@ namespace Amazon.S3.Model.Internal.MarshallTransformations /// /// PutObjectAcl Request Marshaller /// - public class PutObjectAclRequestMarshaller : IMarshaller, IMarshaller + public partial class PutObjectAclRequestMarshaller : IMarshaller , IMarshaller { /// /// Marshaller the request object to the HTTP request. @@ -59,53 +58,53 @@ public IRequest Marshall(PutObjectAclRequest publicRequest) var request = new DefaultRequest(publicRequest, "Amazon.S3"); request.HttpMethod = "PUT"; request.AddSubResource("acl"); - - if (publicRequest.IsSetACL()) + + if (publicRequest.IsSetACL()) { request.Headers["x-amz-acl"] = publicRequest.ACL; } - - if (publicRequest.IsSetChecksumAlgorithm()) + + if (publicRequest.IsSetChecksumAlgorithm()) { request.Headers["x-amz-sdk-checksum-algorithm"] = publicRequest.ChecksumAlgorithm; } - - if (publicRequest.IsSetContentMD5()) + + if (publicRequest.IsSetContentMD5()) { request.Headers["Content-MD5"] = publicRequest.ContentMD5; } - - if (publicRequest.IsSetExpectedBucketOwner()) + + if (publicRequest.IsSetExpectedBucketOwner()) { request.Headers["x-amz-expected-bucket-owner"] = publicRequest.ExpectedBucketOwner; } - - if (publicRequest.IsSetGrantFullControl()) + + if (publicRequest.IsSetGrantFullControl()) { request.Headers["x-amz-grant-full-control"] = publicRequest.GrantFullControl; } - - if (publicRequest.IsSetGrantRead()) + + if (publicRequest.IsSetGrantRead()) { request.Headers["x-amz-grant-read"] = publicRequest.GrantRead; } - - if (publicRequest.IsSetGrantReadACP()) + + if (publicRequest.IsSetGrantReadACP()) { request.Headers["x-amz-grant-read-acp"] = publicRequest.GrantReadACP; } - - if (publicRequest.IsSetGrantWrite()) + + if (publicRequest.IsSetGrantWrite()) { request.Headers["x-amz-grant-write"] = publicRequest.GrantWrite; } - - if (publicRequest.IsSetGrantWriteACP()) + + if (publicRequest.IsSetGrantWriteACP()) { request.Headers["x-amz-grant-write-acp"] = publicRequest.GrantWriteACP; } - - if (publicRequest.IsSetRequestPayer()) + + if (publicRequest.IsSetRequestPayer()) { request.Headers["x-amz-request-payer"] = publicRequest.RequestPayer; } @@ -114,87 +113,83 @@ public IRequest Marshall(PutObjectAclRequest publicRequest) if (!publicRequest.IsSetKey()) throw new AmazonS3Exception("Request object does not have required field Key set"); request.AddPathResource("{Key+}", StringUtils.FromString(publicRequest.Key)); - + if (publicRequest.IsSetVersionId()) request.Parameters.Add("versionId", StringUtils.FromString(publicRequest.VersionId)); request.ResourcePath = "/{Key+}"; - 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.IsSetAccessControlPolicy()) { - xmlWriter.WriteStartElement("AccessControlPolicy", S3Constants.S3RequestXmlNamespace); + xmlWriter.WriteStartElement("AccessControlPolicy", "http://s3.amazonaws.com/doc/2006-03-01/"); var publicRequestAccessControlPolicyGrants = publicRequest.AccessControlPolicy.Grants; - if (publicRequestAccessControlPolicyGrants != null && (publicRequestAccessControlPolicyGrants.Count > 0 || !AWSConfigs.InitializeCollections)) + if (publicRequestAccessControlPolicyGrants != null && (publicRequestAccessControlPolicyGrants.Count > 0 || !AWSConfigs.InitializeCollections)) { xmlWriter.WriteStartElement("AccessControlList"); - foreach (var publicRequestAccessControlPolicyGrantsValue in publicRequestAccessControlPolicyGrants) + foreach (var publicRequestAccessControlPolicyGrantsValue in publicRequestAccessControlPolicyGrants) { - if (publicRequestAccessControlPolicyGrantsValue != null) + if (publicRequestAccessControlPolicyGrantsValue != null) + { + xmlWriter.WriteStartElement("Grant"); + if (publicRequestAccessControlPolicyGrantsValue.Grantee != null) { - xmlWriter.WriteStartElement("Grant"); - if (publicRequestAccessControlPolicyGrantsValue.Grantee != null) - { - xmlWriter.WriteStartElement("xsi","Grantee", "http://www.w3.org/2001/XMLSchema-instance"); - if (publicRequestAccessControlPolicyGrantsValue.Grantee.IsSetType()) - xmlWriter.WriteAttributeString("xsi", "type", "http://www.w3.org/2001/XMLSchema-instance", S3Transforms.ToXmlStringValue(publicRequestAccessControlPolicyGrantsValue.Grantee.Type)); - if (publicRequestAccessControlPolicyGrantsValue.Grantee.IsSetDisplayName()) - xmlWriter.WriteElementString("DisplayName", S3Transforms.ToXmlStringValue(publicRequestAccessControlPolicyGrantsValue.Grantee.DisplayName)); - if (publicRequestAccessControlPolicyGrantsValue.Grantee.IsSetEmailAddress()) - xmlWriter.WriteElementString("EmailAddress", S3Transforms.ToXmlStringValue(publicRequestAccessControlPolicyGrantsValue.Grantee.EmailAddress)); - if (publicRequestAccessControlPolicyGrantsValue.Grantee.IsSetCanonicalUser()) - xmlWriter.WriteElementString("ID", S3Transforms.ToXmlStringValue(publicRequestAccessControlPolicyGrantsValue.Grantee.CanonicalUser)); - if (publicRequestAccessControlPolicyGrantsValue.Grantee.IsSetURI()) - xmlWriter.WriteElementString("URI", S3Transforms.ToXmlStringValue(publicRequestAccessControlPolicyGrantsValue.Grantee.URI)); - xmlWriter.WriteEndElement(); - } - if (publicRequestAccessControlPolicyGrantsValue.IsSetPermission()) - xmlWriter.WriteElementString("Permission", S3Transforms.ToXmlStringValue(publicRequestAccessControlPolicyGrantsValue.Permission)); - + xmlWriter.WriteStartElement("xsi","Grantee","http://www.w3.org/2001/XMLSchema-instance"); + if(publicRequestAccessControlPolicyGrantsValue.Grantee.IsSetCanonicalUser()) + xmlWriter.WriteElementString("ID", StringUtils.FromString(publicRequestAccessControlPolicyGrantsValue.Grantee.CanonicalUser)); + if(publicRequestAccessControlPolicyGrantsValue.Grantee.IsSetDisplayName()) + xmlWriter.WriteElementString("DisplayName", StringUtils.FromString(publicRequestAccessControlPolicyGrantsValue.Grantee.DisplayName)); + if(publicRequestAccessControlPolicyGrantsValue.Grantee.IsSetEmailAddress()) + xmlWriter.WriteElementString("EmailAddress", StringUtils.FromString(publicRequestAccessControlPolicyGrantsValue.Grantee.EmailAddress)); + if(publicRequestAccessControlPolicyGrantsValue.Grantee.IsSetType()) + xmlWriter.WriteAttributeString("xsi","type", "http://www.w3.org/2001/XMLSchema-instance",StringUtils.FromString(publicRequestAccessControlPolicyGrantsValue.Grantee.Type)); + if(publicRequestAccessControlPolicyGrantsValue.Grantee.IsSetURI()) + xmlWriter.WriteElementString("URI", StringUtils.FromString(publicRequestAccessControlPolicyGrantsValue.Grantee.URI)); xmlWriter.WriteEndElement(); } + if(publicRequestAccessControlPolicyGrantsValue.IsSetPermission()) + xmlWriter.WriteElementString("Permission", StringUtils.FromString(publicRequestAccessControlPolicyGrantsValue.Permission)); + xmlWriter.WriteEndElement(); } - xmlWriter.WriteEndElement(); + } + xmlWriter.WriteEndElement(); } if (publicRequest.AccessControlPolicy.Owner != null) { xmlWriter.WriteStartElement("Owner"); - if (publicRequest.AccessControlPolicy.Owner.IsSetDisplayName()) + if(publicRequest.AccessControlPolicy.Owner.IsSetDisplayName()) xmlWriter.WriteElementString("DisplayName", StringUtils.FromString(publicRequest.AccessControlPolicy.Owner.DisplayName)); - - if (publicRequest.AccessControlPolicy.Owner.IsSetId()) + if(publicRequest.AccessControlPolicy.Owner.IsSetId()) xmlWriter.WriteElementString("ID", StringUtils.FromString(publicRequest.AccessControlPolicy.Owner.Id)); - xmlWriter.WriteEndElement(); } xmlWriter.WriteEndElement(); } } - try + PostMarshallCustomization(request, publicRequest); + try { string content = stringWriter.ToString(); request.Content = System.Text.Encoding.UTF8.GetBytes(content); request.Headers["Content-Type"] = "application/xml"; - ChecksumUtils.SetChecksumData( request, publicRequest.ChecksumAlgorithm, fallbackToMD5: false, isRequestChecksumRequired: true, - headerName: S3Constants.AmzHeaderSdkChecksumAlgorithm + headerName: "x-amz-sdk-checksum-algorithm" ); - } - catch (EncoderFallbackException e) + request.Headers[Amazon.Util.HeaderKeys.XAmzApiVersion] = "2006-03-01"; + } + catch (EncoderFallbackException e) { throw new AmazonServiceException("Unable to marshall request to XML", e); } - request.UseQueryString = true; return request; } - private static PutObjectAclRequestMarshaller _instance = new PutObjectAclRequestMarshaller(); + private static PutObjectAclRequestMarshaller _instance = new PutObjectAclRequestMarshaller(); internal static PutObjectAclRequestMarshaller GetInstance() { @@ -212,5 +207,6 @@ public static PutObjectAclRequestMarshaller Instance } } - } + partial void PostMarshallCustomization(DefaultRequest defaultRequest, PutObjectAclRequest publicRequest); + } } \ No newline at end of file diff --git a/sdk/src/Services/S3/Custom/Model/Internal/MarshallTransformations/PutObjectACLResponseUnmarshaller.cs b/sdk/src/Services/S3/Generated/Model/Internal/MarshallTransformations/PutObjectAclResponseUnmarshaller.cs similarity index 55% rename from sdk/src/Services/S3/Custom/Model/Internal/MarshallTransformations/PutObjectACLResponseUnmarshaller.cs rename to sdk/src/Services/S3/Generated/Model/Internal/MarshallTransformations/PutObjectAclResponseUnmarshaller.cs index ea2e8270e712..a015b09a66e0 100644 --- a/sdk/src/Services/S3/Custom/Model/Internal/MarshallTransformations/PutObjectACLResponseUnmarshaller.cs +++ b/sdk/src/Services/S3/Generated/Model/Internal/MarshallTransformations/PutObjectAclResponseUnmarshaller.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"). @@ -36,7 +36,7 @@ namespace Amazon.S3.Model.Internal.MarshallTransformations /// /// Response Unmarshaller for PutObjectAcl operation /// - public class PutObjectAclResponseUnmarshaller : S3ReponseUnmarshaller + public partial class PutObjectAclResponseUnmarshaller : S3ReponseUnmarshaller { /// /// Unmarshaller the response from the service to the response class. @@ -48,14 +48,46 @@ public override AmazonWebServiceResponse Unmarshall(XmlUnmarshallerContext conte PutObjectAclResponse response = new PutObjectAclResponse(); if (context.ResponseData.IsHeaderPresent("x-amz-request-charged")) response.RequestCharged = context.ResponseData.GetHeaderValue("x-amz-request-charged"); - + + PostUnmarshallCustomization(context, response); 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(); - private static PutObjectAclResponseUnmarshaller _instance = new PutObjectAclResponseUnmarshaller(); + using (var streamCopy = new MemoryStream(responseBodyBytes)) + using (var contextCopy = new XmlUnmarshallerContext(streamCopy, false, null)) + { + if (errorResponse.Code != null && errorResponse.Code.Equals("NoSuchKey")) + { + return NoSuchKeyExceptionUnmarshaller.Instance.Unmarshall(contextCopy, errorResponse); + } + } + return base.ConstructS3Exception(context, errorResponse, innerException, statusCode); + } + + partial void PostUnmarshallCustomization(XmlUnmarshallerContext context, PutObjectAclResponse response); + private static PutObjectAclResponseUnmarshaller _instance = new PutObjectAclResponseUnmarshaller(); + + internal static PutObjectAclResponseUnmarshaller GetInstance() + { + return _instance; + } /// /// Gets the singleton. diff --git a/sdk/src/Services/S3/Generated/Model/Internal/MarshallTransformations/PutObjectLegalHoldRequestMarshaller.cs b/sdk/src/Services/S3/Generated/Model/Internal/MarshallTransformations/PutObjectLegalHoldRequestMarshaller.cs index 34888cb1de5b..fdf973069cc9 100644 --- a/sdk/src/Services/S3/Generated/Model/Internal/MarshallTransformations/PutObjectLegalHoldRequestMarshaller.cs +++ b/sdk/src/Services/S3/Generated/Model/Internal/MarshallTransformations/PutObjectLegalHoldRequestMarshaller.cs @@ -106,8 +106,6 @@ public IRequest Marshall(PutObjectLegalHoldRequest publicRequest) 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, diff --git a/sdk/src/Services/S3/Generated/Model/Internal/MarshallTransformations/PutObjectLegalHoldResponseUnmarshaller.cs b/sdk/src/Services/S3/Generated/Model/Internal/MarshallTransformations/PutObjectLegalHoldResponseUnmarshaller.cs index 674a2b4df928..a8cda5916de0 100644 --- a/sdk/src/Services/S3/Generated/Model/Internal/MarshallTransformations/PutObjectLegalHoldResponseUnmarshaller.cs +++ b/sdk/src/Services/S3/Generated/Model/Internal/MarshallTransformations/PutObjectLegalHoldResponseUnmarshaller.cs @@ -36,7 +36,7 @@ namespace Amazon.S3.Model.Internal.MarshallTransformations /// /// Response Unmarshaller for PutObjectLegalHold operation /// - public class PutObjectLegalHoldResponseUnmarshaller : S3ReponseUnmarshaller + public partial class PutObjectLegalHoldResponseUnmarshaller : S3ReponseUnmarshaller { /// /// Unmarshaller the response from the service to the response class. @@ -49,6 +49,7 @@ public override AmazonWebServiceResponse Unmarshall(XmlUnmarshallerContext conte if (context.ResponseData.IsHeaderPresent("x-amz-request-charged")) response.RequestCharged = context.ResponseData.GetHeaderValue("x-amz-request-charged"); + PostUnmarshallCustomization(context, response); return response; } @@ -75,6 +76,8 @@ public override AmazonServiceException UnmarshallException(XmlUnmarshallerContex return base.ConstructS3Exception(context, errorResponse, innerException, statusCode); } + partial void PostUnmarshallCustomization(XmlUnmarshallerContext context, PutObjectLegalHoldResponse response); + private static PutObjectLegalHoldResponseUnmarshaller _instance = new PutObjectLegalHoldResponseUnmarshaller(); internal static PutObjectLegalHoldResponseUnmarshaller GetInstance() diff --git a/sdk/src/Services/S3/Generated/Model/Internal/MarshallTransformations/PutObjectLockConfigurationRequestMarshaller.cs b/sdk/src/Services/S3/Generated/Model/Internal/MarshallTransformations/PutObjectLockConfigurationRequestMarshaller.cs index b43dc1bdc71d..60c7fe3b327d 100644 --- a/sdk/src/Services/S3/Generated/Model/Internal/MarshallTransformations/PutObjectLockConfigurationRequestMarshaller.cs +++ b/sdk/src/Services/S3/Generated/Model/Internal/MarshallTransformations/PutObjectLockConfigurationRequestMarshaller.cs @@ -121,8 +121,6 @@ public IRequest Marshall(PutObjectLockConfigurationRequest publicRequest) 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, diff --git a/sdk/src/Services/S3/Generated/Model/Internal/MarshallTransformations/PutObjectLockConfigurationResponseUnmarshaller.cs b/sdk/src/Services/S3/Generated/Model/Internal/MarshallTransformations/PutObjectLockConfigurationResponseUnmarshaller.cs index 2eb487c33469..838a6774b86a 100644 --- a/sdk/src/Services/S3/Generated/Model/Internal/MarshallTransformations/PutObjectLockConfigurationResponseUnmarshaller.cs +++ b/sdk/src/Services/S3/Generated/Model/Internal/MarshallTransformations/PutObjectLockConfigurationResponseUnmarshaller.cs @@ -36,7 +36,7 @@ namespace Amazon.S3.Model.Internal.MarshallTransformations /// /// Response Unmarshaller for PutObjectLockConfiguration operation /// - public class PutObjectLockConfigurationResponseUnmarshaller : S3ReponseUnmarshaller + public partial class PutObjectLockConfigurationResponseUnmarshaller : S3ReponseUnmarshaller { /// /// Unmarshaller the response from the service to the response class. @@ -49,6 +49,7 @@ public override AmazonWebServiceResponse Unmarshall(XmlUnmarshallerContext conte if (context.ResponseData.IsHeaderPresent("x-amz-request-charged")) response.RequestCharged = context.ResponseData.GetHeaderValue("x-amz-request-charged"); + PostUnmarshallCustomization(context, response); return response; } @@ -75,6 +76,8 @@ public override AmazonServiceException UnmarshallException(XmlUnmarshallerContex return base.ConstructS3Exception(context, errorResponse, innerException, statusCode); } + partial void PostUnmarshallCustomization(XmlUnmarshallerContext context, PutObjectLockConfigurationResponse response); + private static PutObjectLockConfigurationResponseUnmarshaller _instance = new PutObjectLockConfigurationResponseUnmarshaller(); internal static PutObjectLockConfigurationResponseUnmarshaller GetInstance() diff --git a/sdk/src/Services/S3/Generated/Model/Internal/MarshallTransformations/PutObjectRetentionRequestMarshaller.cs b/sdk/src/Services/S3/Generated/Model/Internal/MarshallTransformations/PutObjectRetentionRequestMarshaller.cs index 374d0d03590b..9c0e4f7aa990 100644 --- a/sdk/src/Services/S3/Generated/Model/Internal/MarshallTransformations/PutObjectRetentionRequestMarshaller.cs +++ b/sdk/src/Services/S3/Generated/Model/Internal/MarshallTransformations/PutObjectRetentionRequestMarshaller.cs @@ -114,8 +114,6 @@ public IRequest Marshall(PutObjectRetentionRequest publicRequest) 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, diff --git a/sdk/src/Services/S3/Generated/Model/Internal/MarshallTransformations/PutObjectRetentionResponseUnmarshaller.cs b/sdk/src/Services/S3/Generated/Model/Internal/MarshallTransformations/PutObjectRetentionResponseUnmarshaller.cs index a292cd331177..d489b4926f9e 100644 --- a/sdk/src/Services/S3/Generated/Model/Internal/MarshallTransformations/PutObjectRetentionResponseUnmarshaller.cs +++ b/sdk/src/Services/S3/Generated/Model/Internal/MarshallTransformations/PutObjectRetentionResponseUnmarshaller.cs @@ -36,7 +36,7 @@ namespace Amazon.S3.Model.Internal.MarshallTransformations /// /// Response Unmarshaller for PutObjectRetention operation /// - public class PutObjectRetentionResponseUnmarshaller : S3ReponseUnmarshaller + public partial class PutObjectRetentionResponseUnmarshaller : S3ReponseUnmarshaller { /// /// Unmarshaller the response from the service to the response class. @@ -49,6 +49,7 @@ public override AmazonWebServiceResponse Unmarshall(XmlUnmarshallerContext conte if (context.ResponseData.IsHeaderPresent("x-amz-request-charged")) response.RequestCharged = context.ResponseData.GetHeaderValue("x-amz-request-charged"); + PostUnmarshallCustomization(context, response); return response; } @@ -75,6 +76,8 @@ public override AmazonServiceException UnmarshallException(XmlUnmarshallerContex return base.ConstructS3Exception(context, errorResponse, innerException, statusCode); } + partial void PostUnmarshallCustomization(XmlUnmarshallerContext context, PutObjectRetentionResponse response); + private static PutObjectRetentionResponseUnmarshaller _instance = new PutObjectRetentionResponseUnmarshaller(); internal static PutObjectRetentionResponseUnmarshaller GetInstance() diff --git a/sdk/src/Services/S3/Generated/Model/Internal/MarshallTransformations/PutObjectTaggingRequestMarshaller.cs b/sdk/src/Services/S3/Generated/Model/Internal/MarshallTransformations/PutObjectTaggingRequestMarshaller.cs index ce8b52bbe719..02c07741a565 100644 --- a/sdk/src/Services/S3/Generated/Model/Internal/MarshallTransformations/PutObjectTaggingRequestMarshaller.cs +++ b/sdk/src/Services/S3/Generated/Model/Internal/MarshallTransformations/PutObjectTaggingRequestMarshaller.cs @@ -121,8 +121,6 @@ public IRequest Marshall(PutObjectTaggingRequest publicRequest) 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, diff --git a/sdk/src/Services/S3/Generated/Model/Internal/MarshallTransformations/PutObjectTaggingResponseUnmarshaller.cs b/sdk/src/Services/S3/Generated/Model/Internal/MarshallTransformations/PutObjectTaggingResponseUnmarshaller.cs index af659611a62d..87bdb5f09e2c 100644 --- a/sdk/src/Services/S3/Generated/Model/Internal/MarshallTransformations/PutObjectTaggingResponseUnmarshaller.cs +++ b/sdk/src/Services/S3/Generated/Model/Internal/MarshallTransformations/PutObjectTaggingResponseUnmarshaller.cs @@ -36,7 +36,7 @@ namespace Amazon.S3.Model.Internal.MarshallTransformations /// /// Response Unmarshaller for PutObjectTagging operation /// - public class PutObjectTaggingResponseUnmarshaller : S3ReponseUnmarshaller + public partial class PutObjectTaggingResponseUnmarshaller : S3ReponseUnmarshaller { /// /// Unmarshaller the response from the service to the response class. @@ -49,6 +49,7 @@ public override AmazonWebServiceResponse Unmarshall(XmlUnmarshallerContext conte if (context.ResponseData.IsHeaderPresent("x-amz-version-id")) response.VersionId = context.ResponseData.GetHeaderValue("x-amz-version-id"); + PostUnmarshallCustomization(context, response); return response; } @@ -75,6 +76,8 @@ public override AmazonServiceException UnmarshallException(XmlUnmarshallerContex return base.ConstructS3Exception(context, errorResponse, innerException, statusCode); } + partial void PostUnmarshallCustomization(XmlUnmarshallerContext context, PutObjectTaggingResponse response); + private static PutObjectTaggingResponseUnmarshaller _instance = new PutObjectTaggingResponseUnmarshaller(); internal static PutObjectTaggingResponseUnmarshaller GetInstance() diff --git a/sdk/src/Services/S3/Generated/Model/Internal/MarshallTransformations/PutPublicAccessBlockRequestMarshaller.cs b/sdk/src/Services/S3/Generated/Model/Internal/MarshallTransformations/PutPublicAccessBlockRequestMarshaller.cs index 42a6ba2ae967..127899dd6cb0 100644 --- a/sdk/src/Services/S3/Generated/Model/Internal/MarshallTransformations/PutPublicAccessBlockRequestMarshaller.cs +++ b/sdk/src/Services/S3/Generated/Model/Internal/MarshallTransformations/PutPublicAccessBlockRequestMarshaller.cs @@ -104,8 +104,6 @@ public IRequest Marshall(PutPublicAccessBlockRequest publicRequest) 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, diff --git a/sdk/src/Services/S3/Generated/Model/Internal/MarshallTransformations/PutPublicAccessBlockResponseUnmarshaller.cs b/sdk/src/Services/S3/Generated/Model/Internal/MarshallTransformations/PutPublicAccessBlockResponseUnmarshaller.cs index cc7e64a9caad..ea9de232d3e2 100644 --- a/sdk/src/Services/S3/Generated/Model/Internal/MarshallTransformations/PutPublicAccessBlockResponseUnmarshaller.cs +++ b/sdk/src/Services/S3/Generated/Model/Internal/MarshallTransformations/PutPublicAccessBlockResponseUnmarshaller.cs @@ -36,7 +36,7 @@ namespace Amazon.S3.Model.Internal.MarshallTransformations /// /// Response Unmarshaller for PutPublicAccessBlock operation /// - public class PutPublicAccessBlockResponseUnmarshaller : S3ReponseUnmarshaller + public partial class PutPublicAccessBlockResponseUnmarshaller : S3ReponseUnmarshaller { /// /// Unmarshaller the response from the service to the response class. @@ -47,6 +47,7 @@ public override AmazonWebServiceResponse Unmarshall(XmlUnmarshallerContext conte { PutPublicAccessBlockResponse response = new PutPublicAccessBlockResponse(); + PostUnmarshallCustomization(context, response); return response; } @@ -73,6 +74,8 @@ public override AmazonServiceException UnmarshallException(XmlUnmarshallerContex return base.ConstructS3Exception(context, errorResponse, innerException, statusCode); } + partial void PostUnmarshallCustomization(XmlUnmarshallerContext context, PutPublicAccessBlockResponse response); + private static PutPublicAccessBlockResponseUnmarshaller _instance = new PutPublicAccessBlockResponseUnmarshaller(); internal static PutPublicAccessBlockResponseUnmarshaller GetInstance() diff --git a/sdk/src/Services/S3/Custom/Model/Internal/MarshallTransformations/RestoreStatusUnmarshaller.cs b/sdk/src/Services/S3/Generated/Model/Internal/MarshallTransformations/RestoreStatusUnmarshaller.cs similarity index 51% rename from sdk/src/Services/S3/Custom/Model/Internal/MarshallTransformations/RestoreStatusUnmarshaller.cs rename to sdk/src/Services/S3/Generated/Model/Internal/MarshallTransformations/RestoreStatusUnmarshaller.cs index d2563edddf95..bef7e955b4d4 100644 --- a/sdk/src/Services/S3/Custom/Model/Internal/MarshallTransformations/RestoreStatusUnmarshaller.cs +++ b/sdk/src/Services/S3/Generated/Model/Internal/MarshallTransformations/RestoreStatusUnmarshaller.cs @@ -1,18 +1,45 @@ -using Amazon.Runtime.Internal.Transform; +/* + * 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.Linq; +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 RestoreStatus Object /// - public class RestoreStatusUnmarshaller : IXmlUnmarshaller + public partial class RestoreStatusUnmarshaller : IXmlUnmarshaller { /// - /// Unmarshall the response from the service to the response class. + /// Unmarshaller the response from the service to the response class. /// /// /// @@ -21,36 +48,40 @@ public RestoreStatus Unmarshall(XmlUnmarshallerContext context) RestoreStatus unmarshalledObject = new RestoreStatus(); 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("IsRestoreInProgress", targetDepth)) { - var unmarshaller = BoolUnmarshaller.Instance; + var unmarshaller = NullableBoolUnmarshaller.Instance; unmarshalledObject.IsRestoreInProgress = unmarshaller.Unmarshall(context); continue; } if (context.TestExpression("RestoreExpiryDate", targetDepth)) { - var unmarshaller = DateTimeUnmarshaller.Instance; + var unmarshaller = NullableDateTimeUnmarshaller.Instance; unmarshalledObject.RestoreExpiryDate = unmarshaller.Unmarshall(context); continue; } + + XmlStructureUnmarshallCustomization(context, unmarshalledObject, targetDepth); } else if (context.IsEndElement && context.CurrentDepth < originalDepth) { return unmarshalledObject; } - } + } return unmarshalledObject; } - private static RestoreStatusUnmarshaller _instance = new RestoreStatusUnmarshaller(); + partial void XmlStructureUnmarshallCustomization(XmlUnmarshallerContext context, RestoreStatus unmarshalledObject, int targetDepth); + + private static RestoreStatusUnmarshaller _instance = new RestoreStatusUnmarshaller(); /// /// Gets the singleton. @@ -63,5 +94,4 @@ public static RestoreStatusUnmarshaller Instance } } } -} - +} \ No newline at end of file diff --git a/sdk/src/Services/S3/Generated/Model/Internal/MarshallTransformations/S3ObjectUnmarshaller.cs b/sdk/src/Services/S3/Generated/Model/Internal/MarshallTransformations/S3ObjectUnmarshaller.cs new file mode 100644 index 000000000000..47da61b9ec41 --- /dev/null +++ b/sdk/src/Services/S3/Generated/Model/Internal/MarshallTransformations/S3ObjectUnmarshaller.cs @@ -0,0 +1,143 @@ +/* + * 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 S3Object Object + /// + public partial class S3ObjectUnmarshaller : IXmlUnmarshaller + { + /// + /// Unmarshaller the response from the service to the response class. + /// + /// + /// + public S3Object Unmarshall(XmlUnmarshallerContext context) + { + S3Object unmarshalledObject = new S3Object(); + int originalDepth = context.CurrentDepth; + int targetDepth = originalDepth + 1; + + if (context.IsStartOfDocument) + targetDepth += 2; + + while (context.Read()) + { + if (context.IsStartElement || context.IsAttribute) + { + if (context.TestExpression("ChecksumAlgorithm", targetDepth)) + { + if (unmarshalledObject.ChecksumAlgorithm == null) + { + unmarshalledObject.ChecksumAlgorithm = new List(); + } + var unmarshaller = StringUnmarshaller.Instance; + unmarshalledObject.ChecksumAlgorithm.Add(unmarshaller.Unmarshall(context)); + continue; + } + if (context.TestExpression("ChecksumType", targetDepth)) + { + var unmarshaller = StringUnmarshaller.Instance; + unmarshalledObject.ChecksumType = unmarshaller.Unmarshall(context); + continue; + } + if (context.TestExpression("ETag", targetDepth)) + { + var unmarshaller = StringUnmarshaller.Instance; + unmarshalledObject.ETag = unmarshaller.Unmarshall(context); + continue; + } + if (context.TestExpression("Key", targetDepth)) + { + var unmarshaller = StringUnmarshaller.Instance; + unmarshalledObject.Key = unmarshaller.Unmarshall(context); + continue; + } + if (context.TestExpression("LastModified", targetDepth)) + { + var unmarshaller = NullableDateTimeUnmarshaller.Instance; + unmarshalledObject.LastModified = unmarshaller.Unmarshall(context); + continue; + } + if (context.TestExpression("Owner", targetDepth)) + { + var unmarshaller = OwnerUnmarshaller.Instance; + unmarshalledObject.Owner = unmarshaller.Unmarshall(context); + continue; + } + if (context.TestExpression("RestoreStatus", targetDepth)) + { + var unmarshaller = RestoreStatusUnmarshaller.Instance; + unmarshalledObject.RestoreStatus = unmarshaller.Unmarshall(context); + continue; + } + if (context.TestExpression("Size", targetDepth)) + { + var unmarshaller = NullableLongUnmarshaller.Instance; + unmarshalledObject.Size = unmarshaller.Unmarshall(context); + continue; + } + if (context.TestExpression("StorageClass", targetDepth)) + { + var unmarshaller = StringUnmarshaller.Instance; + unmarshalledObject.StorageClass = unmarshaller.Unmarshall(context); + continue; + } + + XmlStructureUnmarshallCustomization(context, unmarshalledObject, targetDepth); + } + else if (context.IsEndElement && context.CurrentDepth < originalDepth) + { + return unmarshalledObject; + } + } + return unmarshalledObject; + } + + partial void XmlStructureUnmarshallCustomization(XmlUnmarshallerContext context, S3Object unmarshalledObject, int targetDepth); + + private static S3ObjectUnmarshaller _instance = new S3ObjectUnmarshaller(); + + /// + /// Gets the singleton. + /// + public static S3ObjectUnmarshaller Instance + { + get + { + return _instance; + } + } + } +} \ No newline at end of file diff --git a/sdk/src/Services/S3/Generated/Model/Internal/MarshallTransformations/S3ObjectVersionUnmarshaller.cs b/sdk/src/Services/S3/Generated/Model/Internal/MarshallTransformations/S3ObjectVersionUnmarshaller.cs new file mode 100644 index 000000000000..5a29f929cb69 --- /dev/null +++ b/sdk/src/Services/S3/Generated/Model/Internal/MarshallTransformations/S3ObjectVersionUnmarshaller.cs @@ -0,0 +1,155 @@ +/* + * 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 S3ObjectVersion Object + /// + public partial class S3ObjectVersionUnmarshaller : IXmlUnmarshaller + { + /// + /// Unmarshaller the response from the service to the response class. + /// + /// + /// + public S3ObjectVersion Unmarshall(XmlUnmarshallerContext context) + { + S3ObjectVersion unmarshalledObject = new S3ObjectVersion(); + int originalDepth = context.CurrentDepth; + int targetDepth = originalDepth + 1; + + if (context.IsStartOfDocument) + targetDepth += 2; + + while (context.Read()) + { + if (context.IsStartElement || context.IsAttribute) + { + if (context.TestExpression("ChecksumAlgorithm", targetDepth)) + { + if (unmarshalledObject.ChecksumAlgorithm == null) + { + unmarshalledObject.ChecksumAlgorithm = new List(); + } + var unmarshaller = StringUnmarshaller.Instance; + unmarshalledObject.ChecksumAlgorithm.Add(unmarshaller.Unmarshall(context)); + continue; + } + if (context.TestExpression("ChecksumType", targetDepth)) + { + var unmarshaller = StringUnmarshaller.Instance; + unmarshalledObject.ChecksumType = unmarshaller.Unmarshall(context); + continue; + } + if (context.TestExpression("ETag", targetDepth)) + { + var unmarshaller = StringUnmarshaller.Instance; + unmarshalledObject.ETag = unmarshaller.Unmarshall(context); + continue; + } + if (context.TestExpression("IsLatest", targetDepth)) + { + var unmarshaller = NullableBoolUnmarshaller.Instance; + unmarshalledObject.IsLatest = unmarshaller.Unmarshall(context); + continue; + } + if (context.TestExpression("Key", targetDepth)) + { + var unmarshaller = StringUnmarshaller.Instance; + unmarshalledObject.Key = unmarshaller.Unmarshall(context); + continue; + } + if (context.TestExpression("LastModified", targetDepth)) + { + var unmarshaller = NullableDateTimeUnmarshaller.Instance; + unmarshalledObject.LastModified = unmarshaller.Unmarshall(context); + continue; + } + if (context.TestExpression("Owner", targetDepth)) + { + var unmarshaller = OwnerUnmarshaller.Instance; + unmarshalledObject.Owner = unmarshaller.Unmarshall(context); + continue; + } + if (context.TestExpression("RestoreStatus", targetDepth)) + { + var unmarshaller = RestoreStatusUnmarshaller.Instance; + unmarshalledObject.RestoreStatus = unmarshaller.Unmarshall(context); + continue; + } + if (context.TestExpression("Size", targetDepth)) + { + var unmarshaller = NullableLongUnmarshaller.Instance; + unmarshalledObject.Size = unmarshaller.Unmarshall(context); + continue; + } + if (context.TestExpression("StorageClass", targetDepth)) + { + var unmarshaller = StringUnmarshaller.Instance; + unmarshalledObject.StorageClass = unmarshaller.Unmarshall(context); + continue; + } + if (context.TestExpression("VersionId", targetDepth)) + { + var unmarshaller = StringUnmarshaller.Instance; + unmarshalledObject.VersionId = unmarshaller.Unmarshall(context); + continue; + } + + XmlStructureUnmarshallCustomization(context, unmarshalledObject, targetDepth); + } + else if (context.IsEndElement && context.CurrentDepth < originalDepth) + { + return unmarshalledObject; + } + } + return unmarshalledObject; + } + + partial void XmlStructureUnmarshallCustomization(XmlUnmarshallerContext context, S3ObjectVersion unmarshalledObject, int targetDepth); + + private static S3ObjectVersionUnmarshaller _instance = new S3ObjectVersionUnmarshaller(); + + /// + /// Gets the singleton. + /// + public static S3ObjectVersionUnmarshaller Instance + { + get + { + return _instance; + } + } + } +} \ No newline at end of file diff --git a/sdk/src/Services/S3/Custom/Model/ListObjectsV2Request.cs b/sdk/src/Services/S3/Generated/Model/ListObjectsV2Request.cs similarity index 59% rename from sdk/src/Services/S3/Custom/Model/ListObjectsV2Request.cs rename to sdk/src/Services/S3/Generated/Model/ListObjectsV2Request.cs index 8002c39c2612..621909c345b1 100644 --- a/sdk/src/Services/S3/Custom/Model/ListObjectsV2Request.cs +++ b/sdk/src/Services/S3/Generated/Model/ListObjectsV2Request.cs @@ -12,15 +12,21 @@ * 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 { /// @@ -33,15 +39,28 @@ namespace Amazon.S3.Model /// object keys programmatically in the Amazon S3 User Guide. To get a list /// of your buckets, see ListBuckets. /// - /// + ///
  • + /// + /// General purpose bucket - For general purpose buckets, ListObjectsV2 + /// doesn't return prefixes that are related only to in-progress multipart uploads. + /// + ///
  • + /// + /// Directory buckets - For directory buckets, ListObjectsV2 response includes + /// the prefixes that are related only to in-progress multipart uploads. + /// + ///
  • /// /// Directory buckets - For directory buckets, you must make requests for this /// API operation to the Zonal endpoint. These endpoints support virtual-hosted-style - /// requests in the format https://bucket_name.s3express-az_id.region.amazonaws.com/key-name - /// . Path-style requests are not supported. For more information, see Regional - /// and Zonal endpoints in the Amazon S3 User Guide. + /// requests in the format https://amzn-s3-demo-bucket.s3express-zone-id.region-code.amazonaws.com/key-name + /// . Path-style requests are not 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. /// - ///
    Permissions
    • + ///
    Permissions
    • /// /// General purpose bucket permissions - To use this operation, you must have /// READ access to the bucket. You must have permission to perform the s3:ListBucket @@ -77,7 +96,7 @@ namespace Amazon.S3.Model /// ///
    HTTP Host header syntax
    /// - /// Directory buckets - The HTTP Host header syntax is Bucket_name.s3express-az_id.region.amazonaws.com. + /// Directory buckets - The HTTP Host header syntax is Bucket-name.s3express-zone-id.region-code.amazonaws.com. /// ///
    /// @@ -108,82 +127,88 @@ namespace Amazon.S3.Model ///
public partial class ListObjectsV2Request : AmazonWebServiceRequest { - private string bucketName; - private string continuationToken; - private string delimiter; - private EncodingType encoding; - private string expectedBucketOwner; - private bool? fetchOwner; - private int? maxKeys; + private string _bucketName; + private string _continuationToken; + private string _delimiter; + private EncodingType _encoding; + private string _expectedBucketOwner; + private bool? _fetchOwner; + private int? _maxKeys; private List _optionalObjectAttributes = AWSConfigs.InitializeCollections ? new List() : null; - private string prefix; - private RequestPayer requestPayer; - private string startAfter; + private string _prefix; + private RequestPayer _requestPayer; + private string _startAfter; /// /// Gets and sets the property BucketName. - /// - /// Directory buckets - When you use this operation with a directory bucket, you must use virtual-hosted-style requests in the - /// format Bucket-name.s3express-zone-id.region-code.amazonaws.com. Path-style requests are not - /// supported. Directory bucket names must be unique in the chosen Zone (Availability Zone or Local Zone). Bucket names must follow the - /// format bucket-base-name--zone-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. - /// - /// - /// Access points - When you use this action with an access point for general purpose buckets, you must provide the alias of the access - /// point in place of the bucket name or specify the access point ARN. When you use this action with an access point for directory buckets, you - /// must provide the access point name in place of the bucket name. When using the access point ARN, you must direct requests to the access - /// point hostname. The access point hostname takes the form AccessPointName-AccountId.s3-accesspoint.Region.amazonaws.com. When - /// using this action with an access point through the Amazon Web Services SDKs, you provide the access point ARN in place of the bucket name. For - /// more information about access point ARNs, see - /// Using access points in the Amazon S3 User Guide. - /// - /// + /// + /// Directory buckets - When you use this operation with a directory bucket, you + /// must use virtual-hosted-style requests in the format Bucket-name.s3express-zone-id.region-code.amazonaws.com. + /// Path-style requests are not supported. Directory bucket names must be unique in the + /// chosen Zone (Availability Zone or Local Zone). Bucket names must follow the format + /// bucket-base-name--zone-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. + /// + /// + /// + /// Access points - When you use this action with an access point for general + /// purpose buckets, you must provide the alias of the access point in place of the bucket + /// name or specify the access point ARN. When you use this action with an access point + /// for directory buckets, you must provide the access point name in place of the bucket + /// name. When using the access point ARN, you must direct requests to the access point + /// hostname. The access point hostname takes the form AccessPointName-AccountId.s3-accesspoint.Region.amazonaws.com. + /// When using this action with an access point through the Amazon Web Services SDKs, + /// you provide the access point ARN in place of the bucket name. For more information + /// about access point ARNs, see Using + /// access points in the Amazon S3 User Guide. + /// + /// /// /// Object Lambda access points are not supported by directory buckets. - /// - /// - /// - /// S3 on Outposts - When you use this action with S3 on Outposts, you must direct requests to the S3 on Outposts hostname. The S3 on Outposts - /// hostname takes the form AccessPointName-AccountId.outpostID.s3-outposts.Region.amazonaws.com. When you use this - /// action with S3 on Outposts, the destination bucket must be the Outposts access point ARN or the access point alias. For more information about S3 - /// on Outposts, see - /// What is S3 on Outposts? in the Amazon S3 User Guide. + /// + /// + /// + /// S3 on Outposts - When you use this action with S3 on Outposts, you must direct + /// requests to the S3 on Outposts hostname. The S3 on Outposts hostname takes the form + /// AccessPointName-AccountId.outpostID.s3-outposts.Region.amazonaws.com. + /// When you use this action with S3 on Outposts, the destination bucket must be the Outposts + /// access point ARN or the access point alias. For more information about S3 on Outposts, + /// see What + /// is S3 on Outposts? in the Amazon S3 User Guide. /// /// public string BucketName { - get { return this.bucketName; } - set { this.bucketName = value; } + get { return this._bucketName; } + set { this._bucketName = value; } } - // Check to see if Bucket property is set + // Check to see if BucketName property is set internal bool IsSetBucketName() { - return this.bucketName != null; + return this._bucketName != null; } /// /// Gets and sets the property ContinuationToken. /// /// ContinuationToken indicates to Amazon S3 that the list is being continued - /// on this bucket with a token. ContinuationToken is obfuscated and is not - /// a real key. You can use this ContinuationToken for pagination of the - /// list results. + /// on this bucket with a token. ContinuationToken is obfuscated and is not a real + /// key. You can use this ContinuationToken for pagination of the list results. + /// /// /// public string ContinuationToken { - get { return this.continuationToken; } - set { this.continuationToken = value; } + get { return this._continuationToken; } + set { this._continuationToken = value; } } // Check to see if ContinuationToken property is set internal bool IsSetContinuationToken() { - return this.continuationToken != null; + return this._continuationToken != null; } /// @@ -191,8 +216,10 @@ internal bool IsSetContinuationToken() /// /// A delimiter is a character that you use to group keys. /// + /// /// - /// CommonPrefixes is filtered out from results if it is not lexicographically greater than the StartAfter value. + /// CommonPrefixes is filtered out from results if it is not lexicographically + /// greater than the StartAfter value. /// ///
  • /// @@ -211,34 +238,46 @@ internal bool IsSetContinuationToken() ///
public string Delimiter { - get { return this.delimiter; } - set { this.delimiter = value; } + get { return this._delimiter; } + set { this._delimiter = value; } } // Check to see if Delimiter property is set internal bool IsSetDelimiter() { - return this.delimiter != null; + return this._delimiter != null; } /// - /// Gets and sets the property EncodingType. + /// Gets and sets the property Encoding. + /// + /// Encoding type used by Amazon S3 to encode the object + /// keys in the response. Responses are encoded only in UTF-8. An object key can contain + /// any Unicode character. However, the XML 1.0 parser can't parse certain characters, + /// such as characters with an ASCII value from 0 to 10. For characters that aren't supported + /// in XML 1.0, you can add this parameter to request that Amazon S3 encode the keys in + /// the response. For more information about characters to avoid in object key names, + /// see Object + /// key naming guidelines. + /// + /// /// - /// Encoding type used by Amazon S3 to encode object keys in the response. If using url, - /// non-ASCII characters used in an object's key name will be URL encoded. For example, - /// the object test_file(3).png will appear as test_file%283%29.png. + /// When using the URL encoding type, non-ASCII characters that are used in an object's + /// key name will be percent-encoded according to UTF-8 code values. For example, the + /// object test_file(3).png will appear as test_file%283%29.png. /// + /// /// public EncodingType Encoding { - get { return this.encoding; } - set { this.encoding = value; } + get { return this._encoding; } + set { this._encoding = value; } } - // Check to see if DeleteMarker property is set + // Check to see if Encoding property is set internal bool IsSetEncoding() { - return this.encoding != null; + return this._encoding != null; } /// @@ -251,24 +290,21 @@ internal bool IsSetEncoding() /// public string ExpectedBucketOwner { - get { return this.expectedBucketOwner; } - set { this.expectedBucketOwner = value; } + get { return this._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; } /// /// Gets and sets the property FetchOwner. /// - /// The owner field is not present in ListObjectsV2 by default. If you want - /// to return the owner field with each key in the result, then set the FetchOwner + /// The owner field is not present in ListObjectsV2 by default. If you want to + /// return the owner field with each key in the result, then set the FetchOwner /// field to true. /// /// @@ -280,34 +316,34 @@ internal bool IsSetExpectedBucketOwner() /// public bool? FetchOwner { - get { return this.fetchOwner; } - set { this.fetchOwner = value; } + get { return this._fetchOwner; } + set { this._fetchOwner = value; } } // Check to see if FetchOwner property is set internal bool IsSetFetchOwner() { - return this.fetchOwner != null; + return this._fetchOwner.HasValue; } /// /// Gets and sets the property MaxKeys. /// - /// Sets the maximum number of keys returned in the response. By default the action returns + /// Sets the maximum number of keys returned in the response. By default, the action returns /// up to 1,000 key names. The response might contain fewer keys but will never contain /// more. /// /// public int? MaxKeys { - get { return this.maxKeys; } - set { this.maxKeys = value; } + get { return this._maxKeys; } + set { this._maxKeys = value; } } - + // Check to see if MaxKeys property is set internal bool IsSetMaxKeys() { - return this.maxKeys.HasValue; + return this._maxKeys.HasValue; } /// @@ -321,6 +357,11 @@ internal bool IsSetMaxKeys() /// This functionality is not supported for directory buckets. /// /// + /// + /// 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 OptionalObjectAttributes { @@ -331,7 +372,7 @@ public List OptionalObjectAttributes // Check to see if OptionalObjectAttributes property is set internal bool IsSetOptionalObjectAttributes() { - return this._optionalObjectAttributes != null && (this._optionalObjectAttributes.Count > 0 || !AWSConfigs.InitializeCollections); + return this._optionalObjectAttributes != null; } /// @@ -348,14 +389,14 @@ internal bool IsSetOptionalObjectAttributes() /// public string Prefix { - get { return this.prefix; } - set { this.prefix = value; } + get { return this._prefix; } + set { this._prefix = value; } } // Check to see if Prefix property is set internal bool IsSetPrefix() { - return this.prefix != null; + return this._prefix != null; } /// @@ -372,17 +413,14 @@ internal bool IsSetPrefix() /// public RequestPayer RequestPayer { - get { return this.requestPayer; } - set { this.requestPayer = value; } + get { return this._requestPayer; } + set { this._requestPayer = value; } } - /// - /// Checks to see if RequetsPayer is set. - /// - /// true, if RequestPayer property is set. + // Check to see if RequestPayer property is set internal bool IsSetRequestPayer() { - return requestPayer != null; + return this._requestPayer != null; } /// @@ -399,16 +437,15 @@ internal bool IsSetRequestPayer() /// public string StartAfter { - get { return this.startAfter; } - set { this.startAfter = value; } + get { return this._startAfter; } + set { this._startAfter = value; } } // Check to see if StartAfter property is set internal bool IsSetStartAfter() { - return this.StartAfter != null; + return this._startAfter != null; } } -} - +} \ No newline at end of file diff --git a/sdk/src/Services/S3/Custom/Model/ListObjectsV2Response.cs b/sdk/src/Services/S3/Generated/Model/ListObjectsV2Response.cs similarity index 51% rename from sdk/src/Services/S3/Custom/Model/ListObjectsV2Response.cs rename to sdk/src/Services/S3/Generated/Model/ListObjectsV2Response.cs index 37886725c748..e9d98f8e2376 100644 --- a/sdk/src/Services/S3/Custom/Model/ListObjectsV2Response.cs +++ b/sdk/src/Services/S3/Generated/Model/ListObjectsV2Response.cs @@ -12,33 +12,41 @@ * 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 { /// - /// Returns information about the ListObjects response and response metadata. + /// This is the response object from the ListObjectsV2 operation. /// - public class ListObjectsV2Response : AmazonWebServiceResponse + public partial class ListObjectsV2Response : AmazonWebServiceResponse { - private List commonPrefixes = AWSConfigs.InitializeCollections ? new List() : null; - private List contents = AWSConfigs.InitializeCollections ? new List() : null; - private string continuationToken; - private string delimiter; - private EncodingType encoding; - private bool? isTruncated; - private int? keyCount; - private int? maxKeys; - private string name; - private string nextContinuationToken; - private string prefix; + private List _commonPrefixes = AWSConfigs.InitializeCollections ? new List() : null; + private string _continuationToken; + private string _delimiter; + private EncodingType _encoding; + private bool? _isTruncated; + private int? _keyCount; + private int? _maxKeys; + private string _name; + private string _nextContinuationToken; + private string _prefix; private RequestCharged _requestCharged; - private string startAfter; + private List _s3Objects = AWSConfigs.InitializeCollections ? new List() : null; + private string _startAfter; /// /// Gets and sets the property CommonPrefixes. @@ -49,193 +57,189 @@ public class ListObjectsV2Response : AmazonWebServiceResponse /// /// /// - /// A response can contain CommonPrefixes only if you specify a delimiter. + /// A response can contain CommonPrefixes only if you specify a delimiter. /// /// /// - /// CommonPrefixes contains all (if there are any) keys between Prefix + /// CommonPrefixes contains all (if there are any) keys between Prefix /// and the next occurrence of the string specified by a delimiter. /// /// /// - /// CommonPrefixes lists keys that act like subdirectories in the directory - /// specified by Prefix. + /// CommonPrefixes lists keys that act like subdirectories in the directory specified + /// by Prefix. /// /// /// - /// For example, if the prefix is notes/ and the delimiter is a slash (/) - /// as in notes/summer/july, the common prefix is notes/summer/. - /// All of the keys that roll up into a common prefix count as a single return when calculating + /// For example, if the prefix is notes/ and the delimiter is a slash (/) + /// as in notes/summer/july, the common prefix is notes/summer/. All of + /// the keys that roll up into a common prefix count as a single return when calculating /// the number of returns. /// ///
  • /// /// Directory buckets - For directory buckets, only prefixes that end in a delimiter - /// (/) are supported. + /// (/) are supported. /// ///
  • /// - /// Directory buckets - When you query ListObjectsV2 with a delimiter - /// during in-progress multipart uploads, the CommonPrefixes response parameter + /// Directory buckets - When you query ListObjectsV2 with a delimiter + /// during in-progress multipart uploads, the CommonPrefixes response parameter /// contains the prefixes that are associated with the in-progress multipart uploads. /// For more information about multipart uploads, see Multipart /// Upload Overview in the Amazon S3 User Guide. /// ///
+ /// + /// 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 CommonPrefixes { - get { return this.commonPrefixes; } - set { this.commonPrefixes = value; } + get { return this._commonPrefixes; } + set { this._commonPrefixes = value; } } // Check to see if CommonPrefixes property is set internal bool IsSetCommonPrefixes() { - return this.commonPrefixes != null && (this.commonPrefixes.Count > 0 || !AWSConfigs.InitializeCollections); - } - - /// - /// Gets and sets the S3Objects property. Metadata about each object returned. - /// - public List S3Objects - { - get { return this.contents; } - set { this.contents = value; } - } - - // Check to see if Contents property is set - internal bool IsSetContents() - { - return this.contents != null && (this.contents.Count > 0 || !AWSConfigs.InitializeCollections); + return this._commonPrefixes != null && (this._commonPrefixes.Count > 0 || !AWSConfigs.InitializeCollections); } /// /// Gets and sets the property ContinuationToken. /// - /// If ContinuationToken was sent with the request, it is included in the - /// response. You can use the returned ContinuationToken for pagination of - /// the list response. + /// If ContinuationToken was sent with the request, it is included in the response. + /// You can use the returned ContinuationToken for pagination of the list response. /// /// public string ContinuationToken { - get { return this.continuationToken; } - set { this.continuationToken = value; } + get { return this._continuationToken; } + set { this._continuationToken = value; } } // Check to see if ContinuationToken property is set internal bool IsSetContinuationToken() { - return this.continuationToken != null; + return this._continuationToken != null; } /// /// Gets and sets the property Delimiter. /// - /// Causes keys that contain the same string between the prefix and the first - /// occurrence of the delimiter to be rolled up into a single result element in the CommonPrefixes + /// Causes keys that contain the same string between the prefix and the first occurrence + /// of the delimiter to be rolled up into a single result element in the CommonPrefixes /// collection. These rolled-up keys are not returned elsewhere in the response. Each - /// rolled-up result counts as only one return against the MaxKeys value. + /// rolled-up result counts as only one return against the MaxKeys value. /// /// /// - /// Directory buckets - For directory buckets, / is the only supported + /// Directory buckets - For directory buckets, / is the only supported /// delimiter. /// /// /// public string Delimiter { - get { return this.delimiter; } - set { this.delimiter = value; } + get { return this._delimiter; } + set { this._delimiter = value; } + } + + // Check to see if Delimiter property is set + internal bool IsSetDelimiter() + { + return this._delimiter != null; } /// - /// Encoding type used by Amazon S3 to encode object keys in the response. + /// Gets and sets the property Encoding. /// /// Encoding type used by Amazon S3 to encode object key names in the XML response. /// /// /// - /// If you specify the encoding-type request parameter, Amazon S3 includes this element - /// in the response, and returns encoded key name values in the following response elements: + /// If you specify the encoding-type request parameter, Amazon S3 includes this + /// element in the response, and returns encoded key name values in the following response + /// elements: /// /// /// - /// Delimiter, Prefix, Key, and StartAfter. + /// Delimiter, Prefix, Key, and StartAfter. /// /// public EncodingType Encoding { - get { return this.encoding; } - set { this.encoding = value; } + get { return this._encoding; } + set { this._encoding = value; } } - // Check to see if DeleteMarker property is set + // Check to see if Encoding property is set internal bool IsSetEncoding() { - return this.encoding != null; + return this._encoding != null; } /// /// Gets and sets the property IsTruncated. /// - /// Set to false if all of the results were returned. Set to true if more keys are available - /// to return. If the number of results exceeds that specified by MaxKeys, all of the - /// results might not be returned. + /// Set to false if all of the results were returned. Set to true if more + /// keys are available to return. If the number of results exceeds that specified by MaxKeys, + /// all of the results might not be returned. /// /// public bool? IsTruncated { - get { return this.isTruncated; } - set { this.isTruncated = value; } + get { return this._isTruncated; } + set { this._isTruncated = value; } } // Check to see if IsTruncated property is set internal bool IsSetIsTruncated() { - return this.isTruncated.HasValue; + return this._isTruncated.HasValue; } /// /// Gets and sets the property KeyCount. /// - /// KeyCount is the number of keys returned with this request. KeyCount will always be - /// less than or equal to the MaxKeys field. Say you ask for 50 keys, your - /// result will include 50 keys or fewer. + /// KeyCount is the number of keys returned with this request. KeyCount + /// will always be less than or equal to the MaxKeys field. For example, if you + /// ask for 50 keys, your result will include 50 keys or fewer. /// /// public int? KeyCount { - get { return this.keyCount; } - set { this.keyCount = value; } + get { return this._keyCount; } + set { this._keyCount = value; } } // Check to see if KeyCount property is set internal bool IsSetKeyCount() { - return this.keyCount.HasValue; + return this._keyCount.HasValue; } /// /// Gets and sets the property MaxKeys. /// - /// Sets the maximum number of keys returned in the response. By default the action returns + /// Sets the maximum number of keys returned in the response. By default, the action returns /// up to 1,000 key names. The response might contain fewer keys but will never contain /// more. /// /// public int? MaxKeys { - get { return this.maxKeys; } - set { this.maxKeys = value; } + get { return this._maxKeys; } + set { this._maxKeys = value; } } // Check to see if MaxKeys property is set internal bool IsSetMaxKeys() { - return this.maxKeys.HasValue; + return this._maxKeys.HasValue; } /// @@ -243,56 +247,38 @@ internal bool IsSetMaxKeys() /// /// The bucket name. /// - /// - /// - /// When using this action with an access point, you must direct requests to the access - /// point hostname. The access point hostname takes the form AccessPointName-AccountId.s3-accesspoint.Region.amazonaws.com. - /// When using this action with an access point through the Amazon Web Services SDKs, - /// you provide the access point ARN in place of the bucket name. For more information - /// about access point ARNs, see Using - /// access points in the Amazon S3 User Guide. - /// - /// - /// - /// When you use this action with Amazon S3 on Outposts, you must direct requests to the - /// S3 on Outposts hostname. The S3 on Outposts hostname takes the form AccessPointName-AccountId.outpostID.s3-outposts.Region.amazonaws.com. - /// When you use this action with S3 on Outposts through the Amazon Web Services SDKs, - /// you provide the Outposts access point ARN in place of the bucket name. For more information - /// about S3 on Outposts ARNs, see What - /// is S3 on Outposts in the Amazon S3 User Guide. - /// /// public string Name { - get { return this.name; } - set { this.name = value; } + get { return this._name; } + set { this._name = value; } } // Check to see if Name property is set internal bool IsSetName() { - return this.name != null; + return this._name != null; } /// /// Gets and sets the property NextContinuationToken. /// - /// NextContinuationToken is sent when isTruncated is true, - /// which means there are more keys in the bucket that can be listed. The next list requests - /// to Amazon S3 can be continued with this NextContinuationToken. NextContinuationToken + /// NextContinuationToken is sent when isTruncated is true, which means + /// there are more keys in the bucket that can be listed. The next list requests to Amazon + /// S3 can be continued with this NextContinuationToken. NextContinuationToken /// is obfuscated and is not a real key /// /// public string NextContinuationToken { - get { return this.nextContinuationToken; } - set { this.nextContinuationToken = value; } + get { return this._nextContinuationToken; } + set { this._nextContinuationToken = value; } } // Check to see if NextContinuationToken property is set internal bool IsSetNextContinuationToken() { - return this.nextContinuationToken != null; + return this._nextContinuationToken != null; } /// @@ -303,20 +289,20 @@ internal bool IsSetNextContinuationToken() /// /// /// Directory buckets - For directory buckets, only prefixes that end in a delimiter - /// (/) are supported. + /// (/) are supported. /// /// /// public string Prefix { - get { return this.prefix; } - set { this.prefix = value; } + get { return this._prefix; } + set { this._prefix = value; } } // Check to see if Prefix property is set internal bool IsSetPrefix() { - return this.prefix != null; + return this._prefix != null; } /// @@ -334,6 +320,29 @@ internal bool IsSetRequestCharged() return this._requestCharged != null; } + /// + /// Gets and sets the property S3Objects. + /// + /// Metadata about each object returned. + /// + /// + /// 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 S3Objects + { + get { return this._s3Objects; } + set { this._s3Objects = value; } + } + + // Check to see if S3Objects property is set + internal bool IsSetS3Objects() + { + return this._s3Objects != null && (this._s3Objects.Count > 0 || !AWSConfigs.InitializeCollections); + } + /// /// Gets and sets the property StartAfter. /// @@ -347,15 +356,15 @@ internal bool IsSetRequestCharged() /// public string StartAfter { - get { return this.startAfter; } - set { this.startAfter = value; } + get { return this._startAfter; } + set { this._startAfter = value; } } // Check to see if StartAfter property is set internal bool IsSetStartAfter() { - return this.startAfter != null; + return this._startAfter != null; } + } -} - +} \ No newline at end of file diff --git a/sdk/src/Services/S3/Custom/Model/ListVersionsRequest.cs b/sdk/src/Services/S3/Generated/Model/ListVersionsRequest.cs similarity index 59% rename from sdk/src/Services/S3/Custom/Model/ListVersionsRequest.cs rename to sdk/src/Services/S3/Generated/Model/ListVersionsRequest.cs index f2377a74cc6c..94fe41d224df 100644 --- a/sdk/src/Services/S3/Custom/Model/ListVersionsRequest.cs +++ b/sdk/src/Services/S3/Generated/Model/ListVersionsRequest.cs @@ -1,4 +1,3 @@ - /* * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. * @@ -13,22 +12,42 @@ * 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 ListVersions operation. - /// + /// /// - /// This operation is not supported by directory buckets. + /// End of support notice: Beginning October 1, 2025, Amazon S3 will stop returning DisplayName. + /// Update your applications to use canonical IDs (unique identifier for Amazon Web Services + /// accounts), Amazon Web Services account ID (12 digit identifier) or IAM ARNs (full + /// resource naming) as a direct replacement of DisplayName. + /// + /// + /// + /// This change affects the following Amazon Web Services Regions: US East (N. Virginia) + /// Region, US West (N. California) Region, US West (Oregon) Region, Asia Pacific (Singapore) + /// Region, Asia Pacific (Sydney) Region, Asia Pacific (Tokyo) Region, Europe (Ireland) + /// Region, and South America (São Paulo) Region. + /// + /// + /// + /// This operation is not supported for directory buckets. /// /// /// @@ -38,13 +57,13 @@ namespace Amazon.S3.Model /// /// /// - /// To use this operation, you must have permission to perform the s3:ListBucketVersions + /// To use this operation, you must have permission to perform the s3:ListBucketVersions /// action. Be aware of the name difference. /// /// /// - /// A 200 OK response can contain valid or invalid XML. Make sure to design - /// your application to parse the contents of the response and handle it appropriately. + /// A 200 OK response can contain valid or invalid XML. Make sure to design your + /// application to parse the contents of the response and handle it appropriately. /// /// /// @@ -52,7 +71,7 @@ namespace Amazon.S3.Model /// /// /// - /// The following operations are related to ListObjectVersions: + /// The following operations are related to ListObjectVersions: /// ///
  • /// @@ -78,16 +97,16 @@ namespace Amazon.S3.Model ///
public partial class ListVersionsRequest : AmazonWebServiceRequest { - private string bucketName; - private string delimiter; - private string keyMarker; - private int? maxKeys; - private string prefix; + private string _bucketName; + private string _delimiter; + private EncodingType _encoding; + private string _expectedBucketOwner; + private string _keyMarker; + private int? _maxKeys; private List _optionalObjectAttributes = AWSConfigs.InitializeCollections ? new List() : null; + private string _prefix; private RequestPayer _requestPayer; - private string versionIdMarker; - private EncodingType encoding; - private string expectedBucketOwner; + private string _versionIdMarker; /// /// Gets and sets the property BucketName. @@ -97,54 +116,94 @@ public partial class ListVersionsRequest : AmazonWebServiceRequest /// public string BucketName { - get { return this.bucketName; } - set { this.bucketName = value; } + get { return this._bucketName; } + set { this._bucketName = value; } } // Check to see if BucketName property is set internal bool IsSetBucketName() { - return this.bucketName != null; + return this._bucketName != null; } /// /// Gets and sets the property Delimiter. /// /// A delimiter is a character that you specify to group keys. All keys that contain the - /// same string between the prefix and the first occurrence of the delimiter - /// are grouped under a single result element in CommonPrefixes. These groups - /// are counted as one result against the max-keys limitation. These keys - /// are not returned elsewhere in the response. + /// same string between the prefix and the first occurrence of the delimiter are + /// grouped under a single result element in CommonPrefixes. These groups are counted + /// as one result against the max-keys limitation. These keys are not returned + /// elsewhere in the response. /// + /// /// - /// CommonPrefixes is filtered out from results if it is not lexicographically greater than the key-marker. + /// CommonPrefixes is filtered out from results if it is not lexicographically + /// greater than the key-marker. /// /// public string Delimiter { - get { return this.delimiter; } - set { this.delimiter = value; } + get { return this._delimiter; } + set { this._delimiter = value; } } // Check to see if Delimiter property is set internal bool IsSetDelimiter() { - return this.delimiter != null; + return this._delimiter != null; } /// + /// Gets and sets the property Encoding. + /// + public EncodingType Encoding + { + get { return this._encoding; } + set { this._encoding = value; } + } + + // Check to see if Encoding property is set + internal bool IsSetEncoding() + { + return this._encoding != 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). + /// + /// + 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 KeyMarker. + /// /// Specifies the key to start with when listing objects in a bucket. + /// /// public string KeyMarker { - get { return this.keyMarker; } - set { this.keyMarker = value; } + get { return this._keyMarker; } + set { this._keyMarker = value; } } // Check to see if KeyMarker property is set internal bool IsSetKeyMarker() { - return this.keyMarker != null; + return this._keyMarker != null; } /// @@ -153,20 +212,20 @@ internal bool IsSetKeyMarker() /// Sets the maximum number of keys returned in the response. By default, the action returns /// up to 1,000 key names. The response might contain fewer keys but will never contain /// more. If additional keys satisfy the search criteria, but were not returned because - /// max-keys was exceeded, the response contains <isTruncated>true</isTruncated>. - /// To return the additional keys, see key-marker and version-id-marker. + /// max-keys was exceeded, the response contains <isTruncated>true</isTruncated>. + /// To return the additional keys, see key-marker and version-id-marker. /// /// public int? MaxKeys { - get { return this.maxKeys ?? default(int); } - set { this.maxKeys = value; } + get { return this._maxKeys; } + set { this._maxKeys = value; } } // Check to see if MaxKeys property is set internal bool IsSetMaxKeys() { - return this.maxKeys.HasValue; + return this._maxKeys.HasValue; } /// @@ -175,6 +234,11 @@ internal bool IsSetMaxKeys() /// Specifies the optional fields that you want returned in the response. Fields that /// you do not specify are not returned. /// + /// + /// 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 OptionalObjectAttributes { @@ -185,7 +249,7 @@ public List OptionalObjectAttributes // Check to see if OptionalObjectAttributes property is set internal bool IsSetOptionalObjectAttributes() { - return this._optionalObjectAttributes != null && (this._optionalObjectAttributes.Count > 0 || !AWSConfigs.InitializeCollections); + return this._optionalObjectAttributes != null; } /// @@ -193,21 +257,21 @@ internal bool IsSetOptionalObjectAttributes() /// /// Use this parameter to select only those keys that begin with the specified prefix. /// You can use prefixes to separate a bucket into different groupings of keys. (You can - /// think of using prefix to make groups in the same way that you'd use a - /// folder in a file system.) You can use prefix with delimiter - /// to roll up numerous objects into a single result under CommonPrefixes. + /// think of using prefix to make groups in the same way that you'd use a folder + /// in a file system.) You can use prefix with delimiter to roll up numerous + /// objects into a single result under CommonPrefixes. /// /// public string Prefix { - get { return this.prefix; } - set { this.prefix = value; } + get { return this._prefix; } + set { this._prefix = value; } } // Check to see if Prefix property is set internal bool IsSetPrefix() { - return this.prefix != null; + return this._prefix != null; } /// @@ -226,66 +290,22 @@ internal bool IsSetRequestPayer() } /// + /// Gets and sets the property VersionIdMarker. + /// /// Specifies the object version you want to start listing from. + /// /// public string VersionIdMarker { - get { return this.versionIdMarker; } - set { this.versionIdMarker = value; } + get { return this._versionIdMarker; } + set { this._versionIdMarker = value; } } // Check to see if VersionIdMarker property is set internal bool IsSetVersionIdMarker() { - return this.versionIdMarker != null; - } - - /// - /// Encoding type used by Amazon S3 to encode the - /// object keys in - /// the response. Responses are encoded only in UTF-8. An object key can contain any Unicode character. - /// However, the XML 1.0 parser can't parse certain characters, such as characters with an ASCII value - /// from 0 to 10. For characters that aren't supported in XML 1.0, you can add this parameter to request - /// that Amazon S3 encode the keys in the response. For more information about characters to avoid in object - /// key names, see Object key naming guidelines. - /// When using the URL encoding type, non-ASCII characters that are used in an - /// object's key name will be percent-encoded according to UTF-8 code values. For example, the object - /// test_file(3).png will appear as test_file%283%29.png. - /// - public EncodingType Encoding - { - get { return this.encoding; } - set { this.encoding = value; } - } - - // Check to see if DeleteMarker property is set - internal bool IsSetEncoding() - { - return this.encoding != null; + return this._versionIdMarker != 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). - /// - /// - 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/Generated/Model/ListVersionsResponse.cs b/sdk/src/Services/S3/Generated/Model/ListVersionsResponse.cs new file mode 100644 index 000000000000..0353079f1c26 --- /dev/null +++ b/sdk/src/Services/S3/Generated/Model/ListVersionsResponse.cs @@ -0,0 +1,316 @@ +/* + * 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 +{ + /// + /// This is the response object from the ListVersions operation. + /// + public partial class ListVersionsResponse : AmazonWebServiceResponse + { + private List _commonPrefixes = AWSConfigs.InitializeCollections ? new List() : null; + private string _delimiter; + private EncodingType _encoding; + private bool? _isTruncated; + private string _keyMarker; + private int? _maxKeys; + private string _name; + private string _nextKeyMarker; + private string _nextVersionIdMarker; + private string _prefix; + private RequestCharged _requestCharged; + private string _versionIdMarker; + private List _versions = AWSConfigs.InitializeCollections ? new List() : null; + + /// + /// Gets and sets the property CommonPrefixes. + /// + /// All of the keys rolled up into a common prefix count as a single return when calculating + /// the number of returns. + /// + /// + /// 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 CommonPrefixes + { + get { return this._commonPrefixes; } + set { this._commonPrefixes = value; } + } + + // Check to see if CommonPrefixes property is set + internal bool IsSetCommonPrefixes() + { + return this._commonPrefixes != null && (this._commonPrefixes.Count > 0 || !AWSConfigs.InitializeCollections); + } + + /// + /// Gets and sets the property Delimiter. + /// + /// The delimiter grouping the included keys. A delimiter is a character that you specify + /// to group keys. All keys that contain the same string between the prefix and the first + /// occurrence of the delimiter are grouped under a single result element in CommonPrefixes. + /// These groups are counted as one result against the max-keys limitation. These + /// keys are not returned elsewhere in the response. + /// + /// + public string Delimiter + { + get { return this._delimiter; } + set { this._delimiter = value; } + } + + // Check to see if Delimiter property is set + internal bool IsSetDelimiter() + { + return this._delimiter != null; + } + + /// + /// Gets and sets the property Encoding. + /// + /// Encoding type used by Amazon S3 to encode object key names in the XML response. + /// + /// + /// + /// If you specify the encoding-type request parameter, Amazon S3 includes this + /// element in the response, and returns encoded key name values in the following response + /// elements: + /// + /// + /// + /// KeyMarker, NextKeyMarker, Prefix, Key, and Delimiter. + /// + /// + public EncodingType Encoding + { + get { return this._encoding; } + set { this._encoding = value; } + } + + // Check to see if Encoding property is set + internal bool IsSetEncoding() + { + return this._encoding != null; + } + + /// + /// Gets and sets the property IsTruncated. + /// + /// A flag that indicates whether Amazon S3 returned all of the results that satisfied + /// the search criteria. If your results were truncated, you can make a follow-up paginated + /// request by using the NextKeyMarker and NextVersionIdMarker response + /// parameters as a starting place in another request to return the rest of the results. + /// + /// + public bool? IsTruncated + { + get { return this._isTruncated; } + set { this._isTruncated = value; } + } + + // Check to see if IsTruncated property is set + internal bool IsSetIsTruncated() + { + return this._isTruncated.HasValue; + } + + /// + /// Gets and sets the property KeyMarker. + /// + /// Marks the last key returned in a truncated response. + /// + /// + public string KeyMarker + { + get { return this._keyMarker; } + set { this._keyMarker = value; } + } + + // Check to see if KeyMarker property is set + internal bool IsSetKeyMarker() + { + return this._keyMarker != null; + } + + /// + /// Gets and sets the property MaxKeys. + /// + /// Specifies the maximum number of objects to return. + /// + /// + public int? MaxKeys + { + get { return this._maxKeys; } + set { this._maxKeys = value; } + } + + // Check to see if MaxKeys property is set + internal bool IsSetMaxKeys() + { + return this._maxKeys.HasValue; + } + + /// + /// Gets and sets the property Name. + /// + /// The bucket name. + /// + /// + public string Name + { + get { return this._name; } + set { this._name = value; } + } + + // Check to see if Name property is set + internal bool IsSetName() + { + return this._name != null; + } + + /// + /// Gets and sets the property NextKeyMarker. + /// + /// When the number of responses exceeds the value of MaxKeys, NextKeyMarker + /// specifies the first key not returned that satisfies the search criteria. Use this + /// value for the key-marker request parameter in a subsequent request. + /// + /// + public string NextKeyMarker + { + get { return this._nextKeyMarker; } + set { this._nextKeyMarker = value; } + } + + // Check to see if NextKeyMarker property is set + internal bool IsSetNextKeyMarker() + { + return this._nextKeyMarker != null; + } + + /// + /// Gets and sets the property NextVersionIdMarker. + /// + /// When the number of responses exceeds the value of MaxKeys, NextVersionIdMarker + /// specifies the first object version not returned that satisfies the search criteria. + /// Use this value for the version-id-marker request parameter in a subsequent + /// request. + /// + /// + public string NextVersionIdMarker + { + get { return this._nextVersionIdMarker; } + set { this._nextVersionIdMarker = value; } + } + + // Check to see if NextVersionIdMarker property is set + internal bool IsSetNextVersionIdMarker() + { + return this._nextVersionIdMarker != null; + } + + /// + /// Gets and sets the property Prefix. + /// + /// Selects objects that start with the value supplied by this parameter. + /// + /// + public string Prefix + { + get { return this._prefix; } + set { this._prefix = value; } + } + + // Check to see if Prefix property is set + internal bool IsSetPrefix() + { + return this._prefix != null; + } + + /// + /// Gets and sets the property RequestCharged. + /// + public RequestCharged RequestCharged + { + get { return this._requestCharged; } + set { this._requestCharged = value; } + } + + // Check to see if RequestCharged property is set + internal bool IsSetRequestCharged() + { + return this._requestCharged != null; + } + + /// + /// Gets and sets the property VersionIdMarker. + /// + /// Marks the last version of the key returned in a truncated response. + /// + /// + public string VersionIdMarker + { + get { return this._versionIdMarker; } + set { this._versionIdMarker = value; } + } + + // Check to see if VersionIdMarker property is set + internal bool IsSetVersionIdMarker() + { + return this._versionIdMarker != null; + } + + /// + /// Gets and sets the property Versions. + /// + /// Container for version information. + /// + /// + /// 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 Versions + { + get { return this._versions; } + set { this._versions = value; } + } + + // Check to see if Versions property is set + internal bool IsSetVersions() + { + return this._versions != null && (this._versions.Count > 0 || !AWSConfigs.InitializeCollections); + } + + } +} \ No newline at end of file diff --git a/sdk/src/Services/S3/Custom/Model/PutBucketACLRequest.cs b/sdk/src/Services/S3/Generated/Model/PutBucketAclRequest.cs similarity index 88% rename from sdk/src/Services/S3/Custom/Model/PutBucketACLRequest.cs rename to sdk/src/Services/S3/Generated/Model/PutBucketAclRequest.cs index 910fe7fa3b8e..c16f6bb6eb2b 100644 --- a/sdk/src/Services/S3/Custom/Model/PutBucketACLRequest.cs +++ b/sdk/src/Services/S3/Generated/Model/PutBucketAclRequest.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,7 +13,9 @@ * 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; @@ -29,9 +31,24 @@ namespace Amazon.S3.Model { /// /// Container for the parameters to the PutBucketAcl operation. - /// + /// + /// + /// End of support notice: Beginning October 1, 2025, Amazon S3 will discontinue support + /// for creating new Email Grantee Access Control Lists (ACL). Email Grantee ACLs created + /// prior to this date will continue to work and remain accessible through the Amazon + /// Web Services Management Console, Command Line Interface (CLI), SDKs, and REST API. + /// However, you will no longer be able to create new Email Grantee ACLs. + /// + /// + /// + /// This change affects the following Amazon Web Services Regions: US East (N. Virginia) + /// Region, US West (N. California) Region, US West (Oregon) Region, Asia Pacific (Singapore) + /// Region, Asia Pacific (Sydney) Region, Asia Pacific (Tokyo) Region, Europe (Ireland) + /// Region, and South America (São Paulo) Region. + /// + /// /// - /// This operation is not supported by directory buckets. + /// This operation is not supported for directory buckets. /// /// /// @@ -174,7 +191,9 @@ namespace Amazon.S3.Model ///
Grantee Values
/// /// You can specify the person (grantee) to whom you're assigning access rights (using - /// request elements) in the following ways: + /// request elements) in the following ways. For examples of how to specify these grantee + /// values in JSON format, see the Amazon Web Services CLI example in + /// Enabling Amazon S3 server access logging in the Amazon S3 User Guide. /// ///
  • /// @@ -322,7 +341,7 @@ public S3CannedACL ACL // Check to see if ACL property is set internal bool IsSetACL() { - return !string.IsNullOrEmpty(this._acl); + return this._acl != null; } /// @@ -346,7 +365,7 @@ internal bool IsSetBucketName() /// /// Gets and sets the property ChecksumAlgorithm. /// - /// Indicates the algorithm used to create the checksum for the object when you use the + /// 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 @@ -368,16 +387,16 @@ public ChecksumAlgorithm ChecksumAlgorithm // Check to see if ChecksumAlgorithm property is set internal bool IsSetChecksumAlgorithm() { - return !string.IsNullOrEmpty(this._checksumAlgorithm); + return this._checksumAlgorithm != null; } /// /// Gets and sets the property ContentMD5. /// - /// The base64-encoded 128-bit MD5 digest of the data. This header must be used as a message - /// integrity check to verify that the request body was not corrupted in transit. For - /// more information, go to RFC 1864. - /// + /// The Base64 encoded 128-bit MD5 digest of the data. This header must be used + /// as a message integrity check to verify that the request body was not corrupted in + /// transit. For more information, go to RFC + /// 1864. /// /// /// @@ -394,7 +413,7 @@ public string ContentMD5 // Check to see if ContentMD5 property is set internal bool IsSetContentMD5() { - return !string.IsNullOrEmpty(this._contentMD5); + return this._contentMD5 != null; } /// @@ -414,7 +433,7 @@ public string ExpectedBucketOwner // Check to see if ExpectedBucketOwner property is set internal bool IsSetExpectedBucketOwner() { - return !string.IsNullOrEmpty(this._expectedBucketOwner); + return this._expectedBucketOwner != null; } /// @@ -432,7 +451,7 @@ public string GrantFullControl // Check to see if GrantFullControl property is set internal bool IsSetGrantFullControl() { - return !string.IsNullOrEmpty(this._grantFullControl); + return this._grantFullControl != null; } /// @@ -450,7 +469,7 @@ public string GrantRead // Check to see if GrantRead property is set internal bool IsSetGrantRead() { - return !string.IsNullOrEmpty(this._grantRead); + return this._grantRead != null; } /// @@ -468,7 +487,7 @@ public string GrantReadACP // Check to see if GrantReadACP property is set internal bool IsSetGrantReadACP() { - return !string.IsNullOrEmpty(this._grantReadACP); + return this._grantReadACP != null; } /// @@ -491,7 +510,7 @@ public string GrantWrite // Check to see if GrantWrite property is set internal bool IsSetGrantWrite() { - return !string.IsNullOrEmpty(this._grantWrite); + return this._grantWrite != null; } /// @@ -509,7 +528,7 @@ public string GrantWriteACP // Check to see if GrantWriteACP property is set internal bool IsSetGrantWriteACP() { - return !string.IsNullOrEmpty(this._grantWriteACP); + return this._grantWriteACP != null; } } diff --git a/sdk/src/Services/S3/Custom/Model/PutBucketACLResponse.cs b/sdk/src/Services/S3/Generated/Model/PutBucketAclResponse.cs similarity index 90% rename from sdk/src/Services/S3/Custom/Model/PutBucketACLResponse.cs rename to sdk/src/Services/S3/Generated/Model/PutBucketAclResponse.cs index 16d6b9a5c910..f7f2e2c690e7 100644 --- a/sdk/src/Services/S3/Custom/Model/PutBucketACLResponse.cs +++ b/sdk/src/Services/S3/Generated/Model/PutBucketAclResponse.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,6 +13,9 @@ * 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; diff --git a/sdk/src/Services/S3/Custom/Model/PutCORSConfigurationRequest.cs b/sdk/src/Services/S3/Generated/Model/PutCORSConfigurationRequest.cs similarity index 53% rename from sdk/src/Services/S3/Custom/Model/PutCORSConfigurationRequest.cs rename to sdk/src/Services/S3/Generated/Model/PutCORSConfigurationRequest.cs index 5691986dae17..a4dfec61f9ec 100644 --- a/sdk/src/Services/S3/Custom/Model/PutCORSConfigurationRequest.cs +++ b/sdk/src/Services/S3/Generated/Model/PutCORSConfigurationRequest.cs @@ -12,69 +12,74 @@ * 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 PutCORSConfiguration operation. /// /// - /// This operation is not supported by directory buckets. + /// This operation is not supported for directory buckets. /// /// /// - /// Sets the cors configuration for your bucket. If the configuration exists, - /// Amazon S3 replaces it. + /// Sets the cors configuration for your bucket. If the configuration exists, Amazon + /// S3 replaces it. /// /// /// - /// To use this operation, you must be allowed to perform the s3:PutBucketCORS + /// To use this operation, you must be allowed to perform the s3:PutBucketCORS /// action. By default, the bucket owner has this permission and can grant it to others. /// /// /// /// You set this configuration on a bucket so that the bucket can service cross-origin - /// requests. For example, you might want to enable a request whose origin is http://www.example.com - /// to access your Amazon S3 bucket at amzn-s3-demo-bucket by using the - /// browser's XMLHttpRequest capability. + /// requests. For example, you might want to enable a request whose origin is http://www.example.com + /// to access your Amazon S3 bucket at my.example.bucket.com by using the browser's + /// XMLHttpRequest capability. /// /// /// - /// To enable cross-origin resource sharing (CORS) on a bucket, you add the cors - /// subresource to the bucket. The cors subresource is an XML document in - /// which you configure rules that identify origins and the HTTP methods that can be executed + /// To enable cross-origin resource sharing (CORS) on a bucket, you add the cors + /// subresource to the bucket. The cors subresource is an XML document in which + /// you configure rules that identify origins and the HTTP methods that can be executed /// on your bucket. The document is limited to 64 KB in size. /// /// /// /// When Amazon S3 receives a cross-origin request (or a pre-flight OPTIONS request) against - /// a bucket, it evaluates the cors configuration on the bucket and uses - /// the first CORSRule rule that matches the incoming browser request to - /// enable a cross-origin request. For a rule to match, the following conditions must - /// be met: + /// a bucket, it evaluates the cors configuration on the bucket and uses the first + /// CORSRule rule that matches the incoming browser request to enable a cross-origin + /// request. For a rule to match, the following conditions must be met: /// ///
    • /// - /// The request's Origin header must match AllowedOrigin elements. + /// The request's Origin header must match AllowedOrigin elements. /// ///
    • /// - /// The request method (for example, GET, PUT, HEAD, and so on) or the Access-Control-Request-Method - /// header in case of a pre-flight OPTIONS request must be one of the AllowedMethod + /// The request method (for example, GET, PUT, HEAD, and so on) or the Access-Control-Request-Method + /// header in case of a pre-flight OPTIONS request must be one of the AllowedMethod /// elements. /// ///
    • /// - /// Every header specified in the Access-Control-Request-Headers request - /// header of a pre-flight request must match an AllowedHeader element. + /// Every header specified in the Access-Control-Request-Headers request header + /// of a pre-flight request must match an AllowedHeader element. /// ///
    /// @@ -83,7 +88,7 @@ namespace Amazon.S3.Model /// /// /// - /// The following operations are related to PutBucketCors: + /// The following operations are related to PutBucketCors: /// ///
    • /// @@ -104,40 +109,43 @@ namespace Amazon.S3.Model ///
    public partial class PutCORSConfigurationRequest : AmazonWebServiceRequest { - private string bucketName; + private string _bucketName; private ChecksumAlgorithm _checksumAlgorithm; - private CORSConfiguration configuration; - private string expectedBucketOwner; + private CORSConfiguration _configuration; + private string _contentMD5; + private string _expectedBucketOwner; /// - /// The name of the bucket to have the CORS configuration applied. + /// Gets and sets the property BucketName. + /// + /// Specifies the bucket impacted by the corsconfiguration. + /// /// public string BucketName { - get { return this.bucketName; } - set { this.bucketName = value; } + get { return this._bucketName; } + set { this._bucketName = value; } } // Check to see if BucketName property is set internal bool IsSetBucketName() { - return this.bucketName != null; + return this._bucketName != null; } /// /// Gets and sets the property ChecksumAlgorithm. /// - /// Indicates the algorithm used to create the checksum for the object when you use the + /// 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 + /// 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 + /// If you provide an individual checksum, Amazon S3 ignores any provided ChecksumAlgorithm /// parameter. /// /// @@ -154,18 +162,49 @@ internal bool IsSetChecksumAlgorithm() } /// - /// The CORS configuration to apply. + /// Gets and sets the property Configuration. + /// + /// Describes the cross-origin access configuration for objects in an Amazon S3 bucket. + /// For more information, see Enabling + /// Cross-Origin Resource Sharing in the Amazon S3 User Guide. + /// /// public CORSConfiguration Configuration { - get { return this.configuration; } - set { this.configuration = value; } + get { return this._configuration; } + set { this._configuration = value; } } // Check to see if Configuration property is set internal bool IsSetConfiguration() { - return this.configuration != null; + return this._configuration != null; + } + + /// + /// Gets and sets the property ContentMD5. + /// + /// The Base64 encoded 128-bit MD5 digest of the data. This header must be used + /// as a message integrity check to verify that the request body was not corrupted in + /// transit. For more information, go to RFC + /// 1864. + /// + /// + /// + /// For requests made using the Amazon Web Services Command Line Interface (CLI) or Amazon + /// Web Services SDKs, this field is calculated automatically. + /// + /// + 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; } /// @@ -173,24 +212,20 @@ internal bool IsSetConfiguration() /// /// 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 { - get { return this.expectedBucketOwner; } - set { this.expectedBucketOwner = value; } + get { return this._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; } } -} - +} \ No newline at end of file diff --git a/sdk/src/Services/S3/Custom/Model/PutCORSConfigurationResponse.cs b/sdk/src/Services/S3/Generated/Model/PutCORSConfigurationResponse.cs similarity index 74% rename from sdk/src/Services/S3/Custom/Model/PutCORSConfigurationResponse.cs rename to sdk/src/Services/S3/Generated/Model/PutCORSConfigurationResponse.cs index c05b1542e9f2..cb46decd30ca 100644 --- a/sdk/src/Services/S3/Custom/Model/PutCORSConfigurationResponse.cs +++ b/sdk/src/Services/S3/Generated/Model/PutCORSConfigurationResponse.cs @@ -12,21 +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; +#pragma warning disable CS0612,CS0618,CS1570 namespace Amazon.S3.Model { /// - /// Returns information about the PutCORSConfiguration response metadata. - /// The PutCORSConfiguration operation has a void result type. + /// This is the response object from the PutCORSConfiguration operation. /// public partial class PutCORSConfigurationResponse : AmazonWebServiceResponse { + } -} - +} \ No newline at end of file diff --git a/sdk/src/Services/S3/Custom/Model/PutObjectACLRequest.cs b/sdk/src/Services/S3/Generated/Model/PutObjectAclRequest.cs similarity index 89% rename from sdk/src/Services/S3/Custom/Model/PutObjectACLRequest.cs rename to sdk/src/Services/S3/Generated/Model/PutObjectAclRequest.cs index 260262e74405..e61d24d39e98 100644 --- a/sdk/src/Services/S3/Custom/Model/PutObjectACLRequest.cs +++ b/sdk/src/Services/S3/Generated/Model/PutObjectAclRequest.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,6 +13,9 @@ * 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; @@ -30,7 +33,7 @@ namespace Amazon.S3.Model /// Container for the parameters to the PutObjectAcl operation. /// /// - /// This operation is not supported by directory buckets. + /// This operation is not supported for directory buckets. /// /// /// @@ -162,7 +165,9 @@ namespace Amazon.S3.Model ///
Grantee Values
/// /// You can specify the person (grantee) to whom you're assigning access rights (using - /// request elements) in the following ways: + /// request elements) in the following ways. For examples of how to specify these grantee + /// values in JSON format, see the Amazon Web Services CLI example in + /// Enabling Amazon S3 server access logging in the Amazon S3 User Guide. /// ///
@@ -382,16 +389,16 @@ public ChecksumAlgorithm ChecksumAlgorithm // Check to see if ChecksumAlgorithm property is set internal bool IsSetChecksumAlgorithm() { - return !string.IsNullOrEmpty(this._checksumAlgorithm); + return this._checksumAlgorithm != null; } /// /// Gets and sets the property ContentMD5. /// - /// The base64-encoded 128-bit MD5 digest of the data. This header must be used as a message - /// integrity check to verify that the request body was not corrupted in transit. For - /// more information, go to RFC 1864.> - /// + /// The Base64 encoded 128-bit MD5 digest of the data. This header must be used + /// as a message integrity check to verify that the request body was not corrupted in + /// transit. For more information, go to RFC + /// 1864.> /// /// /// @@ -408,7 +415,7 @@ public string ContentMD5 // Check to see if ContentMD5 property is set internal bool IsSetContentMD5() { - return !string.IsNullOrEmpty(this._contentMD5); + return this._contentMD5 != null; } /// @@ -428,7 +435,7 @@ public string ExpectedBucketOwner // Check to see if ExpectedBucketOwner property is set internal bool IsSetExpectedBucketOwner() { - return !string.IsNullOrEmpty(this._expectedBucketOwner); + return this._expectedBucketOwner != null; } /// @@ -450,7 +457,7 @@ public string GrantFullControl // Check to see if GrantFullControl property is set internal bool IsSetGrantFullControl() { - return !string.IsNullOrEmpty(this._grantFullControl); + return this._grantFullControl != null; } /// @@ -472,7 +479,7 @@ public string GrantRead // Check to see if GrantRead property is set internal bool IsSetGrantRead() { - return !string.IsNullOrEmpty(this._grantRead); + return this._grantRead != null; } /// @@ -494,7 +501,7 @@ public string GrantReadACP // Check to see if GrantReadACP property is set internal bool IsSetGrantReadACP() { - return !string.IsNullOrEmpty(this._grantReadACP); + return this._grantReadACP != null; } /// @@ -517,7 +524,7 @@ public string GrantWrite // Check to see if GrantWrite property is set internal bool IsSetGrantWrite() { - return !string.IsNullOrEmpty(this._grantWrite); + return this._grantWrite != null; } /// @@ -539,7 +546,7 @@ public string GrantWriteACP // Check to see if GrantWriteACP property is set internal bool IsSetGrantWriteACP() { - return !string.IsNullOrEmpty(this._grantWriteACP); + return this._grantWriteACP != null; } /// @@ -548,7 +555,7 @@ internal bool IsSetGrantWriteACP() /// Key for which the PUT action was initiated. /// /// - [AWSProperty(Required = true, Min = 1)] + [AWSProperty(Required=true, Min=1)] public string Key { get { return this._key; } @@ -573,7 +580,7 @@ public RequestPayer RequestPayer // Check to see if RequestPayer property is set internal bool IsSetRequestPayer() { - return !string.IsNullOrEmpty(this._requestPayer); + return this._requestPayer != null; } /// diff --git a/sdk/src/Services/S3/Custom/Model/PutObjectACLResponse.cs b/sdk/src/Services/S3/Generated/Model/PutObjectAclResponse.cs similarity index 90% rename from sdk/src/Services/S3/Custom/Model/PutObjectACLResponse.cs rename to sdk/src/Services/S3/Generated/Model/PutObjectAclResponse.cs index e4577fa1fdc3..f2c2c46c60ed 100644 --- a/sdk/src/Services/S3/Custom/Model/PutObjectACLResponse.cs +++ b/sdk/src/Services/S3/Generated/Model/PutObjectAclResponse.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,6 +13,9 @@ * 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; @@ -45,7 +48,7 @@ public RequestCharged RequestCharged // Check to see if RequestCharged property is set internal bool IsSetRequestCharged() { - return !string.IsNullOrEmpty(this._requestCharged); + return this._requestCharged != null; } } diff --git a/sdk/src/Services/S3/Custom/Model/RestoreStatus.cs b/sdk/src/Services/S3/Generated/Model/RestoreStatus.cs similarity index 59% rename from sdk/src/Services/S3/Custom/Model/RestoreStatus.cs rename to sdk/src/Services/S3/Generated/Model/RestoreStatus.cs index 96de2d234ffe..a87e6f5613aa 100644 --- a/sdk/src/Services/S3/Custom/Model/RestoreStatus.cs +++ b/sdk/src/Services/S3/Generated/Model/RestoreStatus.cs @@ -1,9 +1,32 @@ -using System; +/* + * 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 { /// @@ -14,12 +37,14 @@ namespace Amazon.S3.Model /// /// /// - /// This functionality is not supported for directory buckets. Only the S3 Express One - /// Zone storage class is supported by directory buckets to store objects. + /// This functionality is not supported for directory buckets. Directory buckets only + /// support EXPRESS_ONEZONE (the S3 Express One Zone storage class) in Availability + /// Zones and ONEZONE_IA (the S3 One Zone-Infrequent Access storage class) in Dedicated + /// Local Zones. /// /// /// - public class RestoreStatus + public partial class RestoreStatus { private bool? _isRestoreInProgress; private DateTime? _restoreExpiryDate; @@ -28,20 +53,20 @@ public class RestoreStatus /// Gets and sets the property IsRestoreInProgress. /// /// Specifies whether the object is currently being restored. If the object restoration - /// is in progress, the header returns the value TRUE. For example: + /// is in progress, the header returns the value TRUE. For example: /// /// /// - /// x-amz-optional-object-attributes: IsRestoreInProgress="true" + /// x-amz-optional-object-attributes: IsRestoreInProgress="true" /// /// /// - /// If the object restoration has completed, the header returns the value FALSE. + /// If the object restoration has completed, the header returns the value FALSE. /// For example: /// /// /// - /// x-amz-optional-object-attributes: IsRestoreInProgress="false", RestoreExpiryDate="2012-12-21T00:00:00.000Z" + /// x-amz-optional-object-attributes: IsRestoreInProgress="false", RestoreExpiryDate="2012-12-21T00:00:00.000Z" /// /// /// @@ -58,7 +83,7 @@ public bool? IsRestoreInProgress // Check to see if IsRestoreInProgress property is set internal bool IsSetIsRestoreInProgress() { - return this._isRestoreInProgress.HasValue; + return this._isRestoreInProgress.HasValue; } /// @@ -69,7 +94,7 @@ internal bool IsSetIsRestoreInProgress() /// /// /// - /// x-amz-optional-object-attributes: IsRestoreInProgress="false", RestoreExpiryDate="2012-12-21T00:00:00.000Z" + /// x-amz-optional-object-attributes: IsRestoreInProgress="false", RestoreExpiryDate="2012-12-21T00:00:00.000Z" /// /// /// @@ -82,8 +107,8 @@ public DateTime? RestoreExpiryDate // Check to see if RestoreExpiryDate property is set internal bool IsSetRestoreExpiryDate() { - return this._restoreExpiryDate.HasValue; + return this._restoreExpiryDate.HasValue; } } -} +} \ No newline at end of file diff --git a/sdk/src/Services/S3/Generated/Model/S3AccessControlList.cs b/sdk/src/Services/S3/Generated/Model/S3AccessControlList.cs new file mode 100644 index 000000000000..cd49cdba9478 --- /dev/null +++ b/sdk/src/Services/S3/Generated/Model/S3AccessControlList.cs @@ -0,0 +1,82 @@ +/* + * 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 +{ + /// + /// Contains the elements that set the ACL permissions for an object per grantee. + /// + public partial class S3AccessControlList + { + private List _grants = AWSConfigs.InitializeCollections ? new List() : null; + private Owner _owner; + + /// + /// Gets and sets the property Grants. + /// + /// A list of grants. + /// + /// + /// 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 Grants + { + get { return this._grants; } + set { this._grants = value; } + } + + // Check to see if Grants property is set + internal bool IsSetGrants() + { + return this._grants != null && (this._grants.Count > 0 || !AWSConfigs.InitializeCollections); + } + + /// + /// Gets and sets the property Owner. + /// + /// Container for the bucket owner's display name and ID. + /// + /// + public Owner Owner + { + get { return this._owner; } + set { this._owner = value; } + } + + // Check to see if Owner property is set + internal bool IsSetOwner() + { + return this._owner != null; + } + + } +} \ No newline at end of file diff --git a/sdk/src/Services/S3/Generated/Model/S3Object.cs b/sdk/src/Services/S3/Generated/Model/S3Object.cs new file mode 100644 index 000000000000..e28a49903b95 --- /dev/null +++ b/sdk/src/Services/S3/Generated/Model/S3Object.cs @@ -0,0 +1,268 @@ +/* + * 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 +{ + /// + /// An object consists of data and its descriptive metadata. + /// + public partial class S3Object + { + private List _checksumAlgorithm = AWSConfigs.InitializeCollections ? new List() : null; + private ChecksumType _checksumType; + private string _eTag; + private string _key; + private DateTime? _lastModified; + private Owner _owner; + private RestoreStatus _restoreStatus; + private long? _size; + private S3StorageClass _storageClass; + + /// + /// Gets and sets the property ChecksumAlgorithm. + /// + /// The algorithm that was used to create a checksum of the object. + /// + /// + /// 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 ChecksumAlgorithm + { + get { return this._checksumAlgorithm; } + set { this._checksumAlgorithm = value; } + } + + // Check to see if ChecksumAlgorithm property is set + internal bool IsSetChecksumAlgorithm() + { + return this._checksumAlgorithm != null && (this._checksumAlgorithm.Count > 0 || !AWSConfigs.InitializeCollections); + } + + /// + /// Gets and sets the property ChecksumType. + /// + /// The checksum type that is used to calculate the object’s checksum value. For more + /// information, see Checking + /// object integrity in the Amazon S3 User Guide. + /// + /// + public ChecksumType ChecksumType + { + get { return this._checksumType; } + set { this._checksumType = value; } + } + + // Check to see if ChecksumType property is set + internal bool IsSetChecksumType() + { + return this._checksumType != null; + } + + /// + /// Gets and sets the property ETag. + /// + /// The entity tag is a hash of the object. The ETag reflects changes only to the contents + /// of an object, not its metadata. The ETag may or may not be an MD5 digest of the object + /// data. Whether or not it is depends on how the object was created and how it is encrypted + /// as described below: + /// + ///
  • + /// + /// Objects created by the PUT Object, POST Object, or Copy operation, or through the + /// Amazon Web Services Management Console, and are encrypted by SSE-S3 or plaintext, + /// have ETags that are an MD5 digest of their object data. + /// + ///
  • + /// + /// Objects created by the PUT Object, POST Object, or Copy operation, or through the + /// Amazon Web Services Management Console, and are encrypted by SSE-C or SSE-KMS, have + /// ETags that are not an MD5 digest of their object data. + /// + ///
  • + /// + /// If an object is created by either the Multipart Upload or Part Copy operation, the + /// ETag is not an MD5 digest, regardless of the method of encryption. If an object is + /// larger than 16 MB, the Amazon Web Services Management Console will upload or copy + /// that object as a Multipart Upload, and therefore the ETag will not be an MD5 digest. + /// + ///
+ /// + /// Directory buckets - MD5 is not supported by directory buckets. + /// + /// + ///
+ public string ETag + { + get { return this._eTag; } + set { this._eTag = value; } + } + + // Check to see if ETag property is set + internal bool IsSetETag() + { + return this._eTag != null; + } + + /// + /// Gets and sets the property Key. + /// + /// The name that you assign to an object. You use the object key to retrieve the object. + /// + /// + [AWSProperty(Min=1)] + public string Key + { + get { return this._key; } + set { this._key = value; } + } + + // Check to see if Key property is set + internal bool IsSetKey() + { + return this._key != null; + } + + /// + /// Gets and sets the property LastModified. + /// + /// Creation date of the object. + /// + /// + public DateTime? LastModified + { + get { return this._lastModified; } + set { this._lastModified = value; } + } + + // Check to see if LastModified property is set + internal bool IsSetLastModified() + { + return this._lastModified.HasValue; + } + + /// + /// Gets and sets the property Owner. + /// + /// The owner of the object + /// + /// + /// + /// Directory buckets - The bucket owner is returned as the object owner. + /// + /// + /// + public Owner Owner + { + get { return this._owner; } + set { this._owner = value; } + } + + // Check to see if Owner property is set + internal bool IsSetOwner() + { + return this._owner != null; + } + + /// + /// Gets and sets the property RestoreStatus. + /// + /// Specifies the restoration status of an object. Objects in certain storage classes + /// must be restored before they can be retrieved. For more information about these storage + /// classes and how to work with archived objects, see + /// Working with archived objects in the Amazon S3 User Guide. + /// + /// + /// + /// This functionality is not supported for directory buckets. Directory buckets only + /// support EXPRESS_ONEZONE (the S3 Express One Zone storage class) in Availability + /// Zones and ONEZONE_IA (the S3 One Zone-Infrequent Access storage class) in Dedicated + /// Local Zones. + /// + /// + /// + public RestoreStatus RestoreStatus + { + get { return this._restoreStatus; } + set { this._restoreStatus = value; } + } + + // Check to see if RestoreStatus property is set + internal bool IsSetRestoreStatus() + { + return this._restoreStatus != null; + } + + /// + /// Gets and sets the property Size. + /// + /// Size in bytes of the object + /// + /// + public long? Size + { + get { return this._size; } + set { this._size = value; } + } + + // Check to see if Size property is set + internal bool IsSetSize() + { + return this._size.HasValue; + } + + /// + /// Gets and sets the property StorageClass. + /// + /// The class of storage used to store the object. + /// + /// + /// + /// Directory buckets - Directory buckets only support EXPRESS_ONEZONE + /// (the S3 Express One Zone storage class) in Availability Zones and ONEZONE_IA + /// (the S3 One Zone-Infrequent Access storage class) in Dedicated Local Zones. + /// + /// + /// + public S3StorageClass StorageClass + { + get { return this._storageClass; } + set { this._storageClass = value; } + } + + // Check to see if StorageClass property is set + internal bool IsSetStorageClass() + { + return this._storageClass != null; + } + + } +} \ No newline at end of file diff --git a/sdk/src/Services/S3/Generated/Model/S3ObjectVersion.cs b/sdk/src/Services/S3/Generated/Model/S3ObjectVersion.cs new file mode 100644 index 000000000000..f73e94d75eac --- /dev/null +++ b/sdk/src/Services/S3/Generated/Model/S3ObjectVersion.cs @@ -0,0 +1,78 @@ +/* + * 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 +{ + /// + /// The version of an object. + /// + public partial class S3ObjectVersion : S3Object + { + private bool? _isLatest; + private string _versionId; + + /// + /// Gets and sets the property IsLatest. + /// + /// Specifies whether the object is (true) or is not (false) the latest version of an + /// object. + /// + /// + public bool? IsLatest + { + get { return this._isLatest; } + set { this._isLatest = value; } + } + + // Check to see if IsLatest property is set + internal bool IsSetIsLatest() + { + return this._isLatest.HasValue; + } + + /// + /// Gets and sets the property VersionId. + /// + /// Version ID of an object. + /// + /// + public string VersionId + { + get { return this._versionId; } + set { this._versionId = value; } + } + + // Check to see if VersionId property is set + internal bool IsSetVersionId() + { + return this._versionId != null; + } + + } +} \ No newline at end of file diff --git a/sdk/test/UnitTests/Custom/ConstantClassTestBase.cs b/sdk/test/UnitTests/Custom/ConstantClassTestBase.cs index aee6bfb14b4b..e7d0b56802d5 100644 --- a/sdk/test/UnitTests/Custom/ConstantClassTestBase.cs +++ b/sdk/test/UnitTests/Custom/ConstantClassTestBase.cs @@ -33,7 +33,7 @@ private IEnumerable GetServiceModelEnumValues(string enumName) public void AssertConstantsMatch(IReflect constantClassType, string enumName) { var constantClassValues = new HashSet(GetConstantClassValues(constantClassType)); - var serviceModelEnumValues = new HashSet(GetServiceModelEnumValues(enumName)); + var serviceModelEnumValues = string.IsNullOrEmpty(_serviceModelUnderTest.Customizations.GetOverrideShapeName(enumName)) ? GetServiceModelEnumValues(enumName) : GetServiceModelEnumValues(_serviceModelUnderTest.Customizations.GetOverrideShapeName(enumName)); Assert.IsTrue(constantClassValues.SetEquals(serviceModelEnumValues)); } }