diff --git a/generator/.DevConfigs/f9ca2282-a643-477e-b58e-845066d6665c.json b/generator/.DevConfigs/f9ca2282-a643-477e-b58e-845066d6665c.json new file mode 100644 index 000000000000..aeacc0ba9ac3 --- /dev/null +++ b/generator/.DevConfigs/f9ca2282-a643-477e-b58e-845066d6665c.json @@ -0,0 +1,9 @@ +{ + "core": { + "changeLogMessages": [ + "Added PaginatorKey attributes to Request properties that PowerShell consumes for Auto-Iteration." + ], + "type": "patch", + "updateMinimum": true + } + } \ No newline at end of file diff --git a/generator/ServiceClientGeneratorLib/Generators/SourceFiles/StructureGenerator.cs b/generator/ServiceClientGeneratorLib/Generators/SourceFiles/StructureGenerator.cs index 4e9562e1edfd..ae48e9439dd5 100644 --- a/generator/ServiceClientGeneratorLib/Generators/SourceFiles/StructureGenerator.cs +++ b/generator/ServiceClientGeneratorLib/Generators/SourceFiles/StructureGenerator.cs @@ -18,7 +18,7 @@ namespace ServiceClientGenerator.Generators.SourceFiles /// Class to produce the template output /// - #line 1 "C:\Projects\aws-sdk-net-v4\generator\ServiceClientGeneratorLib\Generators\SourceFiles\StructureGenerator.tt" + #line 1 "C:\git\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\SourceFiles\StructureGenerator.tt" [global::System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.VisualStudio.TextTemplating", "17.0.0.0")] public partial class StructureGenerator : BaseGenerator { @@ -30,7 +30,7 @@ public override string TransformText() { this.Write("\r\n"); - #line 7 "C:\Projects\aws-sdk-net-v4\generator\ServiceClientGeneratorLib\Generators\SourceFiles\StructureGenerator.tt" + #line 7 "C:\git\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\SourceFiles\StructureGenerator.tt" AddLicenseHeader(); @@ -41,17 +41,28 @@ public override string TransformText() "\r\nusing System.Text;\r\nusing System.IO;\r\nusing System.Net;\r\n\r\nusing Amazon.Runtim" + "e;\r\nusing Amazon.Runtime.Internal;\r\n"); - #line 19 "C:\Projects\aws-sdk-net-v4\generator\ServiceClientGeneratorLib\Generators\SourceFiles\StructureGenerator.tt" + #line 19 "C:\git\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\SourceFiles\StructureGenerator.tt" bool structureIsNotEventStream = this.Structure != null && !this.Structure.IsEventStream; bool structureIsEventStream = this.Structure != null && this.Structure.IsEventStream; bool structureIsEvent = this.Structure != null && this.Structure.IsEvent; +if(this.StructureType == StructureType.Request && this.Operation.AuthType.HasValue) +{ + + + #line default + #line hidden + this.Write("using Amazon.Runtime.Internal.Auth;\r\n"); + + #line 27 "C:\git\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\SourceFiles\StructureGenerator.tt" + +} #line default #line hidden - #line 24 "C:\Projects\aws-sdk-net-v4\generator\ServiceClientGeneratorLib\Generators\SourceFiles\StructureGenerator.tt" + #line 30 "C:\git\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\SourceFiles\StructureGenerator.tt" if(structureIsEvent || structureIsEventStream) { @@ -62,7 +73,7 @@ public override string TransformText() this.Write("using Amazon.Runtime.EventStreams;\r\nusing Amazon.Runtime.EventStreams.Internal;\r\n" + "using "); - #line 30 "C:\Projects\aws-sdk-net-v4\generator\ServiceClientGeneratorLib\Generators\SourceFiles\StructureGenerator.tt" + #line 36 "C:\git\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\SourceFiles\StructureGenerator.tt" this.Write(this.ToStringHelper.ToStringWithCulture(this.Config.Namespace)); #line default @@ -70,7 +81,7 @@ public override string TransformText() this.Write(".Model.Internal.MarshallTransformations;\r\nusing Amazon.Runtime.EventStreams.Utils" + ";\r\nusing Amazon.Runtime.Internal.Util;\r\n"); - #line 33 "C:\Projects\aws-sdk-net-v4\generator\ServiceClientGeneratorLib\Generators\SourceFiles\StructureGenerator.tt" + #line 39 "C:\git\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\SourceFiles\StructureGenerator.tt" } @@ -79,14 +90,14 @@ public override string TransformText() #line hidden this.Write("\r\n#pragma warning disable CS0612,CS0618,CS1570\r\nnamespace "); - #line 38 "C:\Projects\aws-sdk-net-v4\generator\ServiceClientGeneratorLib\Generators\SourceFiles\StructureGenerator.tt" + #line 44 "C:\git\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\SourceFiles\StructureGenerator.tt" this.Write(this.ToStringHelper.ToStringWithCulture(this.Config.Namespace)); #line default #line hidden this.Write(".Model\r\n{\r\n"); - #line 40 "C:\Projects\aws-sdk-net-v4\generator\ServiceClientGeneratorLib\Generators\SourceFiles\StructureGenerator.tt" + #line 46 "C:\git\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\SourceFiles\StructureGenerator.tt" if(this.StructureType == StructureType.Request) this.FormatOperationRequestDocumentation(this.Operation); @@ -100,14 +111,14 @@ public override string TransformText() #line hidden this.Write(" /// \r\n /// This is the response object from the "); - #line 49 "C:\Projects\aws-sdk-net-v4\generator\ServiceClientGeneratorLib\Generators\SourceFiles\StructureGenerator.tt" + #line 55 "C:\git\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\SourceFiles\StructureGenerator.tt" this.Write(this.ToStringHelper.ToStringWithCulture(this.Operation.Name)); #line default #line hidden this.Write(" operation.\r\n /// \r\n"); - #line 51 "C:\Projects\aws-sdk-net-v4\generator\ServiceClientGeneratorLib\Generators\SourceFiles\StructureGenerator.tt" + #line 57 "C:\git\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\SourceFiles\StructureGenerator.tt" } else @@ -117,7 +128,7 @@ public override string TransformText() #line default #line hidden - #line 56 "C:\Projects\aws-sdk-net-v4\generator\ServiceClientGeneratorLib\Generators\SourceFiles\StructureGenerator.tt" + #line 62 "C:\git\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\SourceFiles\StructureGenerator.tt" if(this.Structure != null && this.Structure.IsDeprecated) { @@ -127,14 +138,14 @@ public override string TransformText() #line hidden this.Write(" [Obsolete(\""); - #line 60 "C:\Projects\aws-sdk-net-v4\generator\ServiceClientGeneratorLib\Generators\SourceFiles\StructureGenerator.tt" + #line 66 "C:\git\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\SourceFiles\StructureGenerator.tt" this.Write(this.ToStringHelper.ToStringWithCulture(this.Structure.DeprecationMessage)); #line default #line hidden this.Write("\")]\r\n"); - #line 61 "C:\Projects\aws-sdk-net-v4\generator\ServiceClientGeneratorLib\Generators\SourceFiles\StructureGenerator.tt" + #line 67 "C:\git\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\SourceFiles\StructureGenerator.tt" } if(this.Structure is ExceptionShape) @@ -145,7 +156,7 @@ public override string TransformText() #line hidden this.Write(" #if !NETSTANDARD\r\n [Serializable]\r\n #endif\r\n"); - #line 69 "C:\Projects\aws-sdk-net-v4\generator\ServiceClientGeneratorLib\Generators\SourceFiles\StructureGenerator.tt" + #line 75 "C:\git\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\SourceFiles\StructureGenerator.tt" } @@ -153,7 +164,7 @@ public override string TransformText() #line default #line hidden - #line 72 "C:\Projects\aws-sdk-net-v4\generator\ServiceClientGeneratorLib\Generators\SourceFiles\StructureGenerator.tt" + #line 78 "C:\git\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\SourceFiles\StructureGenerator.tt" if(this.Structure != null && this.Structure.IsEventStream) @@ -170,14 +181,14 @@ public override string TransformText() #line hidden this.Write(" "); - #line 83 "C:\Projects\aws-sdk-net-v4\generator\ServiceClientGeneratorLib\Generators\SourceFiles\StructureGenerator.tt" + #line 89 "C:\git\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\SourceFiles\StructureGenerator.tt" this.Write(this.ToStringHelper.ToStringWithCulture(EventStreamOutput)); #line default #line hidden this.Write("\r\n"); - #line 84 "C:\Projects\aws-sdk-net-v4\generator\ServiceClientGeneratorLib\Generators\SourceFiles\StructureGenerator.tt" + #line 90 "C:\git\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\SourceFiles\StructureGenerator.tt" } @@ -185,7 +196,7 @@ public override string TransformText() #line default #line hidden - #line 87 "C:\Projects\aws-sdk-net-v4\generator\ServiceClientGeneratorLib\Generators\SourceFiles\StructureGenerator.tt" + #line 93 "C:\git\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\SourceFiles\StructureGenerator.tt" bool hasStreamingMember = this.Structure?.Members.Any(member => member.Shape.IsStreaming) ?? false; @@ -203,20 +214,20 @@ public override string TransformText() #line hidden this.Write(" public partial class "); - #line 99 "C:\Projects\aws-sdk-net-v4\generator\ServiceClientGeneratorLib\Generators\SourceFiles\StructureGenerator.tt" + #line 105 "C:\git\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\SourceFiles\StructureGenerator.tt" this.Write(this.ToStringHelper.ToStringWithCulture(this.ClassName)); #line default #line hidden - #line 99 "C:\Projects\aws-sdk-net-v4\generator\ServiceClientGeneratorLib\Generators\SourceFiles\StructureGenerator.tt" + #line 105 "C:\git\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\SourceFiles\StructureGenerator.tt" this.Write(this.ToStringHelper.ToStringWithCulture(this.BaseClassString)); #line default #line hidden this.Write(", IDisposable\r\n {\r\n"); - #line 101 "C:\Projects\aws-sdk-net-v4\generator\ServiceClientGeneratorLib\Generators\SourceFiles\StructureGenerator.tt" + #line 107 "C:\git\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\SourceFiles\StructureGenerator.tt" } else @@ -226,7 +237,7 @@ public override string TransformText() #line default #line hidden - #line 106 "C:\Projects\aws-sdk-net-v4\generator\ServiceClientGeneratorLib\Generators\SourceFiles\StructureGenerator.tt" + #line 112 "C:\git\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\SourceFiles\StructureGenerator.tt" if( (this.Structure == null) || (structureIsNotEventStream)) { @@ -236,20 +247,20 @@ public override string TransformText() #line hidden this.Write(" public partial class "); - #line 110 "C:\Projects\aws-sdk-net-v4\generator\ServiceClientGeneratorLib\Generators\SourceFiles\StructureGenerator.tt" + #line 116 "C:\git\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\SourceFiles\StructureGenerator.tt" this.Write(this.ToStringHelper.ToStringWithCulture(this.ClassName)); #line default #line hidden - #line 110 "C:\Projects\aws-sdk-net-v4\generator\ServiceClientGeneratorLib\Generators\SourceFiles\StructureGenerator.tt" + #line 116 "C:\git\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\SourceFiles\StructureGenerator.tt" this.Write(this.ToStringHelper.ToStringWithCulture(this.BaseClassString)); #line default #line hidden this.Write("\r\n"); - #line 111 "C:\Projects\aws-sdk-net-v4\generator\ServiceClientGeneratorLib\Generators\SourceFiles\StructureGenerator.tt" + #line 117 "C:\git\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\SourceFiles\StructureGenerator.tt" if(structureIsEvent) { @@ -259,7 +270,7 @@ public override string TransformText() #line hidden this.Write(" : IEventStreamEvent\r\n"); - #line 116 "C:\Projects\aws-sdk-net-v4\generator\ServiceClientGeneratorLib\Generators\SourceFiles\StructureGenerator.tt" + #line 122 "C:\git\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\SourceFiles\StructureGenerator.tt" } @@ -268,7 +279,7 @@ public override string TransformText() #line hidden this.Write(" {\r\n"); - #line 120 "C:\Projects\aws-sdk-net-v4\generator\ServiceClientGeneratorLib\Generators\SourceFiles\StructureGenerator.tt" + #line 126 "C:\git\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\SourceFiles\StructureGenerator.tt" } @@ -276,7 +287,7 @@ public override string TransformText() #line default #line hidden - #line 123 "C:\Projects\aws-sdk-net-v4\generator\ServiceClientGeneratorLib\Generators\SourceFiles\StructureGenerator.tt" + #line 129 "C:\git\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\SourceFiles\StructureGenerator.tt" } @@ -284,7 +295,7 @@ public override string TransformText() #line default #line hidden - #line 126 "C:\Projects\aws-sdk-net-v4\generator\ServiceClientGeneratorLib\Generators\SourceFiles\StructureGenerator.tt" + #line 132 "C:\git\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\SourceFiles\StructureGenerator.tt" if(structureIsNotEventStream) { @@ -296,28 +307,28 @@ public override string TransformText() #line hidden this.Write(" private "); - #line 132 "C:\Projects\aws-sdk-net-v4\generator\ServiceClientGeneratorLib\Generators\SourceFiles\StructureGenerator.tt" + #line 138 "C:\git\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\SourceFiles\StructureGenerator.tt" this.Write(this.ToStringHelper.ToStringWithCulture(this.Structure.Name)); #line default #line hidden this.Write(" _response;\r\n\r\n /// \r\n /// Gets and sets the "); - #line 135 "C:\Projects\aws-sdk-net-v4\generator\ServiceClientGeneratorLib\Generators\SourceFiles\StructureGenerator.tt" + #line 141 "C:\git\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\SourceFiles\StructureGenerator.tt" this.Write(this.ToStringHelper.ToStringWithCulture(this.Structure.Name)); #line default #line hidden this.Write(" property.\r\n /// \r\n public "); - #line 137 "C:\Projects\aws-sdk-net-v4\generator\ServiceClientGeneratorLib\Generators\SourceFiles\StructureGenerator.tt" + #line 143 "C:\git\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\SourceFiles\StructureGenerator.tt" this.Write(this.ToStringHelper.ToStringWithCulture(this.Structure.Name)); #line default #line hidden this.Write(" "); - #line 137 "C:\Projects\aws-sdk-net-v4\generator\ServiceClientGeneratorLib\Generators\SourceFiles\StructureGenerator.tt" + #line 143 "C:\git\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\SourceFiles\StructureGenerator.tt" this.Write(this.ToStringHelper.ToStringWithCulture(this.Structure.Name)); #line default @@ -325,7 +336,7 @@ public override string TransformText() this.Write("\r\n {\r\n get { return this._response; }\r\n set { this._" + "response = value; }\r\n }\r\n"); - #line 142 "C:\Projects\aws-sdk-net-v4\generator\ServiceClientGeneratorLib\Generators\SourceFiles\StructureGenerator.tt" + #line 148 "C:\git\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\SourceFiles\StructureGenerator.tt" } else @@ -348,27 +359,27 @@ public override string TransformText() #line hidden this.Write(" private "); - #line 159 "C:\Projects\aws-sdk-net-v4\generator\ServiceClientGeneratorLib\Generators\SourceFiles\StructureGenerator.tt" + #line 165 "C:\git\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\SourceFiles\StructureGenerator.tt" this.Write(this.ToStringHelper.ToStringWithCulture(member.DetermineType())); #line default #line hidden this.Write(" "); - #line 159 "C:\Projects\aws-sdk-net-v4\generator\ServiceClientGeneratorLib\Generators\SourceFiles\StructureGenerator.tt" + #line 165 "C:\git\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\SourceFiles\StructureGenerator.tt" this.Write(this.ToStringHelper.ToStringWithCulture(member.VariableName)); #line default #line hidden - #line 159 "C:\Projects\aws-sdk-net-v4\generator\ServiceClientGeneratorLib\Generators\SourceFiles\StructureGenerator.tt" + #line 165 "C:\git\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\SourceFiles\StructureGenerator.tt" this.Write(this.ToStringHelper.ToStringWithCulture(member.IsCollection ? string.Format(" = AWSConfigs.InitializeCollections ? new {0}() : null;", member.DetermineType()) : ";")); #line default #line hidden this.Write("\r\n"); - #line 160 "C:\Projects\aws-sdk-net-v4\generator\ServiceClientGeneratorLib\Generators\SourceFiles\StructureGenerator.tt" + #line 166 "C:\git\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\SourceFiles\StructureGenerator.tt" } @@ -377,7 +388,7 @@ public override string TransformText() #line hidden this.Write("\r\n"); - #line 164 "C:\Projects\aws-sdk-net-v4\generator\ServiceClientGeneratorLib\Generators\SourceFiles\StructureGenerator.tt" + #line 170 "C:\git\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\SourceFiles\StructureGenerator.tt" AddSimpleRequestConstructors(this.ClassName, this.Structure, this.Config.Namespace); @@ -392,14 +403,14 @@ public override string TransformText() #line hidden this.Write(" private RetryableDetails _retryableDetails = new RetryableDetails("); - #line 173 "C:\Projects\aws-sdk-net-v4\generator\ServiceClientGeneratorLib\Generators\SourceFiles\StructureGenerator.tt" + #line 179 "C:\git\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\SourceFiles\StructureGenerator.tt" this.Write(this.ToStringHelper.ToStringWithCulture(exceptionShape.Throttling.ToString().ToLower())); #line default #line hidden this.Write(");\r\n"); - #line 174 "C:\Projects\aws-sdk-net-v4\generator\ServiceClientGeneratorLib\Generators\SourceFiles\StructureGenerator.tt" + #line 180 "C:\git\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\SourceFiles\StructureGenerator.tt" @@ -407,7 +418,7 @@ public override string TransformText() #line hidden this.Write("\r\n"); - #line 177 "C:\Projects\aws-sdk-net-v4\generator\ServiceClientGeneratorLib\Generators\SourceFiles\StructureGenerator.tt" + #line 183 "C:\git\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\SourceFiles\StructureGenerator.tt" } @@ -416,7 +427,7 @@ public override string TransformText() #line hidden this.Write(" /// \r\n /// Constructs a new "); - #line 2 "C:\Projects\aws-sdk-net-v4\generator\ServiceClientGeneratorLib\Generators\SourceFiles\.\Exceptions\ExceptionConstructors.t4" + #line 2 "C:\git\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\SourceFiles\.\Exceptions\ExceptionConstructors.t4" this.Write(this.ToStringHelper.ToStringWithCulture(this.Structure.Name)); #line default @@ -425,7 +436,7 @@ public override string TransformText() "/// \r\n /// Describes the error encountered.\r\n " + " /// \r\n public "); - #line 8 "C:\Projects\aws-sdk-net-v4\generator\ServiceClientGeneratorLib\Generators\SourceFiles\.\Exceptions\ExceptionConstructors.t4" + #line 8 "C:\git\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\SourceFiles\.\Exceptions\ExceptionConstructors.t4" this.Write(this.ToStringHelper.ToStringWithCulture(this.Structure.Name)); #line default @@ -433,7 +444,7 @@ public override string TransformText() this.Write("(string message) \r\n : base(message) {}\r\n\r\n /// \r\n " + " /// Construct instance of "); - #line 12 "C:\Projects\aws-sdk-net-v4\generator\ServiceClientGeneratorLib\Generators\SourceFiles\.\Exceptions\ExceptionConstructors.t4" + #line 12 "C:\git\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\SourceFiles\.\Exceptions\ExceptionConstructors.t4" this.Write(this.ToStringHelper.ToStringWithCulture(this.Structure.Name)); #line default @@ -441,7 +452,7 @@ public override string TransformText() this.Write("\r\n /// \r\n /// \r\n ///" + " \r\n public "); - #line 16 "C:\Projects\aws-sdk-net-v4\generator\ServiceClientGeneratorLib\Generators\SourceFiles\.\Exceptions\ExceptionConstructors.t4" + #line 16 "C:\git\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\SourceFiles\.\Exceptions\ExceptionConstructors.t4" this.Write(this.ToStringHelper.ToStringWithCulture(this.Structure.Name)); #line default @@ -449,7 +460,7 @@ public override string TransformText() this.Write("(string message, Exception innerException) \r\n : base(message, innerExc" + "eption) {}\r\n\r\n /// \r\n /// Construct instance of "); - #line 20 "C:\Projects\aws-sdk-net-v4\generator\ServiceClientGeneratorLib\Generators\SourceFiles\.\Exceptions\ExceptionConstructors.t4" + #line 20 "C:\git\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\SourceFiles\.\Exceptions\ExceptionConstructors.t4" this.Write(this.ToStringHelper.ToStringWithCulture(this.Structure.Name)); #line default @@ -457,7 +468,7 @@ public override string TransformText() this.Write("\r\n /// \r\n /// \r\n " + " public "); - #line 23 "C:\Projects\aws-sdk-net-v4\generator\ServiceClientGeneratorLib\Generators\SourceFiles\.\Exceptions\ExceptionConstructors.t4" + #line 23 "C:\git\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\SourceFiles\.\Exceptions\ExceptionConstructors.t4" this.Write(this.ToStringHelper.ToStringWithCulture(this.Structure.Name)); #line default @@ -465,7 +476,7 @@ public override string TransformText() this.Write("(Exception innerException) \r\n : base(innerException) {}\r\n\r\n ///" + " \r\n /// Construct instance of "); - #line 27 "C:\Projects\aws-sdk-net-v4\generator\ServiceClientGeneratorLib\Generators\SourceFiles\.\Exceptions\ExceptionConstructors.t4" + #line 27 "C:\git\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\SourceFiles\.\Exceptions\ExceptionConstructors.t4" this.Write(this.ToStringHelper.ToStringWithCulture(this.Structure.Name)); #line default @@ -480,7 +491,7 @@ public override string TransformText() /// public "); - #line 35 "C:\Projects\aws-sdk-net-v4\generator\ServiceClientGeneratorLib\Generators\SourceFiles\.\Exceptions\ExceptionConstructors.t4" + #line 35 "C:\git\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\SourceFiles\.\Exceptions\ExceptionConstructors.t4" this.Write(this.ToStringHelper.ToStringWithCulture(this.Structure.Name)); #line default @@ -491,7 +502,7 @@ public override string TransformText() /// /// Construct instance of "); - #line 39 "C:\Projects\aws-sdk-net-v4\generator\ServiceClientGeneratorLib\Generators\SourceFiles\.\Exceptions\ExceptionConstructors.t4" + #line 39 "C:\git\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\SourceFiles\.\Exceptions\ExceptionConstructors.t4" this.Write(this.ToStringHelper.ToStringWithCulture(this.Structure.Name)); #line default @@ -505,7 +516,7 @@ public override string TransformText() /// public "); - #line 46 "C:\Projects\aws-sdk-net-v4\generator\ServiceClientGeneratorLib\Generators\SourceFiles\.\Exceptions\ExceptionConstructors.t4" + #line 46 "C:\git\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\SourceFiles\.\Exceptions\ExceptionConstructors.t4" this.Write(this.ToStringHelper.ToStringWithCulture(this.Structure.Name)); #line default @@ -517,7 +528,7 @@ public override string TransformText() this.Write("#if !NETSTANDARD\r\n /// \r\n /// Constructs a new instance of" + " the "); - #line 3 "C:\Projects\aws-sdk-net-v4\generator\ServiceClientGeneratorLib\Generators\SourceFiles\.\Exceptions\ExceptionSerialization.t4" + #line 3 "C:\git\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\SourceFiles\.\Exceptions\ExceptionSerialization.t4" this.Write(this.ToStringHelper.ToStringWithCulture(this.Structure.Name)); #line default @@ -530,7 +541,7 @@ public override string TransformText() /// The class name is null or is zero (0). protected "); - #line 9 "C:\Projects\aws-sdk-net-v4\generator\ServiceClientGeneratorLib\Generators\SourceFiles\.\Exceptions\ExceptionSerialization.t4" + #line 9 "C:\git\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\SourceFiles\.\Exceptions\ExceptionSerialization.t4" this.Write(this.ToStringHelper.ToStringWithCulture(this.Structure.Name)); #line default @@ -538,7 +549,7 @@ public override string TransformText() this.Write("(System.Runtime.Serialization.SerializationInfo info, System.Runtime.Serializatio" + "n.StreamingContext context)\r\n : base(info, context)\r\n {\r\n"); - #line 12 "C:\Projects\aws-sdk-net-v4\generator\ServiceClientGeneratorLib\Generators\SourceFiles\.\Exceptions\ExceptionSerialization.t4" + #line 12 "C:\git\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\SourceFiles\.\Exceptions\ExceptionSerialization.t4" foreach(var member in this.Structure.Members) { @@ -548,35 +559,35 @@ public override string TransformText() #line hidden this.Write(" this."); - #line 16 "C:\Projects\aws-sdk-net-v4\generator\ServiceClientGeneratorLib\Generators\SourceFiles\.\Exceptions\ExceptionSerialization.t4" + #line 16 "C:\git\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\SourceFiles\.\Exceptions\ExceptionSerialization.t4" this.Write(this.ToStringHelper.ToStringWithCulture(member.PropertyName)); #line default #line hidden this.Write(" = ("); - #line 16 "C:\Projects\aws-sdk-net-v4\generator\ServiceClientGeneratorLib\Generators\SourceFiles\.\Exceptions\ExceptionSerialization.t4" + #line 16 "C:\git\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\SourceFiles\.\Exceptions\ExceptionSerialization.t4" this.Write(this.ToStringHelper.ToStringWithCulture(member.DetermineType())); #line default #line hidden this.Write(")info.GetValue(\""); - #line 16 "C:\Projects\aws-sdk-net-v4\generator\ServiceClientGeneratorLib\Generators\SourceFiles\.\Exceptions\ExceptionSerialization.t4" + #line 16 "C:\git\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\SourceFiles\.\Exceptions\ExceptionSerialization.t4" this.Write(this.ToStringHelper.ToStringWithCulture(member.PropertyName)); #line default #line hidden this.Write("\", typeof("); - #line 16 "C:\Projects\aws-sdk-net-v4\generator\ServiceClientGeneratorLib\Generators\SourceFiles\.\Exceptions\ExceptionSerialization.t4" + #line 16 "C:\git\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\SourceFiles\.\Exceptions\ExceptionSerialization.t4" this.Write(this.ToStringHelper.ToStringWithCulture(member.DetermineType())); #line default #line hidden this.Write("));\r\n"); - #line 17 "C:\Projects\aws-sdk-net-v4\generator\ServiceClientGeneratorLib\Generators\SourceFiles\.\Exceptions\ExceptionSerialization.t4" + #line 17 "C:\git\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\SourceFiles\.\Exceptions\ExceptionSerialization.t4" } @@ -600,7 +611,7 @@ public override void GetObjectData(System.Runtime.Serialization.SerializationInf base.GetObjectData(info, context); "); - #line 35 "C:\Projects\aws-sdk-net-v4\generator\ServiceClientGeneratorLib\Generators\SourceFiles\.\Exceptions\ExceptionSerialization.t4" + #line 35 "C:\git\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\SourceFiles\.\Exceptions\ExceptionSerialization.t4" foreach(var member in this.Structure.Members) { @@ -610,21 +621,21 @@ public override void GetObjectData(System.Runtime.Serialization.SerializationInf #line hidden this.Write(" info.AddValue(\""); - #line 39 "C:\Projects\aws-sdk-net-v4\generator\ServiceClientGeneratorLib\Generators\SourceFiles\.\Exceptions\ExceptionSerialization.t4" + #line 39 "C:\git\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\SourceFiles\.\Exceptions\ExceptionSerialization.t4" this.Write(this.ToStringHelper.ToStringWithCulture(member.PropertyName)); #line default #line hidden this.Write("\", this."); - #line 39 "C:\Projects\aws-sdk-net-v4\generator\ServiceClientGeneratorLib\Generators\SourceFiles\.\Exceptions\ExceptionSerialization.t4" + #line 39 "C:\git\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\SourceFiles\.\Exceptions\ExceptionSerialization.t4" this.Write(this.ToStringHelper.ToStringWithCulture(member.PropertyName)); #line default #line hidden this.Write(");\r\n"); - #line 40 "C:\Projects\aws-sdk-net-v4\generator\ServiceClientGeneratorLib\Generators\SourceFiles\.\Exceptions\ExceptionSerialization.t4" + #line 40 "C:\git\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\SourceFiles\.\Exceptions\ExceptionSerialization.t4" } @@ -634,7 +645,7 @@ public override void GetObjectData(System.Runtime.Serialization.SerializationInf this.Write(" }\r\n#endif\r\n"); this.Write("\r\n"); - #line 182 "C:\Projects\aws-sdk-net-v4\generator\ServiceClientGeneratorLib\Generators\SourceFiles\StructureGenerator.tt" + #line 188 "C:\git\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\SourceFiles\StructureGenerator.tt" } foreach(var member in this.Structure.Members) @@ -654,13 +665,13 @@ public override void GetObjectData(System.Runtime.Serialization.SerializationInf #line default #line hidden - #line 197 "C:\Projects\aws-sdk-net-v4\generator\ServiceClientGeneratorLib\Generators\SourceFiles\StructureGenerator.tt" + #line 203 "C:\git\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\SourceFiles\StructureGenerator.tt" this.FormatPropertyDocumentation(member); #line default #line hidden - #line 198 "C:\Projects\aws-sdk-net-v4\generator\ServiceClientGeneratorLib\Generators\SourceFiles\StructureGenerator.tt" + #line 204 "C:\git\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\SourceFiles\StructureGenerator.tt" if(member.IsDeprecated) { @@ -670,14 +681,14 @@ public override void GetObjectData(System.Runtime.Serialization.SerializationInf #line hidden this.Write(" [Obsolete(\""); - #line 202 "C:\Projects\aws-sdk-net-v4\generator\ServiceClientGeneratorLib\Generators\SourceFiles\StructureGenerator.tt" + #line 208 "C:\git\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\SourceFiles\StructureGenerator.tt" this.Write(this.ToStringHelper.ToStringWithCulture(member.DeprecationMessage)); #line default #line hidden this.Write("\")]\r\n"); - #line 203 "C:\Projects\aws-sdk-net-v4\generator\ServiceClientGeneratorLib\Generators\SourceFiles\StructureGenerator.tt" + #line 209 "C:\git\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\SourceFiles\StructureGenerator.tt" } @@ -698,6 +709,17 @@ public override void GetObjectData(System.Runtime.Serialization.SerializationInf { propertyAttributes.Add("Max=" + member.Shape.Max); } + if (this.StructureType == StructureType.Request) + { + // Add PaginationRequestKey attribute to Request Pagination properties that will be used by PowerShell for Auto-Iteration + bool hasPaginatorInputToken = this.StructureType == StructureType.Request && this.Operation?.Paginators?.InputTokens.Any(x => x.PropertyName == member.PropertyName) == true; + bool hasPaginatorLimitKey = this.StructureType == StructureType.Request && this.Operation?.Paginators?.LimitKey?.PropertyName == member.PropertyName; + if (hasPaginatorInputToken || hasPaginatorLimitKey) + { + propertyAttributes.Add("PaginationRequestKey=true"); + } + } + if (propertyAttributes.Count > 0) { @@ -706,80 +728,67 @@ public override void GetObjectData(System.Runtime.Serialization.SerializationInf #line hidden this.Write(" [AWSProperty("); - #line 226 "C:\Projects\aws-sdk-net-v4\generator\ServiceClientGeneratorLib\Generators\SourceFiles\StructureGenerator.tt" + #line 243 "C:\git\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\SourceFiles\StructureGenerator.tt" this.Write(this.ToStringHelper.ToStringWithCulture(string.Join(", ", propertyAttributes))); #line default #line hidden this.Write(")]\r\n"); - #line 227 "C:\Projects\aws-sdk-net-v4\generator\ServiceClientGeneratorLib\Generators\SourceFiles\StructureGenerator.tt" + #line 244 "C:\git\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\SourceFiles\StructureGenerator.tt" } // Because some services have model properties named "Equals" which conflicts with .NET's Equals operation. Add the "new" keyword to override the behavior. // The Retryable is there because the CloudHsmServiceException exception from CloudHSM models Retryable with a different return then what comes from the base class. - var memberModifier = string.Empty; - if (member.PropertyName.Equals("Equals") || (this.Structure is ExceptionShape && member.PropertyName.Equals("Retryable"))) - { - memberModifier = "new "; - } - // Cognito and SecurityToken also have a modeled property named Expiration, which conflicts with the interface used in SRA. - else if ( - member.PropertyName.Equals("Expiration") && - this.ClassName.Equals("Credentials") && - (this.Config.Namespace.Equals("Amazon.CognitoIdentity") || this.Config.Namespace.Equals("Amazon.SecurityToken"))) - { - memberModifier = "override "; - } #line default #line hidden this.Write(" "); - #line 246 "C:\Projects\aws-sdk-net-v4\generator\ServiceClientGeneratorLib\Generators\SourceFiles\StructureGenerator.tt" + #line 250 "C:\git\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\SourceFiles\StructureGenerator.tt" this.Write(this.ToStringHelper.ToStringWithCulture(member.AccessModifier)); #line default #line hidden this.Write(" "); - #line 246 "C:\Projects\aws-sdk-net-v4\generator\ServiceClientGeneratorLib\Generators\SourceFiles\StructureGenerator.tt" - this.Write(this.ToStringHelper.ToStringWithCulture(memberModifier)); + #line 250 "C:\git\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\SourceFiles\StructureGenerator.tt" + this.Write(this.ToStringHelper.ToStringWithCulture(member.PropertyName.Equals("Equals") || (this.Structure is ExceptionShape && member.PropertyName.Equals("Retryable")) ? "new " : "")); #line default #line hidden - #line 246 "C:\Projects\aws-sdk-net-v4\generator\ServiceClientGeneratorLib\Generators\SourceFiles\StructureGenerator.tt" + #line 250 "C:\git\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\SourceFiles\StructureGenerator.tt" this.Write(this.ToStringHelper.ToStringWithCulture(member.DetermineType())); #line default #line hidden this.Write(" "); - #line 246 "C:\Projects\aws-sdk-net-v4\generator\ServiceClientGeneratorLib\Generators\SourceFiles\StructureGenerator.tt" + #line 250 "C:\git\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\SourceFiles\StructureGenerator.tt" this.Write(this.ToStringHelper.ToStringWithCulture(member.PropertyName)); #line default #line hidden this.Write("\r\n {\r\n get { return this."); - #line 248 "C:\Projects\aws-sdk-net-v4\generator\ServiceClientGeneratorLib\Generators\SourceFiles\StructureGenerator.tt" + #line 252 "C:\git\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\SourceFiles\StructureGenerator.tt" this.Write(this.ToStringHelper.ToStringWithCulture(member.VariableName)); #line default #line hidden this.Write("; }\r\n set { this."); - #line 249 "C:\Projects\aws-sdk-net-v4\generator\ServiceClientGeneratorLib\Generators\SourceFiles\StructureGenerator.tt" + #line 253 "C:\git\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\SourceFiles\StructureGenerator.tt" this.Write(this.ToStringHelper.ToStringWithCulture(member.VariableName)); #line default #line hidden this.Write(" = value; }\r\n }\r\n\r\n"); - #line 252 "C:\Projects\aws-sdk-net-v4\generator\ServiceClientGeneratorLib\Generators\SourceFiles\StructureGenerator.tt" + #line 256 "C:\git\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\SourceFiles\StructureGenerator.tt" if (member.EmitIsSetProperties) { @@ -790,7 +799,7 @@ public override void GetObjectData(System.Runtime.Serialization.SerializationInf this.Write(" /// \r\n /// This property is set to true if the property <" + "seealso cref=\""); - #line 257 "C:\Projects\aws-sdk-net-v4\generator\ServiceClientGeneratorLib\Generators\SourceFiles\StructureGenerator.tt" + #line 261 "C:\git\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\SourceFiles\StructureGenerator.tt" this.Write(this.ToStringHelper.ToStringWithCulture(member.PropertyName)); #line default @@ -806,7 +815,7 @@ public override void GetObjectData(System.Runtime.Serialization.SerializationInf /// "); - #line 266 "C:\Projects\aws-sdk-net-v4\generator\ServiceClientGeneratorLib\Generators\SourceFiles\StructureGenerator.tt" + #line 270 "C:\git\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\SourceFiles\StructureGenerator.tt" if(member.IsDeprecated) { @@ -816,14 +825,14 @@ public override void GetObjectData(System.Runtime.Serialization.SerializationInf #line hidden this.Write(" [Obsolete(\""); - #line 270 "C:\Projects\aws-sdk-net-v4\generator\ServiceClientGeneratorLib\Generators\SourceFiles\StructureGenerator.tt" + #line 274 "C:\git\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\SourceFiles\StructureGenerator.tt" this.Write(this.ToStringHelper.ToStringWithCulture(member.DeprecationMessage)); #line default #line hidden this.Write("\")]\r\n"); - #line 271 "C:\Projects\aws-sdk-net-v4\generator\ServiceClientGeneratorLib\Generators\SourceFiles\StructureGenerator.tt" + #line 275 "C:\git\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\SourceFiles\StructureGenerator.tt" } @@ -832,7 +841,7 @@ public override void GetObjectData(System.Runtime.Serialization.SerializationInf #line hidden this.Write(" public bool Is"); - #line 274 "C:\Projects\aws-sdk-net-v4\generator\ServiceClientGeneratorLib\Generators\SourceFiles\StructureGenerator.tt" + #line 278 "C:\git\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\SourceFiles\StructureGenerator.tt" this.Write(this.ToStringHelper.ToStringWithCulture(member.PropertyName)); #line default @@ -840,7 +849,7 @@ public override void GetObjectData(System.Runtime.Serialization.SerializationInf this.Write("Set\r\n {\r\n get\r\n {\r\n return Amazon.Uti" + "l.Internal.InternalSDKUtils.GetIsSet(this."); - #line 278 "C:\Projects\aws-sdk-net-v4\generator\ServiceClientGeneratorLib\Generators\SourceFiles\StructureGenerator.tt" + #line 282 "C:\git\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\SourceFiles\StructureGenerator.tt" this.Write(this.ToStringHelper.ToStringWithCulture(member.VariableName)); #line default @@ -848,14 +857,14 @@ public override void GetObjectData(System.Runtime.Serialization.SerializationInf this.Write(");\r\n }\r\n set\r\n {\r\n Amazon.Util.In" + "ternal.InternalSDKUtils.SetIsSet(value, ref this."); - #line 282 "C:\Projects\aws-sdk-net-v4\generator\ServiceClientGeneratorLib\Generators\SourceFiles\StructureGenerator.tt" + #line 286 "C:\git\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\SourceFiles\StructureGenerator.tt" this.Write(this.ToStringHelper.ToStringWithCulture(member.VariableName)); #line default #line hidden this.Write(");\r\n }\r\n }\r\n\r\n"); - #line 286 "C:\Projects\aws-sdk-net-v4\generator\ServiceClientGeneratorLib\Generators\SourceFiles\StructureGenerator.tt" + #line 290 "C:\git\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\SourceFiles\StructureGenerator.tt" } @@ -864,21 +873,21 @@ public override void GetObjectData(System.Runtime.Serialization.SerializationInf #line hidden this.Write(" // Check to see if "); - #line 289 "C:\Projects\aws-sdk-net-v4\generator\ServiceClientGeneratorLib\Generators\SourceFiles\StructureGenerator.tt" + #line 293 "C:\git\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\SourceFiles\StructureGenerator.tt" this.Write(this.ToStringHelper.ToStringWithCulture(member.PropertyName)); #line default #line hidden this.Write(" property is set\r\n internal bool IsSet"); - #line 290 "C:\Projects\aws-sdk-net-v4\generator\ServiceClientGeneratorLib\Generators\SourceFiles\StructureGenerator.tt" + #line 294 "C:\git\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\SourceFiles\StructureGenerator.tt" this.Write(this.ToStringHelper.ToStringWithCulture(member.PropertyName)); #line default #line hidden this.Write("()\r\n {\r\n"); - #line 292 "C:\Projects\aws-sdk-net-v4\generator\ServiceClientGeneratorLib\Generators\SourceFiles\StructureGenerator.tt" + #line 296 "C:\git\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\SourceFiles\StructureGenerator.tt" if (member.EmitIsSetProperties) { @@ -888,14 +897,14 @@ public override void GetObjectData(System.Runtime.Serialization.SerializationInf #line hidden this.Write(" return this.Is"); - #line 296 "C:\Projects\aws-sdk-net-v4\generator\ServiceClientGeneratorLib\Generators\SourceFiles\StructureGenerator.tt" + #line 300 "C:\git\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\SourceFiles\StructureGenerator.tt" this.Write(this.ToStringHelper.ToStringWithCulture(member.PropertyName)); #line default #line hidden this.Write("Set; \r\n"); - #line 297 "C:\Projects\aws-sdk-net-v4\generator\ServiceClientGeneratorLib\Generators\SourceFiles\StructureGenerator.tt" + #line 301 "C:\git\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\SourceFiles\StructureGenerator.tt" } else if (member.IsNullable) @@ -906,14 +915,14 @@ public override void GetObjectData(System.Runtime.Serialization.SerializationInf #line hidden this.Write(" return this."); - #line 302 "C:\Projects\aws-sdk-net-v4\generator\ServiceClientGeneratorLib\Generators\SourceFiles\StructureGenerator.tt" + #line 306 "C:\git\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\SourceFiles\StructureGenerator.tt" this.Write(this.ToStringHelper.ToStringWithCulture(member.VariableName)); #line default #line hidden this.Write(".HasValue; \r\n"); - #line 303 "C:\Projects\aws-sdk-net-v4\generator\ServiceClientGeneratorLib\Generators\SourceFiles\StructureGenerator.tt" + #line 307 "C:\git\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\SourceFiles\StructureGenerator.tt" } else if (member.IsList && (member.MarshallLocation == MarshallLocation.Header || member.MarshallLocation == MarshallLocation.Headers)) @@ -930,14 +939,14 @@ public override void GetObjectData(System.Runtime.Serialization.SerializationInf #line hidden this.Write(" return this."); - #line 314 "C:\Projects\aws-sdk-net-v4\generator\ServiceClientGeneratorLib\Generators\SourceFiles\StructureGenerator.tt" + #line 318 "C:\git\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\SourceFiles\StructureGenerator.tt" this.Write(this.ToStringHelper.ToStringWithCulture(member.VariableName)); #line default #line hidden this.Write(" != null;\r\n"); - #line 315 "C:\Projects\aws-sdk-net-v4\generator\ServiceClientGeneratorLib\Generators\SourceFiles\StructureGenerator.tt" + #line 319 "C:\git\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\SourceFiles\StructureGenerator.tt" } else @@ -948,21 +957,21 @@ public override void GetObjectData(System.Runtime.Serialization.SerializationInf #line hidden this.Write(" return this."); - #line 320 "C:\Projects\aws-sdk-net-v4\generator\ServiceClientGeneratorLib\Generators\SourceFiles\StructureGenerator.tt" + #line 324 "C:\git\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\SourceFiles\StructureGenerator.tt" this.Write(this.ToStringHelper.ToStringWithCulture(member.VariableName)); #line default #line hidden this.Write(" != null && this."); - #line 320 "C:\Projects\aws-sdk-net-v4\generator\ServiceClientGeneratorLib\Generators\SourceFiles\StructureGenerator.tt" + #line 324 "C:\git\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\SourceFiles\StructureGenerator.tt" this.Write(this.ToStringHelper.ToStringWithCulture(member.VariableName)); #line default #line hidden this.Write(".Count > 0;\r\n"); - #line 321 "C:\Projects\aws-sdk-net-v4\generator\ServiceClientGeneratorLib\Generators\SourceFiles\StructureGenerator.tt" + #line 325 "C:\git\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\SourceFiles\StructureGenerator.tt" } } @@ -974,21 +983,21 @@ public override void GetObjectData(System.Runtime.Serialization.SerializationInf #line hidden this.Write(" return this."); - #line 327 "C:\Projects\aws-sdk-net-v4\generator\ServiceClientGeneratorLib\Generators\SourceFiles\StructureGenerator.tt" + #line 331 "C:\git\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\SourceFiles\StructureGenerator.tt" this.Write(this.ToStringHelper.ToStringWithCulture(member.VariableName)); #line default #line hidden this.Write(" != null && (this."); - #line 327 "C:\Projects\aws-sdk-net-v4\generator\ServiceClientGeneratorLib\Generators\SourceFiles\StructureGenerator.tt" + #line 331 "C:\git\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\SourceFiles\StructureGenerator.tt" this.Write(this.ToStringHelper.ToStringWithCulture(member.VariableName)); #line default #line hidden this.Write(".Count > 0 || !AWSConfigs.InitializeCollections); \r\n"); - #line 328 "C:\Projects\aws-sdk-net-v4\generator\ServiceClientGeneratorLib\Generators\SourceFiles\StructureGenerator.tt" + #line 332 "C:\git\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\SourceFiles\StructureGenerator.tt" } else if (member.IsDocument) @@ -999,14 +1008,14 @@ public override void GetObjectData(System.Runtime.Serialization.SerializationInf #line hidden this.Write(" return !this."); - #line 333 "C:\Projects\aws-sdk-net-v4\generator\ServiceClientGeneratorLib\Generators\SourceFiles\StructureGenerator.tt" + #line 337 "C:\git\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\SourceFiles\StructureGenerator.tt" this.Write(this.ToStringHelper.ToStringWithCulture(member.VariableName)); #line default #line hidden this.Write(".IsNull();\r\n"); - #line 334 "C:\Projects\aws-sdk-net-v4\generator\ServiceClientGeneratorLib\Generators\SourceFiles\StructureGenerator.tt" + #line 338 "C:\git\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\SourceFiles\StructureGenerator.tt" } else @@ -1018,14 +1027,14 @@ public override void GetObjectData(System.Runtime.Serialization.SerializationInf #line hidden this.Write(" return this."); - #line 340 "C:\Projects\aws-sdk-net-v4\generator\ServiceClientGeneratorLib\Generators\SourceFiles\StructureGenerator.tt" + #line 344 "C:\git\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\SourceFiles\StructureGenerator.tt" this.Write(this.ToStringHelper.ToStringWithCulture(member.VariableName)); #line default #line hidden this.Write(" != null;\r\n"); - #line 341 "C:\Projects\aws-sdk-net-v4\generator\ServiceClientGeneratorLib\Generators\SourceFiles\StructureGenerator.tt" + #line 345 "C:\git\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\SourceFiles\StructureGenerator.tt" } @@ -1034,10 +1043,76 @@ public override void GetObjectData(System.Runtime.Serialization.SerializationInf #line hidden this.Write(" }\r\n\r\n"); - #line 346 "C:\Projects\aws-sdk-net-v4\generator\ServiceClientGeneratorLib\Generators\SourceFiles\StructureGenerator.tt" + #line 350 "C:\git\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\SourceFiles\StructureGenerator.tt" } + if (this.StructureType == StructureType.Request && this.Operation.AuthType.HasValue) + { + + + #line default + #line hidden + this.Write(" /// \r\n /// Get the signer to use for this request.\r\n " + + " /// \r\n /// A signer for this request.\r\n " + + " override protected AbstractAWSSigner CreateSigner()\r\n {\r\n"); + + #line 362 "C:\git\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\SourceFiles\StructureGenerator.tt" + + switch (this.Operation.AuthType.Value) + { + case OperationAuthType.None: + + + #line default + #line hidden + this.Write(" return new NullSigner();\r\n"); + + #line 368 "C:\git\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\SourceFiles\StructureGenerator.tt" + + break; + case OperationAuthType.V4: + + + #line default + #line hidden + this.Write(" return new AWS4Signer();\r\n"); + + #line 373 "C:\git\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\SourceFiles\StructureGenerator.tt" + + break; + case OperationAuthType.V4UnsignedBody: + + + #line default + #line hidden + this.Write(" return new AWS4Signer(false);\r\n"); + + #line 378 "C:\git\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\SourceFiles\StructureGenerator.tt" + + break; + case OperationAuthType.Bearer: + + + #line default + #line hidden + this.Write(" return new BearerTokenSigner();\r\n"); + + #line 383 "C:\git\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\SourceFiles\StructureGenerator.tt" + + break; + default: + throw new ArgumentException("Unhandled value for operation authtype:" + this.Operation.AuthType.Value); + } + + + #line default + #line hidden + this.Write(" }\r\n"); + + #line 390 "C:\git\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\SourceFiles\StructureGenerator.tt" + + } // Flexible checksum overrides to allow response validation configuration on the request if (this.StructureType == StructureType.Request && !string.IsNullOrEmpty(this.Operation.ChecksumConfiguration?.RequestValidationModeMember)) { @@ -1049,7 +1124,7 @@ public override void GetObjectData(System.Runtime.Serialization.SerializationInf "\r\n protected override CoreChecksumResponseBehavior CoreChecksumMode\r\n " + " {\r\n get\r\n {\r\n if (IsSet"); - #line 360 "C:\Projects\aws-sdk-net-v4\generator\ServiceClientGeneratorLib\Generators\SourceFiles\StructureGenerator.tt" + #line 403 "C:\git\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\SourceFiles\StructureGenerator.tt" this.Write(this.ToStringHelper.ToStringWithCulture(this.Operation.ChecksumConfiguration.RequestValidationModeMember)); #line default @@ -1057,7 +1132,7 @@ public override void GetObjectData(System.Runtime.Serialization.SerializationInf this.Write("())\r\n {\r\n return (CoreChecksumResponseBehavior)" + "Enum.Parse(typeof(CoreChecksumResponseBehavior), this."); - #line 362 "C:\Projects\aws-sdk-net-v4\generator\ServiceClientGeneratorLib\Generators\SourceFiles\StructureGenerator.tt" + #line 405 "C:\git\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\SourceFiles\StructureGenerator.tt" this.Write(this.ToStringHelper.ToStringWithCulture(this.Operation.ChecksumConfiguration.RequestValidationModeMember)); #line default @@ -1065,7 +1140,7 @@ public override void GetObjectData(System.Runtime.Serialization.SerializationInf this.Write(");\r\n }\r\n\r\n return CoreChecksumResponseBehavior.DISA" + "BLED;\r\n }\r\n set { this."); - #line 367 "C:\Projects\aws-sdk-net-v4\generator\ServiceClientGeneratorLib\Generators\SourceFiles\StructureGenerator.tt" + #line 410 "C:\git\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\SourceFiles\StructureGenerator.tt" this.Write(this.ToStringHelper.ToStringWithCulture(this.Operation.ChecksumConfiguration.RequestValidationModeMember)); #line default @@ -1074,7 +1149,7 @@ public override void GetObjectData(System.Runtime.Serialization.SerializationInf "cksumAlgorithm> _supportedChecksumAlgorithms = new List\r\n" + " {\r\n "); - #line 372 "C:\Projects\aws-sdk-net-v4\generator\ServiceClientGeneratorLib\Generators\SourceFiles\StructureGenerator.tt" + #line 415 "C:\git\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\SourceFiles\StructureGenerator.tt" this.Write(this.ToStringHelper.ToStringWithCulture(string.Join(", ", Operation.ChecksumConfiguration?.ResponseAlgorithms?.Select(s => $"CoreChecksumAlgorithm.{s}").ToArray()))); #line default @@ -1083,7 +1158,7 @@ public override void GetObjectData(System.Runtime.Serialization.SerializationInf "ections.ObjectModel.ReadOnlyCollection ChecksumResponseAl" + "gorithms => _supportedChecksumAlgorithms.AsReadOnly();\r\n\r\n #endregion\r\n"); - #line 379 "C:\Projects\aws-sdk-net-v4\generator\ServiceClientGeneratorLib\Generators\SourceFiles\StructureGenerator.tt" + #line 422 "C:\git\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\SourceFiles\StructureGenerator.tt" } @@ -1109,7 +1184,7 @@ public override RetryableDetails Retryable } "); - #line 399 "C:\Projects\aws-sdk-net-v4\generator\ServiceClientGeneratorLib\Generators\SourceFiles\StructureGenerator.tt" + #line 442 "C:\git\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\SourceFiles\StructureGenerator.tt" } } @@ -1124,7 +1199,7 @@ public override RetryableDetails Retryable #line hidden this.Write("\r\n"); - #line 409 "C:\Projects\aws-sdk-net-v4\generator\ServiceClientGeneratorLib\Generators\SourceFiles\StructureGenerator.tt" + #line 452 "C:\git\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\SourceFiles\StructureGenerator.tt" } if (this.StructureType == StructureType.Response && hasStreamingMember) @@ -1158,7 +1233,7 @@ protected virtual void Dispose(bool disposing) { "); - #line 437 "C:\Projects\aws-sdk-net-v4\generator\ServiceClientGeneratorLib\Generators\SourceFiles\StructureGenerator.tt" + #line 480 "C:\git\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\SourceFiles\StructureGenerator.tt" if (this.Structure != null) { @@ -1172,21 +1247,21 @@ protected virtual void Dispose(bool disposing) #line hidden this.Write(" this."); - #line 445 "C:\Projects\aws-sdk-net-v4\generator\ServiceClientGeneratorLib\Generators\SourceFiles\StructureGenerator.tt" + #line 488 "C:\git\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\SourceFiles\StructureGenerator.tt" this.Write(this.ToStringHelper.ToStringWithCulture(member.VariableName)); #line default #line hidden this.Write("?.Dispose();\r\n this."); - #line 446 "C:\Projects\aws-sdk-net-v4\generator\ServiceClientGeneratorLib\Generators\SourceFiles\StructureGenerator.tt" + #line 489 "C:\git\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\SourceFiles\StructureGenerator.tt" this.Write(this.ToStringHelper.ToStringWithCulture(member.VariableName)); #line default #line hidden this.Write(" = null;\r\n"); - #line 447 "C:\Projects\aws-sdk-net-v4\generator\ServiceClientGeneratorLib\Generators\SourceFiles\StructureGenerator.tt" + #line 490 "C:\git\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\SourceFiles\StructureGenerator.tt" } } @@ -1198,7 +1273,7 @@ protected virtual void Dispose(bool disposing) this.Write(" }\r\n\r\n this._disposed = true;\r\n }\r\n\r\n #endr" + "egion\r\n"); - #line 458 "C:\Projects\aws-sdk-net-v4\generator\ServiceClientGeneratorLib\Generators\SourceFiles\StructureGenerator.tt" + #line 501 "C:\git\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\SourceFiles\StructureGenerator.tt" } @@ -1209,7 +1284,7 @@ protected virtual void Dispose(bool disposing) return this.GenerationEnvironment.ToString(); } - #line 464 "C:\Projects\aws-sdk-net-v4\generator\ServiceClientGeneratorLib\Generators\SourceFiles\StructureGenerator.tt" + #line 507 "C:\git\aws-sdk-net-staging\generator\ServiceClientGeneratorLib\Generators\SourceFiles\StructureGenerator.tt" // Set to true when the service model specifies a shape that should be wrapped in a response. ElastiCache CreateCacheCluster is an example of this. public bool IsWrapped { get; set; } diff --git a/generator/ServiceClientGeneratorLib/Generators/SourceFiles/StructureGenerator.tt b/generator/ServiceClientGeneratorLib/Generators/SourceFiles/StructureGenerator.tt index 2850809457cf..353bcb46196d 100644 --- a/generator/ServiceClientGeneratorLib/Generators/SourceFiles/StructureGenerator.tt +++ b/generator/ServiceClientGeneratorLib/Generators/SourceFiles/StructureGenerator.tt @@ -220,6 +220,26 @@ namespace <#=this.Config.Namespace#>.Model { propertyAttributes.Add("Max=" + member.Shape.Max); } + + // Add PaginationRequestKey attribute to Request Pagination properties that will be used by PowerShell for Auto-Iteration + bool hasPaginatorInputToken = this.StructureType == StructureType.Request && this.Operation?.Paginators?.InputTokens.Any(x => x.PropertyName == member.PropertyName) == true; + bool hasPaginatorLimitKey = this.StructureType == StructureType.Request && this.Operation?.Paginators?.LimitKey?.PropertyName == member.PropertyName; + bool hasPaginatorOutputToken = this.StructureType == StructureType.Response && this.Operation?.Paginators?.OutputTokens.Any(x => x.PropertyName == member.PropertyName) == true; + + if (hasPaginatorInputToken) + { + propertyAttributes.Add("PaginationInputToken=true"); + } + else if (hasPaginatorLimitKey) + { + propertyAttributes.Add("PaginationLimitKey=true"); + } + else if (hasPaginatorOutputToken) + { + propertyAttributes.Add("PaginationOutputToken=true"); + } + + if (propertyAttributes.Count > 0) { #> diff --git a/sdk/src/Core/Amazon.Runtime/Internal/AWSPropertyAttribute.cs b/sdk/src/Core/Amazon.Runtime/Internal/AWSPropertyAttribute.cs index dee9a372d078..bf477f2d6ac5 100644 --- a/sdk/src/Core/Amazon.Runtime/Internal/AWSPropertyAttribute.cs +++ b/sdk/src/Core/Amazon.Runtime/Internal/AWSPropertyAttribute.cs @@ -2,6 +2,8 @@ namespace Amazon.Runtime.Internal { + + [AttributeUsage(AttributeTargets.Property, AllowMultiple = false)] public sealed class AWSPropertyAttribute : Attribute { @@ -9,6 +11,10 @@ public sealed class AWSPropertyAttribute : Attribute private long max; public bool Sensitive { get; set; } public bool Required { get; set; } + public bool PaginationInputToken { get; set; } + public bool PaginationOutputToken { get; set; } + public bool PaginationLimitKey { get; set; } + public bool IsMinSet { get; private set; } public long Min