예제 #1
0
    public override MemberDeclarationSyntax GenerateCode(CsInterface csElement)
    {
        var vtblClassName = csElement.VtblName.Split('.').Last();

        // Default: at least protected to enable inheritance.
        var vtblVisibility = csElement.VtblVisibility ?? Visibility.Internal;

        bool AnyOffsetDiffersPredicate()
        {
            bool Predicate(CsMethod x) => x.WindowsOffset != x.Offset ||
            x.InteropSignatures is not
            {
                Count : 1
            }

            v ||
            !v.ContainsKey(PlatformDetectionType.Any);

            return(csElement.Methods.Any(Predicate));
        }

        ExpressionSyntax MethodArrayBuilder(bool withFunctionPointers)
        {
            InitializerExpressionSyntax Generate(PlatformDetectionType platform) =>
            InitializerExpression(
                SyntaxKind.ArrayInitializerExpression,
                SeparatedList(
                    GetOrderedMethods(csElement.Methods, platform)
                    .Select(x => MethodBuilder(x, platform, withFunctionPointers))
                    )
                );

            return(GeneratorHelpers.PlatformSpecificExpression(
                       GlobalNamespace, Generators.Config.Platforms,
                       AnyOffsetDiffersPredicate,
                       () => Generate(PlatformDetectionType.Windows),
                       () => Generate(PlatformDetectionType.ItaniumSystemV),
                       ImplicitArrayCreationExpression
                       ));
        }

        var members = NewMemberList;

        List <CsMethod> legacyMethods = new();

        foreach (var method in csElement.Methods)
        {
            if (method.IsFunctionPointerInVtbl)
            {
                legacyMethods.Add(method);
                continue;
            }

            members.AddRange(method.InteropSignatures.Keys, platform => DelegateCacheDecl(method, platform));
        }

        var conditionalStart = members.Count;

        members.Add(VtblDecl(MethodArrayBuilder(true)).WithTrailingElseDirective());

        foreach (var method in legacyMethods)
        {
            members.AddRange(method.InteropSignatures.Keys, platform => DelegateCacheDecl(method, platform));
        }

        members.Add(VtblDecl(MethodArrayBuilder(false)).WithTrailingEndIfDirective());
        members[conditionalStart] = members[conditionalStart].WithLeadingIfDirective(GeneratorHelpers.PreprocessorNameSyntax);

#if false
        ImplicitArrayCreationExpressionSyntax GenerateDelegateCacheFill(PlatformDetectionType platform) =>
        ImplicitArrayCreationExpression(
            InitializerExpression(
                SyntaxKind.ArrayInitializerExpression,
                SeparatedList(
                    GetOrderedMethods(csElement.Methods, platform)
                    .Select(x => DelegateCacheBuilder(x, platform))
                    )
                )
            );

        members.Add(
            ConstructorDeclaration(vtblClassName)
            .WithModifiers(TokenList(Token(SyntaxKind.StaticKeyword)))
            .WithBody(
                Block(
                    ExpressionStatement(
                        AssignmentExpression(
                            SyntaxKind.SimpleAssignmentExpression,
                            IdentifierName(DelegateCacheGlobalIdentifier),
                            GeneratorHelpers.PlatformSpecificExpression(
                                GlobalNamespace, Generators.Config.Platforms,
                                AnyOffsetDiffersPredicate,
                                () => GenerateDelegateCacheFill(PlatformDetectionType.Windows),
                                () => GenerateDelegateCacheFill(PlatformDetectionType.ItaniumSystemV)
                                )
                            )
                        )
                    )
                )
            .WithTrailingEndIfDirective()
            );
#endif

        members.AddRange(csElement.Methods, Generators.ShadowCallable);

        return(ClassDeclaration(vtblClassName)
               .WithModifiers(
                   ModelUtilities.VisibilityToTokenList(
                       vtblVisibility,
                       SyntaxKind.StaticKeyword, SyntaxKind.UnsafeKeyword, SyntaxKind.PartialKeyword
                       )
                   )
               .WithMembers(List(members)));
    }
        /// <summary>
        /// Create the template output
        /// </summary>
        public override string TransformText()
        {
            #line 6 "C:\codebase\v3\AWSDotNetPublic\generator\ServiceClientGeneratorLib\Generators\SourceFiles\StructureGenerator.tt"

            AddLicenseHeader();


            #line default
            #line hidden
            this.Write("using System;\r\nusing System.Collections.Generic;\r\nusing System.Xml.Serialization;" +
                       "\r\nusing System.Text;\r\nusing System.IO;\r\n\r\nusing Amazon.Runtime;\r\nusing Amazon.Ru" +
                       "ntime.Internal;\r\n");

            #line 17 "C:\codebase\v3\AWSDotNetPublic\generator\ServiceClientGeneratorLib\Generators\SourceFiles\StructureGenerator.tt"

            if (this.StructureType == StructureType.Request && this.Operation.AuthType.HasValue)
            {
            #line default
            #line hidden
                this.Write("using Amazon.Runtime.Internal.Auth;\r\n");

            #line 22 "C:\codebase\v3\AWSDotNetPublic\generator\ServiceClientGeneratorLib\Generators\SourceFiles\StructureGenerator.tt"
            }


            #line default
            #line hidden
            this.Write("\r\nnamespace ");

            #line 26 "C:\codebase\v3\AWSDotNetPublic\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 28 "C:\codebase\v3\AWSDotNetPublic\generator\ServiceClientGeneratorLib\Generators\SourceFiles\StructureGenerator.tt"

            if (this.StructureType == StructureType.Request)
            {
                this.FormatOperationRequestDocumentation(this.Operation);
            }
            else if (this.Operation != null && GeneratorHelpers.HasSuppressedResult(this.Operation))
            {
                this.FormatVoidResultDocumentation(this.Operation.Name);
            }
            else if (this.StructureType == StructureType.Response && (this.Structure == null || string.IsNullOrEmpty(this.Structure.Documentation)))
            {
            #line default
            #line hidden
                this.Write("\t/// <summary>\r\n\t/// This is the response object from the ");

            #line 37 "C:\codebase\v3\AWSDotNetPublic\generator\ServiceClientGeneratorLib\Generators\SourceFiles\StructureGenerator.tt"
                this.Write(this.ToStringHelper.ToStringWithCulture(this.Operation.Name));

            #line default
            #line hidden
                this.Write(" operation.\r\n\t/// </summary>\r\n");

            #line 39 "C:\codebase\v3\AWSDotNetPublic\generator\ServiceClientGeneratorLib\Generators\SourceFiles\StructureGenerator.tt"
            }
            else
            {
                this.FormatClassDocumentation(this.Structure);
            }


            #line default
            #line hidden

            #line 44 "C:\codebase\v3\AWSDotNetPublic\generator\ServiceClientGeneratorLib\Generators\SourceFiles\StructureGenerator.tt"

            if (this.Structure != null && this.Structure.IsDeprecated)
            {
            #line default
            #line hidden
                this.Write("    [Obsolete(\"");

            #line 48 "C:\codebase\v3\AWSDotNetPublic\generator\ServiceClientGeneratorLib\Generators\SourceFiles\StructureGenerator.tt"
                this.Write(this.ToStringHelper.ToStringWithCulture(this.Structure.DeprecationMessage));

            #line default
            #line hidden
                this.Write("\")]\r\n");

            #line 49 "C:\codebase\v3\AWSDotNetPublic\generator\ServiceClientGeneratorLib\Generators\SourceFiles\StructureGenerator.tt"
            }


            #line default
            #line hidden
            this.Write("\tpublic partial class ");

            #line 52 "C:\codebase\v3\AWSDotNetPublic\generator\ServiceClientGeneratorLib\Generators\SourceFiles\StructureGenerator.tt"
            this.Write(this.ToStringHelper.ToStringWithCulture(this.ClassName));

            #line default
            #line hidden

            #line 52 "C:\codebase\v3\AWSDotNetPublic\generator\ServiceClientGeneratorLib\Generators\SourceFiles\StructureGenerator.tt"
            this.Write(this.ToStringHelper.ToStringWithCulture(this.BaseClassString));

            #line default
            #line hidden
            this.Write("\r\n\t{\r\n");

            #line 54 "C:\codebase\v3\AWSDotNetPublic\generator\ServiceClientGeneratorLib\Generators\SourceFiles\StructureGenerator.tt"

            if (this.Structure != null)
            {
                if (this.IsWrapped)
                {
            #line default
            #line hidden
                    this.Write("        private ");

            #line 60 "C:\codebase\v3\AWSDotNetPublic\generator\ServiceClientGeneratorLib\Generators\SourceFiles\StructureGenerator.tt"
                    this.Write(this.ToStringHelper.ToStringWithCulture(this.Structure.Name));

            #line default
            #line hidden
                    this.Write(" _response;\r\n");

            #line 61 "C:\codebase\v3\AWSDotNetPublic\generator\ServiceClientGeneratorLib\Generators\SourceFiles\StructureGenerator.tt"
                }
                else
                {
                    foreach (var member in this.Structure.Members)
                    {
                        if (member.IsExcluded)
                        {
                            continue;
                        }


            #line default
            #line hidden
                        this.Write("        private ");

            #line 70 "C:\codebase\v3\AWSDotNetPublic\generator\ServiceClientGeneratorLib\Generators\SourceFiles\StructureGenerator.tt"
                        this.Write(this.ToStringHelper.ToStringWithCulture(member.DetermineType()));

            #line default
            #line hidden

            #line 70 "C:\codebase\v3\AWSDotNetPublic\generator\ServiceClientGeneratorLib\Generators\SourceFiles\StructureGenerator.tt"
                        this.Write(this.ToStringHelper.ToStringWithCulture(member.IsNullable ? "?" : ""));

            #line default
            #line hidden
                        this.Write(" ");

            #line 70 "C:\codebase\v3\AWSDotNetPublic\generator\ServiceClientGeneratorLib\Generators\SourceFiles\StructureGenerator.tt"
                        this.Write(this.ToStringHelper.ToStringWithCulture(member.VariableName));

            #line default
            #line hidden

            #line 70 "C:\codebase\v3\AWSDotNetPublic\generator\ServiceClientGeneratorLib\Generators\SourceFiles\StructureGenerator.tt"
                        this.Write(this.ToStringHelper.ToStringWithCulture(member.ShouldInstantiate ? string.Format(" = new {0}();", member.DetermineType()) : ";"));

            #line default
            #line hidden
                        this.Write("\r\n");

            #line 71 "C:\codebase\v3\AWSDotNetPublic\generator\ServiceClientGeneratorLib\Generators\SourceFiles\StructureGenerator.tt"
                    }
                }
            }


            #line default
            #line hidden
            this.Write("\r\n");

            #line 77 "C:\codebase\v3\AWSDotNetPublic\generator\ServiceClientGeneratorLib\Generators\SourceFiles\StructureGenerator.tt"

            if (this.Structure != null)
            {
                if (this.IsWrapped)
                {
            #line default
            #line hidden
                    this.Write("        /// <summary>\r\n        /// Gets and sets the ");

            #line 84 "C:\codebase\v3\AWSDotNetPublic\generator\ServiceClientGeneratorLib\Generators\SourceFiles\StructureGenerator.tt"
                    this.Write(this.ToStringHelper.ToStringWithCulture(this.Structure.Name));

            #line default
            #line hidden
                    this.Write(" property.\r\n        /// </summary>\r\n");

            #line 86 "C:\codebase\v3\AWSDotNetPublic\generator\ServiceClientGeneratorLib\Generators\SourceFiles\StructureGenerator.tt"

                    if (this.Structure.IsDeprecated)
                    {
            #line default
            #line hidden
                        this.Write("\t\t[Obsolete(\"");

            #line 90 "C:\codebase\v3\AWSDotNetPublic\generator\ServiceClientGeneratorLib\Generators\SourceFiles\StructureGenerator.tt"
                        this.Write(this.ToStringHelper.ToStringWithCulture(this.Structure.DeprecationMessage));

            #line default
            #line hidden
                        this.Write("\")]\r\n");

            #line 91 "C:\codebase\v3\AWSDotNetPublic\generator\ServiceClientGeneratorLib\Generators\SourceFiles\StructureGenerator.tt"
                    }


            #line default
            #line hidden
                    this.Write("        public ");

            #line 94 "C:\codebase\v3\AWSDotNetPublic\generator\ServiceClientGeneratorLib\Generators\SourceFiles\StructureGenerator.tt"
                    this.Write(this.ToStringHelper.ToStringWithCulture(this.Structure.Name));

            #line default
            #line hidden
                    this.Write(" ");

            #line 94 "C:\codebase\v3\AWSDotNetPublic\generator\ServiceClientGeneratorLib\Generators\SourceFiles\StructureGenerator.tt"
                    this.Write(this.ToStringHelper.ToStringWithCulture(this.Structure.Name));

            #line default
            #line hidden
                    this.Write("\r\n        {\r\n            get { return this._response; }\r\n            set { this._" +
                               "response = value; }\r\n        }\r\n");

            #line 99 "C:\codebase\v3\AWSDotNetPublic\generator\ServiceClientGeneratorLib\Generators\SourceFiles\StructureGenerator.tt"
                }
                else
                {
                    AddSimpleRequestConstructors(this.ClassName, this.Structure, this.Config.Namespace);
                    foreach (var member in this.Structure.Members)
                    {
                        if (member.IsExcluded)
                        {
                            continue;
                        }


            #line default
            #line hidden

            #line 109 "C:\codebase\v3\AWSDotNetPublic\generator\ServiceClientGeneratorLib\Generators\SourceFiles\StructureGenerator.tt"
                        this.FormatPropertyDocumentation(member);

            #line default
            #line hidden

            #line 110 "C:\codebase\v3\AWSDotNetPublic\generator\ServiceClientGeneratorLib\Generators\SourceFiles\StructureGenerator.tt"

                        if (member.IsDeprecated)
                        {
            #line default
            #line hidden
                            this.Write("\t\t[Obsolete(\"");

            #line 114 "C:\codebase\v3\AWSDotNetPublic\generator\ServiceClientGeneratorLib\Generators\SourceFiles\StructureGenerator.tt"
                            this.Write(this.ToStringHelper.ToStringWithCulture(member.DeprecationMessage));

            #line default
            #line hidden
                            this.Write("\")]\r\n");

            #line 115 "C:\codebase\v3\AWSDotNetPublic\generator\ServiceClientGeneratorLib\Generators\SourceFiles\StructureGenerator.tt"
                        }


            #line default
            #line hidden
                        this.Write("        ");

            #line 118 "C:\codebase\v3\AWSDotNetPublic\generator\ServiceClientGeneratorLib\Generators\SourceFiles\StructureGenerator.tt"
                        this.Write(this.ToStringHelper.ToStringWithCulture(member.AccessModifier));

            #line default
            #line hidden
                        this.Write(" ");

            #line 118 "C:\codebase\v3\AWSDotNetPublic\generator\ServiceClientGeneratorLib\Generators\SourceFiles\StructureGenerator.tt"
                        this.Write(this.ToStringHelper.ToStringWithCulture(member.DetermineType()));

            #line default
            #line hidden

            #line 118 "C:\codebase\v3\AWSDotNetPublic\generator\ServiceClientGeneratorLib\Generators\SourceFiles\StructureGenerator.tt"
                        this.Write(this.ToStringHelper.ToStringWithCulture(member.UseNullable ? "?" : ""));

            #line default
            #line hidden
                        this.Write(" ");

            #line 118 "C:\codebase\v3\AWSDotNetPublic\generator\ServiceClientGeneratorLib\Generators\SourceFiles\StructureGenerator.tt"
                        this.Write(this.ToStringHelper.ToStringWithCulture(member.PropertyName));

            #line default
            #line hidden
                        this.Write("\r\n        {\r\n");

            #line 120 "C:\codebase\v3\AWSDotNetPublic\generator\ServiceClientGeneratorLib\Generators\SourceFiles\StructureGenerator.tt"

                        if (member.IsNullable && !member.UseNullable)
                        {
            #line default
            #line hidden
                            this.Write("            get { return this.");

            #line 124 "C:\codebase\v3\AWSDotNetPublic\generator\ServiceClientGeneratorLib\Generators\SourceFiles\StructureGenerator.tt"
                            this.Write(this.ToStringHelper.ToStringWithCulture(member.VariableName));

            #line default
            #line hidden
                            this.Write(".GetValueOrDefault(); }\r\n");

            #line 125 "C:\codebase\v3\AWSDotNetPublic\generator\ServiceClientGeneratorLib\Generators\SourceFiles\StructureGenerator.tt"
                        }
                        else
                        {
            #line default
            #line hidden
                            this.Write("            get { return this.");

            #line 130 "C:\codebase\v3\AWSDotNetPublic\generator\ServiceClientGeneratorLib\Generators\SourceFiles\StructureGenerator.tt"
                            this.Write(this.ToStringHelper.ToStringWithCulture(member.VariableName));

            #line default
            #line hidden
                            this.Write("; }\r\n");

            #line 131 "C:\codebase\v3\AWSDotNetPublic\generator\ServiceClientGeneratorLib\Generators\SourceFiles\StructureGenerator.tt"
                        }


            #line default
            #line hidden
                        this.Write("            set { this.");

            #line 134 "C:\codebase\v3\AWSDotNetPublic\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 137 "C:\codebase\v3\AWSDotNetPublic\generator\ServiceClientGeneratorLib\Generators\SourceFiles\StructureGenerator.tt"

                        if (member.EmitIsSetProperties)
                        {
            #line default
            #line hidden
                            this.Write("        /// <summary>\r\n        /// This property is set to true if the property <" +
                                       "seealso cref=\"");

            #line 142 "C:\codebase\v3\AWSDotNetPublic\generator\ServiceClientGeneratorLib\Generators\SourceFiles\StructureGenerator.tt"
                            this.Write(this.ToStringHelper.ToStringWithCulture(member.PropertyName));

            #line default
            #line hidden
                            this.Write(@"""/>
        /// is set; false otherwise.
        /// This property can be used to determine if the related property
        /// was returned by a service response or if the related property
        /// should be sent to the service during a service call.
        /// </summary>
        /// <returns>
        /// True if the related property was set or will be sent to a service; false otherwise.
        /// </returns>
");

            #line 151 "C:\codebase\v3\AWSDotNetPublic\generator\ServiceClientGeneratorLib\Generators\SourceFiles\StructureGenerator.tt"

                            if (member.IsDeprecated)
                            {
            #line default
            #line hidden
                                this.Write("\t\t[Obsolete(\"");

            #line 155 "C:\codebase\v3\AWSDotNetPublic\generator\ServiceClientGeneratorLib\Generators\SourceFiles\StructureGenerator.tt"
                                this.Write(this.ToStringHelper.ToStringWithCulture(member.DeprecationMessage));

            #line default
            #line hidden
                                this.Write("\")]\r\n");

            #line 156 "C:\codebase\v3\AWSDotNetPublic\generator\ServiceClientGeneratorLib\Generators\SourceFiles\StructureGenerator.tt"
                            }


            #line default
            #line hidden
                            this.Write("        public bool Is");

            #line 159 "C:\codebase\v3\AWSDotNetPublic\generator\ServiceClientGeneratorLib\Generators\SourceFiles\StructureGenerator.tt"
                            this.Write(this.ToStringHelper.ToStringWithCulture(member.PropertyName));

            #line default
            #line hidden
                            this.Write("Set\r\n        {\r\n            get\r\n            {\r\n                return Amazon.Uti" +
                                       "l.Internal.InternalSDKUtils.GetIsSet(this.");

            #line 163 "C:\codebase\v3\AWSDotNetPublic\generator\ServiceClientGeneratorLib\Generators\SourceFiles\StructureGenerator.tt"
                            this.Write(this.ToStringHelper.ToStringWithCulture(member.VariableName));

            #line default
            #line hidden
                            this.Write(");\r\n            }\r\n            set\r\n            {\r\n                Amazon.Util.In" +
                                       "ternal.InternalSDKUtils.SetIsSet(value, ref this.");

            #line 167 "C:\codebase\v3\AWSDotNetPublic\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 171 "C:\codebase\v3\AWSDotNetPublic\generator\ServiceClientGeneratorLib\Generators\SourceFiles\StructureGenerator.tt"
                        }


            #line default
            #line hidden
                        this.Write("        // Check to see if ");

            #line 174 "C:\codebase\v3\AWSDotNetPublic\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 175 "C:\codebase\v3\AWSDotNetPublic\generator\ServiceClientGeneratorLib\Generators\SourceFiles\StructureGenerator.tt"
                        this.Write(this.ToStringHelper.ToStringWithCulture(member.PropertyName));

            #line default
            #line hidden
                        this.Write("()\r\n        {\r\n");

            #line 177 "C:\codebase\v3\AWSDotNetPublic\generator\ServiceClientGeneratorLib\Generators\SourceFiles\StructureGenerator.tt"

                        if (member.EmitIsSetProperties)
                        {
            #line default
            #line hidden
                            this.Write("            return this.Is");

            #line 181 "C:\codebase\v3\AWSDotNetPublic\generator\ServiceClientGeneratorLib\Generators\SourceFiles\StructureGenerator.tt"
                            this.Write(this.ToStringHelper.ToStringWithCulture(member.PropertyName));

            #line default
            #line hidden
                            this.Write("Set; \r\n");

            #line 182 "C:\codebase\v3\AWSDotNetPublic\generator\ServiceClientGeneratorLib\Generators\SourceFiles\StructureGenerator.tt"
                        }
                        else if (member.IsNullable)
                        {
            #line default
            #line hidden
                            this.Write("            return this.");

            #line 187 "C:\codebase\v3\AWSDotNetPublic\generator\ServiceClientGeneratorLib\Generators\SourceFiles\StructureGenerator.tt"
                            this.Write(this.ToStringHelper.ToStringWithCulture(member.VariableName));

            #line default
            #line hidden
                            this.Write(".HasValue; \r\n");

            #line 188 "C:\codebase\v3\AWSDotNetPublic\generator\ServiceClientGeneratorLib\Generators\SourceFiles\StructureGenerator.tt"
                        }
                        else if (member.IsMap || member.IsList)
                        {
            #line default
            #line hidden
                            this.Write("            return this.");

            #line 193 "C:\codebase\v3\AWSDotNetPublic\generator\ServiceClientGeneratorLib\Generators\SourceFiles\StructureGenerator.tt"
                            this.Write(this.ToStringHelper.ToStringWithCulture(member.VariableName));

            #line default
            #line hidden
                            this.Write(" != null && this.");

            #line 193 "C:\codebase\v3\AWSDotNetPublic\generator\ServiceClientGeneratorLib\Generators\SourceFiles\StructureGenerator.tt"
                            this.Write(this.ToStringHelper.ToStringWithCulture(member.VariableName));

            #line default
            #line hidden
                            this.Write(".Count > 0; \r\n");

            #line 194 "C:\codebase\v3\AWSDotNetPublic\generator\ServiceClientGeneratorLib\Generators\SourceFiles\StructureGenerator.tt"
                        }
                        else
                        {
            #line default
            #line hidden
                            this.Write("            return this.");

            #line 199 "C:\codebase\v3\AWSDotNetPublic\generator\ServiceClientGeneratorLib\Generators\SourceFiles\StructureGenerator.tt"
                            this.Write(this.ToStringHelper.ToStringWithCulture(member.VariableName));

            #line default
            #line hidden
                            this.Write(" != null;\r\n");

            #line 200 "C:\codebase\v3\AWSDotNetPublic\generator\ServiceClientGeneratorLib\Generators\SourceFiles\StructureGenerator.tt"
                        }


            #line default
            #line hidden
                        this.Write("        }\r\n\r\n");

            #line 205 "C:\codebase\v3\AWSDotNetPublic\generator\ServiceClientGeneratorLib\Generators\SourceFiles\StructureGenerator.tt"
                    }

                    if (this.StructureType == StructureType.Request && this.Operation.AuthType.HasValue)
                    {
            #line default
            #line hidden
                        this.Write("        /// <summary>\r\n        /// Get the signer to use for this request.\r\n     " +
                                   "   /// </summary>\r\n        /// <returns>A signer for this request.</returns>\r\n  " +
                                   "      override protected AbstractAWSSigner CreateSigner()\r\n        {\r\n");

            #line 217 "C:\codebase\v3\AWSDotNetPublic\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 223 "C:\codebase\v3\AWSDotNetPublic\generator\ServiceClientGeneratorLib\Generators\SourceFiles\StructureGenerator.tt"

                            break;

                        case OperationAuthType.V4:


            #line default
            #line hidden
                            this.Write("            return new AWS4Signer();\r\n");

            #line 228 "C:\codebase\v3\AWSDotNetPublic\generator\ServiceClientGeneratorLib\Generators\SourceFiles\StructureGenerator.tt"

                            break;

                        case OperationAuthType.V4UnsignedBody:


            #line default
            #line hidden
                            this.Write("            return new AWS4Signer(false);\r\n");

            #line 233 "C:\codebase\v3\AWSDotNetPublic\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 240 "C:\codebase\v3\AWSDotNetPublic\generator\ServiceClientGeneratorLib\Generators\SourceFiles\StructureGenerator.tt"
                    }
                }
            }


            #line default
            #line hidden
            this.Write("    }\r\n}\r\n\r\n\r\n");
            return(this.GenerationEnvironment.ToString());
        }
        private ArgumentSyntax LambdaReturnsFalse(DiscriminatedUnionCase @case)
        {
            var lambdaBody = GeneratorHelpers.FalseExpression();

            return(LambdaForCase(@case, lambdaBody));
        }
예제 #4
0
        /// <summary>
        /// Create the template output
        /// </summary>
        public override string TransformText()
        {
            #line 6 "C:\dev\net\runtime.rebase\sdk\src\ServiceClientGenerator\Generators\ServiceClientsRT.tt"

            AddLicenseHeader();


            #line default
            #line hidden
            this.Write("\r\n\r\nusing System;\r\nusing System.Runtime.ExceptionServices;\r\nusing System.Threadin" +
                       "g;\r\nusing System.Threading.Tasks;\r\nusing System.Collections.Generic;\r\n\r\nusing ");

            #line 17 "C:\dev\net\runtime.rebase\sdk\src\ServiceClientGenerator\Generators\ServiceClientsRT.tt"
            this.Write(this.ToStringHelper.ToStringWithCulture(this.Config.Namespace));

            #line default
            #line hidden
            this.Write(".Model;\r\nusing ");

            #line 18 "C:\dev\net\runtime.rebase\sdk\src\ServiceClientGenerator\Generators\ServiceClientsRT.tt"
            this.Write(this.ToStringHelper.ToStringWithCulture(this.Config.Namespace));

            #line default
            #line hidden
            this.Write(".Model.Internal.MarshallTransformations;\r\nusing Amazon.Runtime;\r\nusing Amazon.Run" +
                       "time.Internal;\r\nusing Amazon.Runtime.Internal.Auth;\r\nusing Amazon.Runtime.Intern" +
                       "al.Transform;\r\n\r\nnamespace ");

            #line 24 "C:\dev\net\runtime.rebase\sdk\src\ServiceClientGenerator\Generators\ServiceClientsRT.tt"
            this.Write(this.ToStringHelper.ToStringWithCulture(this.Config.Namespace));

            #line default
            #line hidden
            this.Write("\r\n{\r\n");

            #line 26 "C:\dev\net\runtime.rebase\sdk\src\ServiceClientGenerator\Generators\ServiceClientsRT.tt"
            this.FormatServiceClientDocumentation(this.Config.ServiceModel.Documentation);

            #line default
            #line hidden
            this.Write("    public partial class Amazon");

            #line 27 "C:\dev\net\runtime.rebase\sdk\src\ServiceClientGenerator\Generators\ServiceClientsRT.tt"
            this.Write(this.ToStringHelper.ToStringWithCulture(this.Config.BaseName));

            #line default
            #line hidden
            this.Write("Client : AmazonServiceClient, IAmazon");

            #line 27 "C:\dev\net\runtime.rebase\sdk\src\ServiceClientGenerator\Generators\ServiceClientsRT.tt"
            this.Write(this.ToStringHelper.ToStringWithCulture(this.Config.BaseName));

            #line default
            #line hidden
            this.Write("\r\n    {\r\n        \r\n");

            #line 30 "C:\dev\net\runtime.rebase\sdk\src\ServiceClientGenerator\Generators\ServiceClientsRT.tt"

            // Generates generic constructors for the service if enabled in the model
            if (this.Config.GenerateConstructors)
            {
            #line default
            #line hidden
                this.Write("        #region Constructors\r\n\r\n        /// <summary>\r\n        /// Constructs Ama" +
                           "zon");

            #line 38 "C:\dev\net\runtime.rebase\sdk\src\ServiceClientGenerator\Generators\ServiceClientsRT.tt"
                this.Write(this.ToStringHelper.ToStringWithCulture(this.Config.BaseName));

            #line default
            #line hidden
                this.Write("Client with AWS Credentials\r\n        /// </summary>\r\n        /// <param name=\"cre" +
                           "dentials\">AWS Credentials</param>\r\n        public Amazon");

            #line 41 "C:\dev\net\runtime.rebase\sdk\src\ServiceClientGenerator\Generators\ServiceClientsRT.tt"
                this.Write(this.ToStringHelper.ToStringWithCulture(this.Config.BaseName));

            #line default
            #line hidden
                this.Write("Client(AWSCredentials credentials)\r\n            : this(credentials, new Amazon");

            #line 42 "C:\dev\net\runtime.rebase\sdk\src\ServiceClientGenerator\Generators\ServiceClientsRT.tt"
                this.Write(this.ToStringHelper.ToStringWithCulture(this.Config.BaseName));

            #line default
            #line hidden
                this.Write("Config())\r\n        {\r\n        }\r\n\r\n        /// <summary>\r\n        /// Constructs " +
                           "Amazon");

            #line 47 "C:\dev\net\runtime.rebase\sdk\src\ServiceClientGenerator\Generators\ServiceClientsRT.tt"
                this.Write(this.ToStringHelper.ToStringWithCulture(this.Config.BaseName));

            #line default
            #line hidden
                this.Write("Client with AWS Credentials\r\n        /// </summary>\r\n        /// <param name=\"cre" +
                           "dentials\">AWS Credentials</param>\r\n        /// <param name=\"region\">The region t" +
                           "o connect.</param>\r\n        public Amazon");

            #line 51 "C:\dev\net\runtime.rebase\sdk\src\ServiceClientGenerator\Generators\ServiceClientsRT.tt"
                this.Write(this.ToStringHelper.ToStringWithCulture(this.Config.BaseName));

            #line default
            #line hidden
                this.Write("Client(AWSCredentials credentials, RegionEndpoint region)\r\n            : this(cre" +
                           "dentials, new Amazon");

            #line 52 "C:\dev\net\runtime.rebase\sdk\src\ServiceClientGenerator\Generators\ServiceClientsRT.tt"
                this.Write(this.ToStringHelper.ToStringWithCulture(this.Config.BaseName));

            #line default
            #line hidden
                this.Write("Config{RegionEndpoint = region})\r\n        {\r\n        }\r\n\r\n        /// <summary>\r\n" +
                           "        /// Constructs Amazon");

            #line 57 "C:\dev\net\runtime.rebase\sdk\src\ServiceClientGenerator\Generators\ServiceClientsRT.tt"
                this.Write(this.ToStringHelper.ToStringWithCulture(this.Config.BaseName));

            #line default
            #line hidden
                this.Write("Client with AWS Credentials and an\r\n        /// Amazon");

            #line 58 "C:\dev\net\runtime.rebase\sdk\src\ServiceClientGenerator\Generators\ServiceClientsRT.tt"
                this.Write(this.ToStringHelper.ToStringWithCulture(this.Config.BaseName));

            #line default
            #line hidden
                this.Write("Client Configuration object.\r\n        /// </summary>\r\n        /// <param name=\"cr" +
                           "edentials\">AWS Credentials</param>\r\n        /// <param name=\"clientConfig\">The A" +
                           "mazon");

            #line 61 "C:\dev\net\runtime.rebase\sdk\src\ServiceClientGenerator\Generators\ServiceClientsRT.tt"
                this.Write(this.ToStringHelper.ToStringWithCulture(this.Config.BaseName));

            #line default
            #line hidden
                this.Write("Client Configuration Object</param>\r\n        public Amazon");

            #line 62 "C:\dev\net\runtime.rebase\sdk\src\ServiceClientGenerator\Generators\ServiceClientsRT.tt"
                this.Write(this.ToStringHelper.ToStringWithCulture(this.Config.BaseName));

            #line default
            #line hidden
                this.Write("Client(AWSCredentials credentials, Amazon");

            #line 62 "C:\dev\net\runtime.rebase\sdk\src\ServiceClientGenerator\Generators\ServiceClientsRT.tt"
                this.Write(this.ToStringHelper.ToStringWithCulture(this.Config.BaseName));

            #line default
            #line hidden
                this.Write("Config clientConfig)\r\n            : base(credentials, clientConfig)\r\n        {\r\n " +
                           "       }\r\n\r\n        /// <summary>\r\n        /// Constructs Amazon");

            #line 68 "C:\dev\net\runtime.rebase\sdk\src\ServiceClientGenerator\Generators\ServiceClientsRT.tt"
                this.Write(this.ToStringHelper.ToStringWithCulture(this.Config.BaseName));

            #line default
            #line hidden
                this.Write("Client with AWS Access Key ID and AWS Secret Key\r\n        /// </summary>\r\n       " +
                           " /// <param name=\"awsAccessKeyId\">AWS Access Key ID</param>\r\n        /// <param " +
                           "name=\"awsSecretAccessKey\">AWS Secret Access Key</param>\r\n        public Amazon");

            #line 72 "C:\dev\net\runtime.rebase\sdk\src\ServiceClientGenerator\Generators\ServiceClientsRT.tt"
                this.Write(this.ToStringHelper.ToStringWithCulture(this.Config.BaseName));

            #line default
            #line hidden
                this.Write("Client(string awsAccessKeyId, string awsSecretAccessKey)\r\n            : this(awsA" +
                           "ccessKeyId, awsSecretAccessKey, new Amazon");

            #line 73 "C:\dev\net\runtime.rebase\sdk\src\ServiceClientGenerator\Generators\ServiceClientsRT.tt"
                this.Write(this.ToStringHelper.ToStringWithCulture(this.Config.BaseName));

            #line default
            #line hidden
                this.Write("Config())\r\n        {\r\n        }\r\n\r\n        /// <summary>\r\n        /// Constructs " +
                           "Amazon");

            #line 78 "C:\dev\net\runtime.rebase\sdk\src\ServiceClientGenerator\Generators\ServiceClientsRT.tt"
                this.Write(this.ToStringHelper.ToStringWithCulture(this.Config.BaseName));

            #line default
            #line hidden
                this.Write(@"Client with AWS Access Key ID and AWS Secret Key
        /// </summary>
        /// <param name=""awsAccessKeyId"">AWS Access Key ID</param>
        /// <param name=""awsSecretAccessKey"">AWS Secret Access Key</param>
        /// <param name=""region"">The region to connect.</param>
        public Amazon");

            #line 83 "C:\dev\net\runtime.rebase\sdk\src\ServiceClientGenerator\Generators\ServiceClientsRT.tt"
                this.Write(this.ToStringHelper.ToStringWithCulture(this.Config.BaseName));

            #line default
            #line hidden
                this.Write("Client(string awsAccessKeyId, string awsSecretAccessKey, RegionEndpoint region)\r\n" +
                           "            : this(awsAccessKeyId, awsSecretAccessKey, new Amazon");

            #line 84 "C:\dev\net\runtime.rebase\sdk\src\ServiceClientGenerator\Generators\ServiceClientsRT.tt"
                this.Write(this.ToStringHelper.ToStringWithCulture(this.Config.BaseName));

            #line default
            #line hidden
                this.Write("Config() {RegionEndpoint=region})\r\n        {\r\n        }\r\n\r\n        /// <summary>\r" +
                           "\n        /// Constructs Amazon");

            #line 89 "C:\dev\net\runtime.rebase\sdk\src\ServiceClientGenerator\Generators\ServiceClientsRT.tt"
                this.Write(this.ToStringHelper.ToStringWithCulture(this.Config.BaseName));

            #line default
            #line hidden
                this.Write("Client with AWS Access Key ID, AWS Secret Key and an\r\n        /// Amazon");

            #line 90 "C:\dev\net\runtime.rebase\sdk\src\ServiceClientGenerator\Generators\ServiceClientsRT.tt"
                this.Write(this.ToStringHelper.ToStringWithCulture(this.Config.BaseName));

            #line default
            #line hidden
                this.Write("Client Configuration object. \r\n        /// </summary>\r\n        /// <param name=\"a" +
                           "wsAccessKeyId\">AWS Access Key ID</param>\r\n        /// <param name=\"awsSecretAcce" +
                           "ssKey\">AWS Secret Access Key</param>\r\n        /// <param name=\"clientConfig\">The" +
                           " Amazon");

            #line 94 "C:\dev\net\runtime.rebase\sdk\src\ServiceClientGenerator\Generators\ServiceClientsRT.tt"
                this.Write(this.ToStringHelper.ToStringWithCulture(this.Config.BaseName));

            #line default
            #line hidden
                this.Write("Client Configuration Object</param>\r\n        public Amazon");

            #line 95 "C:\dev\net\runtime.rebase\sdk\src\ServiceClientGenerator\Generators\ServiceClientsRT.tt"
                this.Write(this.ToStringHelper.ToStringWithCulture(this.Config.BaseName));

            #line default
            #line hidden
                this.Write("Client(string awsAccessKeyId, string awsSecretAccessKey, Amazon");

            #line 95 "C:\dev\net\runtime.rebase\sdk\src\ServiceClientGenerator\Generators\ServiceClientsRT.tt"
                this.Write(this.ToStringHelper.ToStringWithCulture(this.Config.BaseName));

            #line default
            #line hidden
                this.Write("Config clientConfig)\r\n            : base(awsAccessKeyId, awsSecretAccessKey, clie" +
                           "ntConfig)\r\n        {\r\n        }\r\n\r\n        /// <summary>\r\n        /// Constructs" +
                           " Amazon");

            #line 101 "C:\dev\net\runtime.rebase\sdk\src\ServiceClientGenerator\Generators\ServiceClientsRT.tt"
                this.Write(this.ToStringHelper.ToStringWithCulture(this.Config.BaseName));

            #line default
            #line hidden
                this.Write(@"Client with AWS Access Key ID and AWS Secret Key
        /// </summary>
        /// <param name=""awsAccessKeyId"">AWS Access Key ID</param>
        /// <param name=""awsSecretAccessKey"">AWS Secret Access Key</param>
        /// <param name=""awsSessionToken"">AWS Session Token</param>
        public Amazon");

            #line 106 "C:\dev\net\runtime.rebase\sdk\src\ServiceClientGenerator\Generators\ServiceClientsRT.tt"
                this.Write(this.ToStringHelper.ToStringWithCulture(this.Config.BaseName));

            #line default
            #line hidden
                this.Write("Client(string awsAccessKeyId, string awsSecretAccessKey, string awsSessionToken)\r" +
                           "\n            : this(awsAccessKeyId, awsSecretAccessKey, awsSessionToken, new Ama" +
                           "zon");

            #line 107 "C:\dev\net\runtime.rebase\sdk\src\ServiceClientGenerator\Generators\ServiceClientsRT.tt"
                this.Write(this.ToStringHelper.ToStringWithCulture(this.Config.BaseName));

            #line default
            #line hidden
                this.Write("Config())\r\n        {\r\n        }\r\n\r\n        /// <summary>\r\n        /// Constructs " +
                           "Amazon");

            #line 112 "C:\dev\net\runtime.rebase\sdk\src\ServiceClientGenerator\Generators\ServiceClientsRT.tt"
                this.Write(this.ToStringHelper.ToStringWithCulture(this.Config.BaseName));

            #line default
            #line hidden
                this.Write(@"Client with AWS Access Key ID and AWS Secret Key
        /// </summary>
        /// <param name=""awsAccessKeyId"">AWS Access Key ID</param>
        /// <param name=""awsSecretAccessKey"">AWS Secret Access Key</param>
        /// <param name=""awsSessionToken"">AWS Session Token</param>
        /// <param name=""region"">The region to connect.</param>
        public Amazon");

            #line 118 "C:\dev\net\runtime.rebase\sdk\src\ServiceClientGenerator\Generators\ServiceClientsRT.tt"
                this.Write(this.ToStringHelper.ToStringWithCulture(this.Config.BaseName));

            #line default
            #line hidden
                this.Write("Client(string awsAccessKeyId, string awsSecretAccessKey, string awsSessionToken, " +
                           "RegionEndpoint region)\r\n            : this(awsAccessKeyId, awsSecretAccessKey, a" +
                           "wsSessionToken, new Amazon");

            #line 119 "C:\dev\net\runtime.rebase\sdk\src\ServiceClientGenerator\Generators\ServiceClientsRT.tt"
                this.Write(this.ToStringHelper.ToStringWithCulture(this.Config.BaseName));

            #line default
            #line hidden
                this.Write("Config{RegionEndpoint = region})\r\n        {\r\n        }\r\n\r\n        /// <summary>\r\n" +
                           "        /// Constructs Amazon");

            #line 124 "C:\dev\net\runtime.rebase\sdk\src\ServiceClientGenerator\Generators\ServiceClientsRT.tt"
                this.Write(this.ToStringHelper.ToStringWithCulture(this.Config.BaseName));

            #line default
            #line hidden
                this.Write("Client with AWS Access Key ID, AWS Secret Key and an\r\n        /// Amazon");

            #line 125 "C:\dev\net\runtime.rebase\sdk\src\ServiceClientGenerator\Generators\ServiceClientsRT.tt"
                this.Write(this.ToStringHelper.ToStringWithCulture(this.Config.BaseName));

            #line default
            #line hidden
                this.Write(@"Client Configuration object. 
        /// </summary>
        /// <param name=""awsAccessKeyId"">AWS Access Key ID</param>
        /// <param name=""awsSecretAccessKey"">AWS Secret Access Key</param>
        /// <param name=""awsSessionToken"">AWS Session Token</param>
        /// <param name=""clientConfig"">The Amazon");

            #line 130 "C:\dev\net\runtime.rebase\sdk\src\ServiceClientGenerator\Generators\ServiceClientsRT.tt"
                this.Write(this.ToStringHelper.ToStringWithCulture(this.Config.BaseName));

            #line default
            #line hidden
                this.Write("Client Configuration Object</param>\r\n        public Amazon");

            #line 131 "C:\dev\net\runtime.rebase\sdk\src\ServiceClientGenerator\Generators\ServiceClientsRT.tt"
                this.Write(this.ToStringHelper.ToStringWithCulture(this.Config.BaseName));

            #line default
            #line hidden
                this.Write("Client(string awsAccessKeyId, string awsSecretAccessKey, string awsSessionToken, " +
                           "Amazon");

            #line 131 "C:\dev\net\runtime.rebase\sdk\src\ServiceClientGenerator\Generators\ServiceClientsRT.tt"
                this.Write(this.ToStringHelper.ToStringWithCulture(this.Config.BaseName));

            #line default
            #line hidden
                this.Write("Config clientConfig)\r\n            : base(awsAccessKeyId, awsSecretAccessKey, awsS" +
                           "essionToken, clientConfig)\r\n        {\r\n        }\r\n\r\n        #endregion\r\n");

            #line 137 "C:\dev\net\runtime.rebase\sdk\src\ServiceClientGenerator\Generators\ServiceClientsRT.tt"
            }


            #line default
            #line hidden
            this.Write("\r\n        #region Overrides\r\n\r\n        protected override AbstractAWSSigner Creat" +
                       "eSigner()\r\n        {\r\n            return new ");

            #line 145 "C:\dev\net\runtime.rebase\sdk\src\ServiceClientGenerator\Generators\ServiceClientsRT.tt"
            this.Write(this.ToStringHelper.ToStringWithCulture(GeneratorHelpers.DetermineSigner(this.Config.ServiceModel.SignatureVersion, this.Config.BaseName)));

            #line default
            #line hidden
            this.Write("();\r\n        } \r\n\r\n");

            #line 148 "C:\dev\net\runtime.rebase\sdk\src\ServiceClientGenerator\Generators\ServiceClientsRT.tt"

            // Generates overrides for the pipeline if specified in the customizations file
            if (this.Config.ServiceModel.Customizations.PipelineOverride != null)
            {
            #line default
            #line hidden
                this.Write("        protected override void CustomizeRuntimePipeline(RuntimePipeline pipeline" +
                           ")\r\n        {\r\n");

            #line 155 "C:\dev\net\runtime.rebase\sdk\src\ServiceClientGenerator\Generators\ServiceClientsRT.tt"

                var pipelineOverrides = this.Config.ServiceModel.Customizations.PipelineOverride;
                foreach (var o in pipelineOverrides.Overrides)
                {
                    if (o.OverrideMethod == "remove")
                    {
            #line default
            #line hidden
                        this.Write("            pipeline.");

            #line 162 "C:\dev\net\runtime.rebase\sdk\src\ServiceClientGenerator\Generators\ServiceClientsRT.tt"
                        this.Write(this.ToStringHelper.ToStringWithCulture(o.FormattedOverrideMethod));

            #line default
            #line hidden
                        this.Write("();\r\n");

            #line 163 "C:\dev\net\runtime.rebase\sdk\src\ServiceClientGenerator\Generators\ServiceClientsRT.tt"
                    }
                    else
                    {
            #line default
            #line hidden
                        this.Write("            pipeline.");

            #line 168 "C:\dev\net\runtime.rebase\sdk\src\ServiceClientGenerator\Generators\ServiceClientsRT.tt"
                        this.Write(this.ToStringHelper.ToStringWithCulture(o.FormattedOverrideMethod));

            #line default
            #line hidden
                        this.Write("(new ");

            #line 168 "C:\dev\net\runtime.rebase\sdk\src\ServiceClientGenerator\Generators\ServiceClientsRT.tt"
                        this.Write(this.ToStringHelper.ToStringWithCulture(o.NewType));

            #line default
            #line hidden
                        this.Write("(");

            #line 168 "C:\dev\net\runtime.rebase\sdk\src\ServiceClientGenerator\Generators\ServiceClientsRT.tt"
                        this.Write(this.ToStringHelper.ToStringWithCulture(o.ConstructorInput));

            #line default
            #line hidden
                        this.Write("));\r\n");

            #line 169 "C:\dev\net\runtime.rebase\sdk\src\ServiceClientGenerator\Generators\ServiceClientsRT.tt"
                    }
                }


            #line default
            #line hidden
                this.Write("        }\r\n");

            #line 174 "C:\dev\net\runtime.rebase\sdk\src\ServiceClientGenerator\Generators\ServiceClientsRT.tt"
            }


            #line default
            #line hidden
            this.Write("\r\n        #endregion\r\n\r\n        #region Dispose\r\n\r\n        protected override voi" +
                       "d Dispose(bool disposing)\r\n        {\r\n            base.Dispose(disposing);\r\n    " +
                       "    }\r\n\r\n        #endregion\r\n\r\n        ");

            #line 189 "C:\dev\net\runtime.rebase\sdk\src\ServiceClientGenerator\Generators\ServiceClientsRT.tt"

            // Creates the method code for each operation in the model
            foreach (var operation in this.Config.ServiceModel.Operations)
            {
            #line default
            #line hidden
                this.Write("\r\n        #region  ");

            #line 195 "C:\dev\net\runtime.rebase\sdk\src\ServiceClientGenerator\Generators\ServiceClientsRT.tt"
                this.Write(this.ToStringHelper.ToStringWithCulture(operation.Name));

            #line default
            #line hidden
                this.Write("\r\n\r\n");

            #line 197 "C:\dev\net\runtime.rebase\sdk\src\ServiceClientGenerator\Generators\ServiceClientsRT.tt"

                if (this.Config.ServiceModel.Customizations.CreateNoArgOverload(operation.Name))
                {
            #line default
            #line hidden
                    this.Write("        internal ");

            #line 201 "C:\dev\net\runtime.rebase\sdk\src\ServiceClientGenerator\Generators\ServiceClientsRT.tt"
                    this.Write(this.ToStringHelper.ToStringWithCulture(operation.Name));

            #line default
            #line hidden
                    this.Write("Response ");

            #line 201 "C:\dev\net\runtime.rebase\sdk\src\ServiceClientGenerator\Generators\ServiceClientsRT.tt"
                    this.Write(this.ToStringHelper.ToStringWithCulture(operation.Name));

            #line default
            #line hidden
                    this.Write("()\r\n        {\r\n            return ");

            #line 203 "C:\dev\net\runtime.rebase\sdk\src\ServiceClientGenerator\Generators\ServiceClientsRT.tt"
                    this.Write(this.ToStringHelper.ToStringWithCulture(operation.Name));

            #line default
            #line hidden
                    this.Write("(new ");

            #line 203 "C:\dev\net\runtime.rebase\sdk\src\ServiceClientGenerator\Generators\ServiceClientsRT.tt"
                    this.Write(this.ToStringHelper.ToStringWithCulture(operation.Name));

            #line default
            #line hidden
                    this.Write("Request());\r\n        }\r\n");

            #line 205 "C:\dev\net\runtime.rebase\sdk\src\ServiceClientGenerator\Generators\ServiceClientsRT.tt"
                }
                // Adds any simple method forms if they are in the customizations file
                AddSimpleClientMethods(operation);


            #line default
            #line hidden
                this.Write("        internal ");

            #line 210 "C:\dev\net\runtime.rebase\sdk\src\ServiceClientGenerator\Generators\ServiceClientsRT.tt"
                this.Write(this.ToStringHelper.ToStringWithCulture(operation.Name));

            #line default
            #line hidden
                this.Write("Response ");

            #line 210 "C:\dev\net\runtime.rebase\sdk\src\ServiceClientGenerator\Generators\ServiceClientsRT.tt"
                this.Write(this.ToStringHelper.ToStringWithCulture(operation.Name));

            #line default
            #line hidden
                this.Write("(");

            #line 210 "C:\dev\net\runtime.rebase\sdk\src\ServiceClientGenerator\Generators\ServiceClientsRT.tt"
                this.Write(this.ToStringHelper.ToStringWithCulture(operation.Name));

            #line default
            #line hidden
                this.Write("Request request)\r\n        {\r\n            var marshaller = new ");

            #line 212 "C:\dev\net\runtime.rebase\sdk\src\ServiceClientGenerator\Generators\ServiceClientsRT.tt"
                this.Write(this.ToStringHelper.ToStringWithCulture(operation.Name));

            #line default
            #line hidden
                this.Write("RequestMarshaller();\r\n            var unmarshaller = ");

            #line 213 "C:\dev\net\runtime.rebase\sdk\src\ServiceClientGenerator\Generators\ServiceClientsRT.tt"
                this.Write(this.ToStringHelper.ToStringWithCulture(operation.Name));

            #line default
            #line hidden
                this.Write("ResponseUnmarshaller.Instance;\r\n\r\n            return Invoke<");

            #line 215 "C:\dev\net\runtime.rebase\sdk\src\ServiceClientGenerator\Generators\ServiceClientsRT.tt"
                this.Write(this.ToStringHelper.ToStringWithCulture(operation.Name));

            #line default
            #line hidden
                this.Write("Request,");

            #line 215 "C:\dev\net\runtime.rebase\sdk\src\ServiceClientGenerator\Generators\ServiceClientsRT.tt"
                this.Write(this.ToStringHelper.ToStringWithCulture(operation.Name));

            #line default
            #line hidden
                this.Write("Response>(request, marshaller, unmarshaller);\r\n        }\r\n\r\n");

            #line 218 "C:\dev\net\runtime.rebase\sdk\src\ServiceClientGenerator\Generators\ServiceClientsRT.tt"
                AddAsyncDocumentation(operation.Name);

            #line default
            #line hidden
                this.Write("        ");

            #line 219 "C:\dev\net\runtime.rebase\sdk\src\ServiceClientGenerator\Generators\ServiceClientsRT.tt"
                this.Write(this.ToStringHelper.ToStringWithCulture(operation.IsInternal ? "internal" : "public"));

            #line default
            #line hidden
                this.Write(" Task<");

            #line 219 "C:\dev\net\runtime.rebase\sdk\src\ServiceClientGenerator\Generators\ServiceClientsRT.tt"
                this.Write(this.ToStringHelper.ToStringWithCulture(operation.Name));

            #line default
            #line hidden
                this.Write("Response> ");

            #line 219 "C:\dev\net\runtime.rebase\sdk\src\ServiceClientGenerator\Generators\ServiceClientsRT.tt"
                this.Write(this.ToStringHelper.ToStringWithCulture(operation.Name));

            #line default
            #line hidden
                this.Write("Async(");

            #line 219 "C:\dev\net\runtime.rebase\sdk\src\ServiceClientGenerator\Generators\ServiceClientsRT.tt"
                this.Write(this.ToStringHelper.ToStringWithCulture(operation.Name));

            #line default
            #line hidden
                this.Write("Request request, System.Threading.CancellationToken cancellationToken = default(C" +
                           "ancellationToken))\r\n        {\r\n            var marshaller = new ");

            #line 221 "C:\dev\net\runtime.rebase\sdk\src\ServiceClientGenerator\Generators\ServiceClientsRT.tt"
                this.Write(this.ToStringHelper.ToStringWithCulture(operation.Name));

            #line default
            #line hidden
                this.Write("RequestMarshaller();\r\n            var unmarshaller = ");

            #line 222 "C:\dev\net\runtime.rebase\sdk\src\ServiceClientGenerator\Generators\ServiceClientsRT.tt"
                this.Write(this.ToStringHelper.ToStringWithCulture(operation.Name));

            #line default
            #line hidden
                this.Write("ResponseUnmarshaller.Instance;\r\n\r\n            return InvokeAsync<");

            #line 224 "C:\dev\net\runtime.rebase\sdk\src\ServiceClientGenerator\Generators\ServiceClientsRT.tt"
                this.Write(this.ToStringHelper.ToStringWithCulture(operation.Name));

            #line default
            #line hidden
                this.Write("Request,");

            #line 224 "C:\dev\net\runtime.rebase\sdk\src\ServiceClientGenerator\Generators\ServiceClientsRT.tt"
                this.Write(this.ToStringHelper.ToStringWithCulture(operation.Name));

            #line default
            #line hidden
                this.Write("Response>(request, marshaller, \r\n                unmarshaller, cancellationToken)" +
                           ";\r\n        }\r\n\r\n        #endregion\r\n        ");

            #line 229 "C:\dev\net\runtime.rebase\sdk\src\ServiceClientGenerator\Generators\ServiceClientsRT.tt"
            }


            #line default
            #line hidden
            this.Write("\r\n    }\r\n}\r\n");
            return(this.GenerationEnvironment.ToString());
        }
예제 #5
0
        /// <summary>
        /// Create the template output
        /// </summary>
        public override string TransformText()
        {
            #line 6 "C:\projects\aws\AWSDotNetPublic\generator\ServiceClientGeneratorLib\Generators\Marshallers\AWSQueryEC2ResponseUnmarshaller.tt"

            AddLicenseHeader();

            AddCommonUsingStatements();


            #line default
            #line hidden
            this.Write("namespace ");

            #line 11 "C:\projects\aws\AWSDotNetPublic\generator\ServiceClientGeneratorLib\Generators\Marshallers\AWSQueryEC2ResponseUnmarshaller.tt"
            this.Write(this.ToStringHelper.ToStringWithCulture(this.Config.Namespace));

            #line default
            #line hidden
            this.Write(".Model.Internal.MarshallTransformations\r\n{\r\n    /// <summary>\r\n    /// Response U" +
                       "nmarshaller for ");

            #line 14 "C:\projects\aws\AWSDotNetPublic\generator\ServiceClientGeneratorLib\Generators\Marshallers\AWSQueryEC2ResponseUnmarshaller.tt"
            this.Write(this.ToStringHelper.ToStringWithCulture(this.UnmarshallerBaseName));

            #line default
            #line hidden
            this.Write(" operation\r\n    /// </summary>  \r\n    public class ");

            #line 16 "C:\projects\aws\AWSDotNetPublic\generator\ServiceClientGeneratorLib\Generators\Marshallers\AWSQueryEC2ResponseUnmarshaller.tt"
            this.Write(this.ToStringHelper.ToStringWithCulture(this.UnmarshallerBaseName));

            #line default
            #line hidden
            this.Write(@"ResponseUnmarshaller : EC2ResponseUnmarshaller
    {
        /// <summary>
        /// Unmarshaller the response from the service to the response class.
        /// </summary>
        /// <param name=""context""></param>
        /// <returns></returns>
        public override AmazonWebServiceResponse Unmarshall(XmlUnmarshallerContext context)
        {
            ");

            #line 25 "C:\projects\aws\AWSDotNetPublic\generator\ServiceClientGeneratorLib\Generators\Marshallers\AWSQueryEC2ResponseUnmarshaller.tt"
            this.Write(this.ToStringHelper.ToStringWithCulture(this.UnmarshallerBaseName));

            #line default
            #line hidden
            this.Write("Response response = new ");

            #line 25 "C:\projects\aws\AWSDotNetPublic\generator\ServiceClientGeneratorLib\Generators\Marshallers\AWSQueryEC2ResponseUnmarshaller.tt"
            this.Write(this.ToStringHelper.ToStringWithCulture(this.Operation.Name));

            #line default
            #line hidden
            this.Write("Response();\r\n\r\n");

            #line 27 "C:\projects\aws\AWSDotNetPublic\generator\ServiceClientGeneratorLib\Generators\Marshallers\AWSQueryEC2ResponseUnmarshaller.tt"
            if (this.HasSuppressedResult)
            {
            #line default
            #line hidden
                this.Write("            while (context.Read())\r\n            {\r\n\t\t\t\r\n\t\t\t}\r\n");

            #line 34 "C:\projects\aws\AWSDotNetPublic\generator\ServiceClientGeneratorLib\Generators\Marshallers\AWSQueryEC2ResponseUnmarshaller.tt"
            }
            else
            {
            #line default
            #line hidden
                this.Write(@"            int originalDepth = context.CurrentDepth;
            int targetDepth = originalDepth + 1;
            if (context.IsStartOfDocument) 
               targetDepth = 2;

            while (context.ReadAtDepth(originalDepth))
            {
                if (context.IsStartElement || context.IsAttribute)
                {

");

            #line 49 "C:\projects\aws\AWSDotNetPublic\generator\ServiceClientGeneratorLib\Generators\Marshallers\AWSQueryEC2ResponseUnmarshaller.tt"

                if (this.Structure != null)
                {
                    if (this.IsWrapped)
                    {
            #line default
            #line hidden
                        this.Write("                    if ( context.TestExpression(\".\", targetDepth))\r\n             " +
                                   "       {\r\n                        response.");

            #line 57 "C:\projects\aws\AWSDotNetPublic\generator\ServiceClientGeneratorLib\Generators\Marshallers\AWSQueryEC2ResponseUnmarshaller.tt"
                        this.Write(this.ToStringHelper.ToStringWithCulture(MemberAccessorFor(this.Structure.Name)));

            #line default
            #line hidden
                        this.Write(" = ");

            #line 57 "C:\projects\aws\AWSDotNetPublic\generator\ServiceClientGeneratorLib\Generators\Marshallers\AWSQueryEC2ResponseUnmarshaller.tt"
                        this.Write(this.ToStringHelper.ToStringWithCulture(this.Structure.Name));

            #line default
            #line hidden
                        this.Write("Unmarshaller.Instance.Unmarshall(context);\r\n                        continue;\r\n  " +
                                   "                  }\r\n");

            #line 60 "C:\projects\aws\AWSDotNetPublic\generator\ServiceClientGeneratorLib\Generators\Marshallers\AWSQueryEC2ResponseUnmarshaller.tt"
                    }
                    else
                    {
                        foreach (var member in this.Structure.Members)
                        {
                            var testExpression = GeneratorHelpers.DetermineAWSQueryTestExpression(member);


            #line default
            #line hidden
                            this.Write("                    if (context.TestExpression(\"");

            #line 68 "C:\projects\aws\AWSDotNetPublic\generator\ServiceClientGeneratorLib\Generators\Marshallers\AWSQueryEC2ResponseUnmarshaller.tt"
                            this.Write(this.ToStringHelper.ToStringWithCulture(testExpression));

            #line default
            #line hidden
                            this.Write("\", targetDepth))\r\n                    {\r\n                        var unmarshaller" +
                                       " = ");

            #line 70 "C:\projects\aws\AWSDotNetPublic\generator\ServiceClientGeneratorLib\Generators\Marshallers\AWSQueryEC2ResponseUnmarshaller.tt"
                            this.Write(this.ToStringHelper.ToStringWithCulture(member.DetermineTypeUnmarshallerInstantiate()));

            #line default
            #line hidden
                            this.Write(";\r\n");

            #line 71 "C:\projects\aws\AWSDotNetPublic\generator\ServiceClientGeneratorLib\Generators\Marshallers\AWSQueryEC2ResponseUnmarshaller.tt"

                            if (member.IsList)
                            {
            #line default
            #line hidden
                                this.Write("                        var item = unmarshaller.Unmarshall(context);\r\n           " +
                                           "             response.");

            #line 76 "C:\projects\aws\AWSDotNetPublic\generator\ServiceClientGeneratorLib\Generators\Marshallers\AWSQueryEC2ResponseUnmarshaller.tt"
                                this.Write(this.ToStringHelper.ToStringWithCulture(MemberAccessorFor(member.PropertyName)));

            #line default
            #line hidden
                                this.Write(".Add(item);\r\n");

            #line 77 "C:\projects\aws\AWSDotNetPublic\generator\ServiceClientGeneratorLib\Generators\Marshallers\AWSQueryEC2ResponseUnmarshaller.tt"
                            }
                            else
                            {
            #line default
            #line hidden
                                this.Write("                        response.");

            #line 82 "C:\projects\aws\AWSDotNetPublic\generator\ServiceClientGeneratorLib\Generators\Marshallers\AWSQueryEC2ResponseUnmarshaller.tt"
                                this.Write(this.ToStringHelper.ToStringWithCulture(MemberAccessorFor(member.PropertyName)));

            #line default
            #line hidden
                                this.Write(" = unmarshaller.Unmarshall(context);\r\n");

            #line 83 "C:\projects\aws\AWSDotNetPublic\generator\ServiceClientGeneratorLib\Generators\Marshallers\AWSQueryEC2ResponseUnmarshaller.tt"
                            }


            #line default
            #line hidden
                            this.Write("                        continue;\r\n                    }\r\n");

            #line 88 "C:\projects\aws\AWSDotNetPublic\generator\ServiceClientGeneratorLib\Generators\Marshallers\AWSQueryEC2ResponseUnmarshaller.tt"
                        }
                    }
                }


            #line default
            #line hidden
                this.Write("                } \r\n            }\r\n");

            #line 95 "C:\projects\aws\AWSDotNetPublic\generator\ServiceClientGeneratorLib\Generators\Marshallers\AWSQueryEC2ResponseUnmarshaller.tt"
            }


            #line default
            #line hidden
            this.Write(@"
            return response;
        }

        /// <summary>
        /// Unmarshaller error response to exception.
        /// </summary>  
        /// <param name=""context""></param>
        /// <param name=""innerException""></param>
        /// <param name=""statusCode""></param>
        /// <returns></returns>
        public override AmazonServiceException UnmarshallException(XmlUnmarshallerContext context, Exception innerException, HttpStatusCode statusCode)
        {
            ErrorResponse errorResponse = ErrorResponseUnmarshaller.GetInstance().Unmarshall(context);
");

            #line 112 "C:\projects\aws\AWSDotNetPublic\generator\ServiceClientGeneratorLib\Generators\Marshallers\AWSQueryEC2ResponseUnmarshaller.tt"

            foreach (var exception in this.Operation.Exceptions)
            {
            #line default
            #line hidden
                this.Write("            if (errorResponse.Code != null && errorResponse.Code.Equals(\"");

            #line 116 "C:\projects\aws\AWSDotNetPublic\generator\ServiceClientGeneratorLib\Generators\Marshallers\AWSQueryEC2ResponseUnmarshaller.tt"
                this.Write(this.ToStringHelper.ToStringWithCulture(exception.Code));

            #line default
            #line hidden
                this.Write("\"))\r\n            {\r\n                return new ");

            #line 118 "C:\projects\aws\AWSDotNetPublic\generator\ServiceClientGeneratorLib\Generators\Marshallers\AWSQueryEC2ResponseUnmarshaller.tt"
                this.Write(this.ToStringHelper.ToStringWithCulture(exception.Name));

            #line default
            #line hidden
                this.Write("(errorResponse.Message, innerException, errorResponse.Type, errorResponse.Code, e" +
                           "rrorResponse.RequestId, statusCode);\r\n            }\r\n");

            #line 120 "C:\projects\aws\AWSDotNetPublic\generator\ServiceClientGeneratorLib\Generators\Marshallers\AWSQueryEC2ResponseUnmarshaller.tt"
            }


            #line default
            #line hidden
            this.Write("            return new ");

            #line 123 "C:\projects\aws\AWSDotNetPublic\generator\ServiceClientGeneratorLib\Generators\Marshallers\AWSQueryEC2ResponseUnmarshaller.tt"
            this.Write(this.ToStringHelper.ToStringWithCulture(this.BaseException));

            #line default
            #line hidden
            this.Write("(errorResponse.Message, innerException, errorResponse.Type, errorResponse.Code, e" +
                       "rrorResponse.RequestId, statusCode);\r\n        }\r\n");

            #line 125 "C:\projects\aws\AWSDotNetPublic\generator\ServiceClientGeneratorLib\Generators\Marshallers\AWSQueryEC2ResponseUnmarshaller.tt"

            this.AddResponseSingletonMethod();


            #line default
            #line hidden
            this.Write("    }\r\n}\r\n");
            return(this.GenerationEnvironment.ToString());
        }
예제 #6
0
        /// <summary>
        /// Create the template output
        /// </summary>
        public override string TransformText()
        {
            #line 6 "C:\Dev\Repos\AWSDotNetPublic\generator\ServiceClientGeneratorLib\Generators\SourceFiles\StructureGenerator.tt"

            AddLicenseHeader();


            #line default
            #line hidden
            this.Write("using System;\r\nusing System.Collections.Generic;\r\nusing System.Xml.Serialization;" +
                       "\r\nusing System.Text;\r\nusing System.IO;\r\n\r\nusing Amazon.Runtime;\r\nusing Amazon.Ru" +
                       "ntime.Internal;\r\n");

            #line 17 "C:\Dev\Repos\AWSDotNetPublic\generator\ServiceClientGeneratorLib\Generators\SourceFiles\StructureGenerator.tt"

            if (this.StructureType == StructureType.Request && this.Operation.AuthType.HasValue)
            {
            #line default
            #line hidden
                this.Write("using Amazon.Runtime.Internal.Auth;\r\n");

            #line 22 "C:\Dev\Repos\AWSDotNetPublic\generator\ServiceClientGeneratorLib\Generators\SourceFiles\StructureGenerator.tt"
            }


            #line default
            #line hidden
            this.Write("\r\nnamespace ");

            #line 26 "C:\Dev\Repos\AWSDotNetPublic\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 28 "C:\Dev\Repos\AWSDotNetPublic\generator\ServiceClientGeneratorLib\Generators\SourceFiles\StructureGenerator.tt"

            if (this.StructureType == StructureType.Request)
            {
                this.FormatOperationRequestDocumentation(this.Operation);
            }
            else if (this.Operation != null && GeneratorHelpers.HasSuppressedResult(this.Operation))
            {
                this.FormatVoidResultDocumentation(this.Operation.Name);
            }
            else if (this.StructureType == StructureType.Response && (this.Structure == null || string.IsNullOrEmpty(this.Structure.Documentation)))
            {
            #line default
            #line hidden
                this.Write("\t/// <summary>\r\n\t/// This is the response object from the ");

            #line 37 "C:\Dev\Repos\AWSDotNetPublic\generator\ServiceClientGeneratorLib\Generators\SourceFiles\StructureGenerator.tt"
                this.Write(this.ToStringHelper.ToStringWithCulture(this.Operation.Name));

            #line default
            #line hidden
                this.Write(" operation.\r\n\t/// </summary>\r\n");

            #line 39 "C:\Dev\Repos\AWSDotNetPublic\generator\ServiceClientGeneratorLib\Generators\SourceFiles\StructureGenerator.tt"
            }
            else
            {
                this.FormatClassDocumentation(this.Structure);
            }


            #line default
            #line hidden

            #line 44 "C:\Dev\Repos\AWSDotNetPublic\generator\ServiceClientGeneratorLib\Generators\SourceFiles\StructureGenerator.tt"

            if (this.Structure != null && this.Structure.IsDeprecated)
            {
            #line default
            #line hidden
                this.Write("    [Obsolete(\"");

            #line 48 "C:\Dev\Repos\AWSDotNetPublic\generator\ServiceClientGeneratorLib\Generators\SourceFiles\StructureGenerator.tt"
                this.Write(this.ToStringHelper.ToStringWithCulture(this.Structure.DeprecationMessage));

            #line default
            #line hidden
                this.Write("\")]\r\n");

            #line 49 "C:\Dev\Repos\AWSDotNetPublic\generator\ServiceClientGeneratorLib\Generators\SourceFiles\StructureGenerator.tt"
            }
            bool hasStreamingMember = this.Structure?.Members.Any(member => member.IsStreaming) ?? false;
            if (this.StructureType == StructureType.Response && hasStreamingMember)
            {
            #line default
            #line hidden
                this.Write("    public partial class ");

            #line 55 "C:\Dev\Repos\AWSDotNetPublic\generator\ServiceClientGeneratorLib\Generators\SourceFiles\StructureGenerator.tt"
                this.Write(this.ToStringHelper.ToStringWithCulture(this.ClassName));

            #line default
            #line hidden

            #line 55 "C:\Dev\Repos\AWSDotNetPublic\generator\ServiceClientGeneratorLib\Generators\SourceFiles\StructureGenerator.tt"
                this.Write(this.ToStringHelper.ToStringWithCulture(this.BaseClassString));

            #line default
            #line hidden
                this.Write(", IDisposable\r\n");

            #line 56 "C:\Dev\Repos\AWSDotNetPublic\generator\ServiceClientGeneratorLib\Generators\SourceFiles\StructureGenerator.tt"
            }
            else
            {
            #line default
            #line hidden
                this.Write("    public partial class ");

            #line 61 "C:\Dev\Repos\AWSDotNetPublic\generator\ServiceClientGeneratorLib\Generators\SourceFiles\StructureGenerator.tt"
                this.Write(this.ToStringHelper.ToStringWithCulture(this.ClassName));

            #line default
            #line hidden

            #line 61 "C:\Dev\Repos\AWSDotNetPublic\generator\ServiceClientGeneratorLib\Generators\SourceFiles\StructureGenerator.tt"
                this.Write(this.ToStringHelper.ToStringWithCulture(this.BaseClassString));

            #line default
            #line hidden
                this.Write("\r\n");

            #line 62 "C:\Dev\Repos\AWSDotNetPublic\generator\ServiceClientGeneratorLib\Generators\SourceFiles\StructureGenerator.tt"
            }


            #line default
            #line hidden
            this.Write("\t{\r\n");

            #line 66 "C:\Dev\Repos\AWSDotNetPublic\generator\ServiceClientGeneratorLib\Generators\SourceFiles\StructureGenerator.tt"

            if (this.Structure != null)
            {
                if (this.IsWrapped)
                {
            #line default
            #line hidden
                    this.Write("        private ");

            #line 72 "C:\Dev\Repos\AWSDotNetPublic\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        /// <summary>\r\n        /// Gets and sets the ");

            #line 75 "C:\Dev\Repos\AWSDotNetPublic\generator\ServiceClientGeneratorLib\Generators\SourceFiles\StructureGenerator.tt"
                    this.Write(this.ToStringHelper.ToStringWithCulture(this.Structure.Name));

            #line default
            #line hidden
                    this.Write(" property.\r\n        /// </summary>\r\n        public ");

            #line 77 "C:\Dev\Repos\AWSDotNetPublic\generator\ServiceClientGeneratorLib\Generators\SourceFiles\StructureGenerator.tt"
                    this.Write(this.ToStringHelper.ToStringWithCulture(this.Structure.Name));

            #line default
            #line hidden
                    this.Write(" ");

            #line 77 "C:\Dev\Repos\AWSDotNetPublic\generator\ServiceClientGeneratorLib\Generators\SourceFiles\StructureGenerator.tt"
                    this.Write(this.ToStringHelper.ToStringWithCulture(this.Structure.Name));

            #line default
            #line hidden
                    this.Write("\r\n        {\r\n            get { return this._response; }\r\n            set { this._" +
                               "response = value; }\r\n        }\r\n");

            #line 82 "C:\Dev\Repos\AWSDotNetPublic\generator\ServiceClientGeneratorLib\Generators\SourceFiles\StructureGenerator.tt"
                }
                else
                {
                    foreach (var member in this.Structure.Members)
                    {
                        if (member.IsExcluded)
                        {
                            continue;
                        }


            #line default
            #line hidden
                        this.Write("        private ");

            #line 91 "C:\Dev\Repos\AWSDotNetPublic\generator\ServiceClientGeneratorLib\Generators\SourceFiles\StructureGenerator.tt"
                        this.Write(this.ToStringHelper.ToStringWithCulture(member.DetermineType()));

            #line default
            #line hidden

            #line 91 "C:\Dev\Repos\AWSDotNetPublic\generator\ServiceClientGeneratorLib\Generators\SourceFiles\StructureGenerator.tt"
                        this.Write(this.ToStringHelper.ToStringWithCulture(member.IsNullable ? "?" : ""));

            #line default
            #line hidden
                        this.Write(" ");

            #line 91 "C:\Dev\Repos\AWSDotNetPublic\generator\ServiceClientGeneratorLib\Generators\SourceFiles\StructureGenerator.tt"
                        this.Write(this.ToStringHelper.ToStringWithCulture(member.VariableName));

            #line default
            #line hidden

            #line 91 "C:\Dev\Repos\AWSDotNetPublic\generator\ServiceClientGeneratorLib\Generators\SourceFiles\StructureGenerator.tt"
                        this.Write(this.ToStringHelper.ToStringWithCulture(member.ShouldInstantiate ? string.Format(" = new {0}();", member.DetermineType()) : ";"));

            #line default
            #line hidden
                        this.Write("\r\n");

            #line 92 "C:\Dev\Repos\AWSDotNetPublic\generator\ServiceClientGeneratorLib\Generators\SourceFiles\StructureGenerator.tt"
                    }


            #line default
            #line hidden
                    this.Write("\r\n");

            #line 96 "C:\Dev\Repos\AWSDotNetPublic\generator\ServiceClientGeneratorLib\Generators\SourceFiles\StructureGenerator.tt"

                    AddSimpleRequestConstructors(this.ClassName, this.Structure, this.Config.Namespace);

                    foreach (var member in this.Structure.Members)
                    {
                        if (member.IsExcluded)
                        {
                            continue;
                        }


            #line default
            #line hidden

            #line 104 "C:\Dev\Repos\AWSDotNetPublic\generator\ServiceClientGeneratorLib\Generators\SourceFiles\StructureGenerator.tt"
                        this.FormatPropertyDocumentation(member);

            #line default
            #line hidden

            #line 105 "C:\Dev\Repos\AWSDotNetPublic\generator\ServiceClientGeneratorLib\Generators\SourceFiles\StructureGenerator.tt"

                        if (member.IsDeprecated)
                        {
            #line default
            #line hidden
                            this.Write("\t\t[Obsolete(\"");

            #line 109 "C:\Dev\Repos\AWSDotNetPublic\generator\ServiceClientGeneratorLib\Generators\SourceFiles\StructureGenerator.tt"
                            this.Write(this.ToStringHelper.ToStringWithCulture(member.DeprecationMessage));

            #line default
            #line hidden
                            this.Write("\")]\r\n");

            #line 110 "C:\Dev\Repos\AWSDotNetPublic\generator\ServiceClientGeneratorLib\Generators\SourceFiles\StructureGenerator.tt"
                        }

                        var propertyAttributes = new List <string>();
                        if (member.IsRequired && !member.IsIdempotent)
                        {
                            propertyAttributes.Add("Required=true");
                        }
                        if (member.Shape.Min.HasValue)
                        {
                            propertyAttributes.Add("Min=" + member.Shape.Min);
                        }
                        if (member.Shape.Max.HasValue)
                        {
                            propertyAttributes.Add("Max=" + member.Shape.Max);
                        }
                        if (propertyAttributes.Count > 0)
                        {
            #line default
            #line hidden
                            this.Write("\t\t[AWSProperty(");

            #line 129 "C:\Dev\Repos\AWSDotNetPublic\generator\ServiceClientGeneratorLib\Generators\SourceFiles\StructureGenerator.tt"
                            this.Write(this.ToStringHelper.ToStringWithCulture(string.Join(", ", propertyAttributes)));

            #line default
            #line hidden
                            this.Write(")]\r\n");

            #line 130 "C:\Dev\Repos\AWSDotNetPublic\generator\ServiceClientGeneratorLib\Generators\SourceFiles\StructureGenerator.tt"
                        }


            #line default
            #line hidden
                        this.Write("        ");

            #line 133 "C:\Dev\Repos\AWSDotNetPublic\generator\ServiceClientGeneratorLib\Generators\SourceFiles\StructureGenerator.tt"
                        this.Write(this.ToStringHelper.ToStringWithCulture(member.AccessModifier));

            #line default
            #line hidden
                        this.Write(" ");

            #line 133 "C:\Dev\Repos\AWSDotNetPublic\generator\ServiceClientGeneratorLib\Generators\SourceFiles\StructureGenerator.tt"
                        this.Write(this.ToStringHelper.ToStringWithCulture(member.DetermineType()));

            #line default
            #line hidden

            #line 133 "C:\Dev\Repos\AWSDotNetPublic\generator\ServiceClientGeneratorLib\Generators\SourceFiles\StructureGenerator.tt"
                        this.Write(this.ToStringHelper.ToStringWithCulture(member.UseNullable ? "?" : ""));

            #line default
            #line hidden
                        this.Write(" ");

            #line 133 "C:\Dev\Repos\AWSDotNetPublic\generator\ServiceClientGeneratorLib\Generators\SourceFiles\StructureGenerator.tt"
                        this.Write(this.ToStringHelper.ToStringWithCulture(member.PropertyName));

            #line default
            #line hidden
                        this.Write("\r\n        {\r\n");

            #line 135 "C:\Dev\Repos\AWSDotNetPublic\generator\ServiceClientGeneratorLib\Generators\SourceFiles\StructureGenerator.tt"

                        if (member.IsNullable && !member.UseNullable)
                        {
            #line default
            #line hidden
                            this.Write("            get { return this.");

            #line 139 "C:\Dev\Repos\AWSDotNetPublic\generator\ServiceClientGeneratorLib\Generators\SourceFiles\StructureGenerator.tt"
                            this.Write(this.ToStringHelper.ToStringWithCulture(member.VariableName));

            #line default
            #line hidden
                            this.Write(".GetValueOrDefault(); }\r\n");

            #line 140 "C:\Dev\Repos\AWSDotNetPublic\generator\ServiceClientGeneratorLib\Generators\SourceFiles\StructureGenerator.tt"
                        }
                        else
                        {
            #line default
            #line hidden
                            this.Write("            get { return this.");

            #line 145 "C:\Dev\Repos\AWSDotNetPublic\generator\ServiceClientGeneratorLib\Generators\SourceFiles\StructureGenerator.tt"
                            this.Write(this.ToStringHelper.ToStringWithCulture(member.VariableName));

            #line default
            #line hidden
                            this.Write("; }\r\n");

            #line 146 "C:\Dev\Repos\AWSDotNetPublic\generator\ServiceClientGeneratorLib\Generators\SourceFiles\StructureGenerator.tt"
                        }


            #line default
            #line hidden
                        this.Write("            set { ");

            #line 149 "C:\Dev\Repos\AWSDotNetPublic\generator\ServiceClientGeneratorLib\Generators\SourceFiles\StructureGenerator.tt"
                        this.Write(this.ToStringHelper.ToStringWithCulture(member.IsBackwardsCompatibleDateTimeProperty ? "this." + member.BackwardCompatibilityVariableName + " = " : ""));

            #line default
            #line hidden
                        this.Write("this.");

            #line 149 "C:\Dev\Repos\AWSDotNetPublic\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 152 "C:\Dev\Repos\AWSDotNetPublic\generator\ServiceClientGeneratorLib\Generators\SourceFiles\StructureGenerator.tt"

                        if (member.EmitIsSetProperties)
                        {
            #line default
            #line hidden
                            this.Write("        /// <summary>\r\n        /// This property is set to true if the property <" +
                                       "seealso cref=\"");

            #line 157 "C:\Dev\Repos\AWSDotNetPublic\generator\ServiceClientGeneratorLib\Generators\SourceFiles\StructureGenerator.tt"
                            this.Write(this.ToStringHelper.ToStringWithCulture(member.PropertyName));

            #line default
            #line hidden
                            this.Write(@"""/>
        /// is set; false otherwise.
        /// This property can be used to determine if the related property
        /// was returned by a service response or if the related property
        /// should be sent to the service during a service call.
        /// </summary>
        /// <returns>
        /// True if the related property was set or will be sent to a service; false otherwise.
        /// </returns>
");

            #line 166 "C:\Dev\Repos\AWSDotNetPublic\generator\ServiceClientGeneratorLib\Generators\SourceFiles\StructureGenerator.tt"

                            if (member.IsDeprecated)
                            {
            #line default
            #line hidden
                                this.Write("\t\t[Obsolete(\"");

            #line 170 "C:\Dev\Repos\AWSDotNetPublic\generator\ServiceClientGeneratorLib\Generators\SourceFiles\StructureGenerator.tt"
                                this.Write(this.ToStringHelper.ToStringWithCulture(member.DeprecationMessage));

            #line default
            #line hidden
                                this.Write("\")]\r\n");

            #line 171 "C:\Dev\Repos\AWSDotNetPublic\generator\ServiceClientGeneratorLib\Generators\SourceFiles\StructureGenerator.tt"
                            }


            #line default
            #line hidden
                            this.Write("        public bool Is");

            #line 174 "C:\Dev\Repos\AWSDotNetPublic\generator\ServiceClientGeneratorLib\Generators\SourceFiles\StructureGenerator.tt"
                            this.Write(this.ToStringHelper.ToStringWithCulture(member.PropertyName));

            #line default
            #line hidden
                            this.Write("Set\r\n        {\r\n            get\r\n            {\r\n                return Amazon.Uti" +
                                       "l.Internal.InternalSDKUtils.GetIsSet(this.");

            #line 178 "C:\Dev\Repos\AWSDotNetPublic\generator\ServiceClientGeneratorLib\Generators\SourceFiles\StructureGenerator.tt"
                            this.Write(this.ToStringHelper.ToStringWithCulture(member.VariableName));

            #line default
            #line hidden
                            this.Write(");\r\n            }\r\n            set\r\n            {\r\n                Amazon.Util.In" +
                                       "ternal.InternalSDKUtils.SetIsSet(value, ref this.");

            #line 182 "C:\Dev\Repos\AWSDotNetPublic\generator\ServiceClientGeneratorLib\Generators\SourceFiles\StructureGenerator.tt"
                            this.Write(this.ToStringHelper.ToStringWithCulture(member.VariableName));

            #line default
            #line hidden
                            this.Write(");\r\n");

            #line 183 "C:\Dev\Repos\AWSDotNetPublic\generator\ServiceClientGeneratorLib\Generators\SourceFiles\StructureGenerator.tt"

                            if (member.IsBackwardsCompatibleDateTimeProperty)
                            {
            #line default
            #line hidden
                                this.Write("  \r\n                Amazon.Util.Internal.InternalSDKUtils.SetIsSet(value, ref thi" +
                                           "s.");

            #line 187 "C:\Dev\Repos\AWSDotNetPublic\generator\ServiceClientGeneratorLib\Generators\SourceFiles\StructureGenerator.tt"
                                this.Write(this.ToStringHelper.ToStringWithCulture(member.BackwardCompatibilityVariableName));

            #line default
            #line hidden
                                this.Write(");\r\n");

            #line 188 "C:\Dev\Repos\AWSDotNetPublic\generator\ServiceClientGeneratorLib\Generators\SourceFiles\StructureGenerator.tt"
                            }


            #line default
            #line hidden
                            this.Write("            }\r\n        }\r\n\r\n");

            #line 194 "C:\Dev\Repos\AWSDotNetPublic\generator\ServiceClientGeneratorLib\Generators\SourceFiles\StructureGenerator.tt"
                        }


            #line default
            #line hidden
                        this.Write("        // Check to see if ");

            #line 197 "C:\Dev\Repos\AWSDotNetPublic\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 198 "C:\Dev\Repos\AWSDotNetPublic\generator\ServiceClientGeneratorLib\Generators\SourceFiles\StructureGenerator.tt"
                        this.Write(this.ToStringHelper.ToStringWithCulture(member.PropertyName));

            #line default
            #line hidden
                        this.Write("()\r\n        {\r\n");

            #line 200 "C:\Dev\Repos\AWSDotNetPublic\generator\ServiceClientGeneratorLib\Generators\SourceFiles\StructureGenerator.tt"

                        if (member.EmitIsSetProperties)
                        {
            #line default
            #line hidden
                            this.Write("            return this.Is");

            #line 204 "C:\Dev\Repos\AWSDotNetPublic\generator\ServiceClientGeneratorLib\Generators\SourceFiles\StructureGenerator.tt"
                            this.Write(this.ToStringHelper.ToStringWithCulture(member.PropertyName));

            #line default
            #line hidden
                            this.Write("Set; \r\n");

            #line 205 "C:\Dev\Repos\AWSDotNetPublic\generator\ServiceClientGeneratorLib\Generators\SourceFiles\StructureGenerator.tt"
                        }
                        else if (member.IsNullable)
                        {
            #line default
            #line hidden
                            this.Write("            return this.");

            #line 210 "C:\Dev\Repos\AWSDotNetPublic\generator\ServiceClientGeneratorLib\Generators\SourceFiles\StructureGenerator.tt"
                            this.Write(this.ToStringHelper.ToStringWithCulture(member.VariableName));

            #line default
            #line hidden
                            this.Write(".HasValue; \r\n");

            #line 211 "C:\Dev\Repos\AWSDotNetPublic\generator\ServiceClientGeneratorLib\Generators\SourceFiles\StructureGenerator.tt"
                        }
                        else if (member.IsMap || member.IsList)
                        {
            #line default
            #line hidden
                            this.Write("            return this.");

            #line 216 "C:\Dev\Repos\AWSDotNetPublic\generator\ServiceClientGeneratorLib\Generators\SourceFiles\StructureGenerator.tt"
                            this.Write(this.ToStringHelper.ToStringWithCulture(member.VariableName));

            #line default
            #line hidden
                            this.Write(" != null && this.");

            #line 216 "C:\Dev\Repos\AWSDotNetPublic\generator\ServiceClientGeneratorLib\Generators\SourceFiles\StructureGenerator.tt"
                            this.Write(this.ToStringHelper.ToStringWithCulture(member.VariableName));

            #line default
            #line hidden
                            this.Write(".Count > 0; \r\n");

            #line 217 "C:\Dev\Repos\AWSDotNetPublic\generator\ServiceClientGeneratorLib\Generators\SourceFiles\StructureGenerator.tt"
                        }
                        else
                        {
            #line default
            #line hidden
                            this.Write("            return this.");

            #line 222 "C:\Dev\Repos\AWSDotNetPublic\generator\ServiceClientGeneratorLib\Generators\SourceFiles\StructureGenerator.tt"
                            this.Write(this.ToStringHelper.ToStringWithCulture(member.VariableName));

            #line default
            #line hidden
                            this.Write(" != null;\r\n");

            #line 223 "C:\Dev\Repos\AWSDotNetPublic\generator\ServiceClientGeneratorLib\Generators\SourceFiles\StructureGenerator.tt"
                        }


            #line default
            #line hidden
                        this.Write("        }\r\n\r\n");

            #line 228 "C:\Dev\Repos\AWSDotNetPublic\generator\ServiceClientGeneratorLib\Generators\SourceFiles\StructureGenerator.tt"
                    }

                    if (this.StructureType == StructureType.Request && this.Operation.AuthType.HasValue)
                    {
            #line default
            #line hidden
                        this.Write("        /// <summary>\r\n        /// Get the signer to use for this request.\r\n     " +
                                   "   /// </summary>\r\n        /// <returns>A signer for this request.</returns>\r\n  " +
                                   "      override protected AbstractAWSSigner CreateSigner()\r\n        {\r\n");

            #line 240 "C:\Dev\Repos\AWSDotNetPublic\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 246 "C:\Dev\Repos\AWSDotNetPublic\generator\ServiceClientGeneratorLib\Generators\SourceFiles\StructureGenerator.tt"

                            break;

                        case OperationAuthType.V4:


            #line default
            #line hidden
                            this.Write("            return new AWS4Signer();\r\n");

            #line 251 "C:\Dev\Repos\AWSDotNetPublic\generator\ServiceClientGeneratorLib\Generators\SourceFiles\StructureGenerator.tt"

                            break;

                        case OperationAuthType.V4UnsignedBody:


            #line default
            #line hidden
                            this.Write("            return new AWS4Signer(false);\r\n");

            #line 256 "C:\Dev\Repos\AWSDotNetPublic\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 263 "C:\Dev\Repos\AWSDotNetPublic\generator\ServiceClientGeneratorLib\Generators\SourceFiles\StructureGenerator.tt"
                    }
                    if (this.Structure.Members.Any(m => !m.IsExcluded && m.IsBackwardsCompatibleDateTimeProperty))
                    {
            #line default
            #line hidden
                        this.Write("#region Backwards compatible properties\r\n");

            #line 269 "C:\Dev\Repos\AWSDotNetPublic\generator\ServiceClientGeneratorLib\Generators\SourceFiles\StructureGenerator.tt"

                        foreach (var member in this.Structure.Members)
                        {
                            if (member.IsExcluded || !member.IsBackwardsCompatibleDateTimeProperty)
                            {
                                continue;
                            }


            #line default
            #line hidden
                            this.Write("        private ");

            #line 275 "C:\Dev\Repos\AWSDotNetPublic\generator\ServiceClientGeneratorLib\Generators\SourceFiles\StructureGenerator.tt"
                            this.Write(this.ToStringHelper.ToStringWithCulture(member.DetermineType()));

            #line default
            #line hidden

            #line 275 "C:\Dev\Repos\AWSDotNetPublic\generator\ServiceClientGeneratorLib\Generators\SourceFiles\StructureGenerator.tt"
                            this.Write(this.ToStringHelper.ToStringWithCulture(member.IsNullable ? "?" : ""));

            #line default
            #line hidden
                            this.Write(" ");

            #line 275 "C:\Dev\Repos\AWSDotNetPublic\generator\ServiceClientGeneratorLib\Generators\SourceFiles\StructureGenerator.tt"
                            this.Write(this.ToStringHelper.ToStringWithCulture(member.BackwardCompatibilityVariableName));

            #line default
            #line hidden

            #line 275 "C:\Dev\Repos\AWSDotNetPublic\generator\ServiceClientGeneratorLib\Generators\SourceFiles\StructureGenerator.tt"
                            this.Write(this.ToStringHelper.ToStringWithCulture(member.ShouldInstantiate ? string.Format(" = new {0}();", member.DetermineType()) : ";"));

            #line default
            #line hidden
                            this.Write("\r\n");

            #line 276 "C:\Dev\Repos\AWSDotNetPublic\generator\ServiceClientGeneratorLib\Generators\SourceFiles\StructureGenerator.tt"
                        }


            #line default
            #line hidden
                        this.Write("\r\n");

            #line 280 "C:\Dev\Repos\AWSDotNetPublic\generator\ServiceClientGeneratorLib\Generators\SourceFiles\StructureGenerator.tt"

                        foreach (var member in this.Structure.Members)
                        {
                            if (member.IsExcluded || !member.IsBackwardsCompatibleDateTimeProperty)
                            {
                                continue;
                            }


            #line default
            #line hidden

            #line 286 "C:\Dev\Repos\AWSDotNetPublic\generator\ServiceClientGeneratorLib\Generators\SourceFiles\StructureGenerator.tt"
                            this.FormatPropertyDocumentation(member, "This property is deprecated. Setting this property results in non-UTC DateTimes " +
                                                             "not being marshalled correctly. Use " + member.PropertyName + " instead. Setting either " + member.BackwardCompatibilityPropertyName +
                                                             " or " + member.PropertyName + " results in both " + member.BackwardCompatibilityPropertyName + " and " +
                                                             member.PropertyName + " being assigned, the latest assignment to either one of the two property is reflected in " +
                                                             "the value of both. " + member.BackwardCompatibilityPropertyName + " is provided for backwards compatibility only " +
                                                             "and assigning a non-Utc DateTime to it results in the wrong timestamp being passed to the service.");

            #line default
            #line hidden
                            this.Write("        [Obsolete(\"Setting this property results in non-UTC DateTimes not being m" +
                                       "arshalled correctly. \" +\r\n            \"Use ");

            #line 293 "C:\Dev\Repos\AWSDotNetPublic\generator\ServiceClientGeneratorLib\Generators\SourceFiles\StructureGenerator.tt"
                            this.Write(this.ToStringHelper.ToStringWithCulture(member.PropertyName));

            #line default
            #line hidden
                            this.Write(" instead. Setting either ");

            #line 293 "C:\Dev\Repos\AWSDotNetPublic\generator\ServiceClientGeneratorLib\Generators\SourceFiles\StructureGenerator.tt"
                            this.Write(this.ToStringHelper.ToStringWithCulture(member.BackwardCompatibilityPropertyName));

            #line default
            #line hidden
                            this.Write(" or ");

            #line 293 "C:\Dev\Repos\AWSDotNetPublic\generator\ServiceClientGeneratorLib\Generators\SourceFiles\StructureGenerator.tt"
                            this.Write(this.ToStringHelper.ToStringWithCulture(member.PropertyName));

            #line default
            #line hidden
                            this.Write(" results in both ");

            #line 293 "C:\Dev\Repos\AWSDotNetPublic\generator\ServiceClientGeneratorLib\Generators\SourceFiles\StructureGenerator.tt"
                            this.Write(this.ToStringHelper.ToStringWithCulture(member.BackwardCompatibilityPropertyName));

            #line default
            #line hidden
                            this.Write(" and \" +\r\n            \"");

            #line 294 "C:\Dev\Repos\AWSDotNetPublic\generator\ServiceClientGeneratorLib\Generators\SourceFiles\StructureGenerator.tt"
                            this.Write(this.ToStringHelper.ToStringWithCulture(member.PropertyName));

            #line default
            #line hidden
                            this.Write(" being assigned, the latest assignment to either one of the two property is \" + \r" +
                                       "\n            \"reflected in the value of both. ");

            #line 295 "C:\Dev\Repos\AWSDotNetPublic\generator\ServiceClientGeneratorLib\Generators\SourceFiles\StructureGenerator.tt"
                            this.Write(this.ToStringHelper.ToStringWithCulture(member.BackwardCompatibilityPropertyName));

            #line default
            #line hidden
                            this.Write(" is provided for backwards compatibility only and \" +\r\n            \"assigning a n" +
                                       "on-Utc DateTime to it results in the wrong timestamp being passed to the service" +
                                       ".\", false)]\r\n        ");

            #line 297 "C:\Dev\Repos\AWSDotNetPublic\generator\ServiceClientGeneratorLib\Generators\SourceFiles\StructureGenerator.tt"
                            this.Write(this.ToStringHelper.ToStringWithCulture(member.AccessModifier));

            #line default
            #line hidden
                            this.Write(" ");

            #line 297 "C:\Dev\Repos\AWSDotNetPublic\generator\ServiceClientGeneratorLib\Generators\SourceFiles\StructureGenerator.tt"
                            this.Write(this.ToStringHelper.ToStringWithCulture(member.DetermineType()));

            #line default
            #line hidden

            #line 297 "C:\Dev\Repos\AWSDotNetPublic\generator\ServiceClientGeneratorLib\Generators\SourceFiles\StructureGenerator.tt"
                            this.Write(this.ToStringHelper.ToStringWithCulture(member.UseNullable ? "?" : ""));

            #line default
            #line hidden
                            this.Write(" ");

            #line 297 "C:\Dev\Repos\AWSDotNetPublic\generator\ServiceClientGeneratorLib\Generators\SourceFiles\StructureGenerator.tt"
                            this.Write(this.ToStringHelper.ToStringWithCulture(member.BackwardCompatibilityPropertyName));

            #line default
            #line hidden
                            this.Write("\r\n        {\r\n            get { return this.");

            #line 299 "C:\Dev\Repos\AWSDotNetPublic\generator\ServiceClientGeneratorLib\Generators\SourceFiles\StructureGenerator.tt"
                            this.Write(this.ToStringHelper.ToStringWithCulture(member.BackwardCompatibilityVariableName));

            #line default
            #line hidden
                            this.Write(".GetValueOrDefault(); }\r\n            set\r\n            {\r\n                this.");

            #line 302 "C:\Dev\Repos\AWSDotNetPublic\generator\ServiceClientGeneratorLib\Generators\SourceFiles\StructureGenerator.tt"
                            this.Write(this.ToStringHelper.ToStringWithCulture(member.BackwardCompatibilityVariableName));

            #line default
            #line hidden
                            this.Write(" = value;\r\n                this.");

            #line 303 "C:\Dev\Repos\AWSDotNetPublic\generator\ServiceClientGeneratorLib\Generators\SourceFiles\StructureGenerator.tt"
                            this.Write(this.ToStringHelper.ToStringWithCulture(member.VariableName));

            #line default
            #line hidden
                            this.Write(" = new DateTime(value.Ticks, DateTimeKind.Utc);\r\n            }\r\n        }\r\n");

            #line 306 "C:\Dev\Repos\AWSDotNetPublic\generator\ServiceClientGeneratorLib\Generators\SourceFiles\StructureGenerator.tt"

                            if (member.EmitIsSetProperties)
                            {
            #line default
            #line hidden
                                this.Write("\t\t/// <summary>\r\n        /// This property is set to true if the property <seeals" +
                                           "o cref=\"");

            #line 311 "C:\Dev\Repos\AWSDotNetPublic\generator\ServiceClientGeneratorLib\Generators\SourceFiles\StructureGenerator.tt"
                                this.Write(this.ToStringHelper.ToStringWithCulture(member.BackwardCompatibilityPropertyName));

            #line default
            #line hidden
                                this.Write(@"""/>
        /// is set; false otherwise.
        /// This property can be used to determine if the related property
        /// was returned by a service response or if the related property
        /// should be sent to the service during a service call.
        /// </summary>
        /// <returns>
        /// True if the related property was set or will be sent to a service; false otherwise.
        /// </returns>
		[Obsolete(""Setting "        );

            #line 320 "C:\Dev\Repos\AWSDotNetPublic\generator\ServiceClientGeneratorLib\Generators\SourceFiles\StructureGenerator.tt"
                                this.Write(this.ToStringHelper.ToStringWithCulture(member.BackwardCompatibilityPropertyName));

            #line default
            #line hidden
                                this.Write(" results in non-UTC DateTimes not being marshalled correctly. Use ");

            #line 320 "C:\Dev\Repos\AWSDotNetPublic\generator\ServiceClientGeneratorLib\Generators\SourceFiles\StructureGenerator.tt"
                                this.Write(this.ToStringHelper.ToStringWithCulture(member.PropertyName));

            #line default
            #line hidden
                                this.Write(" instead.\", false)]\r\n\t\tpublic bool Is");

            #line 321 "C:\Dev\Repos\AWSDotNetPublic\generator\ServiceClientGeneratorLib\Generators\SourceFiles\StructureGenerator.tt"
                                this.Write(this.ToStringHelper.ToStringWithCulture(member.BackwardCompatibilityPropertyName));

            #line default
            #line hidden
                                this.Write("Set\r\n        {\r\n            get\r\n            {\r\n                return this.Is");

            #line 325 "C:\Dev\Repos\AWSDotNetPublic\generator\ServiceClientGeneratorLib\Generators\SourceFiles\StructureGenerator.tt"
                                this.Write(this.ToStringHelper.ToStringWithCulture(member.PropertyName));

            #line default
            #line hidden
                                this.Write("Set;\r\n            }\r\n            set\r\n            {\r\n                this.Is");

            #line 329 "C:\Dev\Repos\AWSDotNetPublic\generator\ServiceClientGeneratorLib\Generators\SourceFiles\StructureGenerator.tt"
                                this.Write(this.ToStringHelper.ToStringWithCulture(member.PropertyName));

            #line default
            #line hidden
                                this.Write("Set = value;;\r\n            }\r\n        }\r\n");

            #line 332 "C:\Dev\Repos\AWSDotNetPublic\generator\ServiceClientGeneratorLib\Generators\SourceFiles\StructureGenerator.tt"
                            }
                        }



            #line default
            #line hidden
                        this.Write("#endregion\r\n");

            #line 338 "C:\Dev\Repos\AWSDotNetPublic\generator\ServiceClientGeneratorLib\Generators\SourceFiles\StructureGenerator.tt"
                    }
                }
            }
            else //TODO: remove this else clause. It was added just to preserve whitespaces
            {
            #line default
            #line hidden
                this.Write("\r\n");

            #line 347 "C:\Dev\Repos\AWSDotNetPublic\generator\ServiceClientGeneratorLib\Generators\SourceFiles\StructureGenerator.tt"
            }
            if (this.StructureType == StructureType.Response && hasStreamingMember)
            {
            #line default
            #line hidden
                this.Write(@"        #region Dispose Pattern

        private bool _disposed;

        /// <summary>
        /// Disposes of all managed and unmanaged resources.
        /// </summary>
        public void Dispose()
        {
            Dispose(true);
            GC.SuppressFinalize(this);
        }

        private void Dispose(bool disposing)
        {
            if (_disposed)
                return;

            if (disposing)
            {
");

            #line 372 "C:\Dev\Repos\AWSDotNetPublic\generator\ServiceClientGeneratorLib\Generators\SourceFiles\StructureGenerator.tt"

                if (this.Structure != null)
                {
                    foreach (var member in this.Structure.Members)
                    {
                        if (member.IsStreaming)
                        {
            #line default
            #line hidden
                            this.Write("                this.");

            #line 380 "C:\Dev\Repos\AWSDotNetPublic\generator\ServiceClientGeneratorLib\Generators\SourceFiles\StructureGenerator.tt"
                            this.Write(this.ToStringHelper.ToStringWithCulture(member.VariableName));

            #line default
            #line hidden
                            this.Write("?.Dispose();\r\n                this.");

            #line 381 "C:\Dev\Repos\AWSDotNetPublic\generator\ServiceClientGeneratorLib\Generators\SourceFiles\StructureGenerator.tt"
                            this.Write(this.ToStringHelper.ToStringWithCulture(member.VariableName));

            #line default
            #line hidden
                            this.Write(" = null;\r\n");

            #line 382 "C:\Dev\Repos\AWSDotNetPublic\generator\ServiceClientGeneratorLib\Generators\SourceFiles\StructureGenerator.tt"
                        }
                    }
                }


            #line default
            #line hidden
                this.Write("            }\r\n\r\n            this._disposed = true;\r\n         }\r\n\r\n         #endr" +
                           "egion\r\n");

            #line 393 "C:\Dev\Repos\AWSDotNetPublic\generator\ServiceClientGeneratorLib\Generators\SourceFiles\StructureGenerator.tt"
            }


            #line default
            #line hidden
            this.Write("    }\r\n}\r\n\r\n\r\n");
            return(this.GenerationEnvironment.ToString());
        }
예제 #7
0
        /// <summary>
        /// Create the template output
        /// </summary>
        public override string TransformText()
        {
            #line 6 "C:\codebase\v3\AWSDotNetPublic\generator\ServiceClientGeneratorLib\Generators\SourceFiles\StructureGenerator.tt"

            AddLicenseHeader();


            #line default
            #line hidden
            this.Write("using System;\r\nusing System.Collections.Generic;\r\nusing System.Xml.Serialization;" +
                       "\r\nusing System.Text;\r\nusing System.IO;\r\n\r\nusing Amazon.Runtime;\r\nusing Amazon.Ru" +
                       "ntime.Internal;\r\n\r\nnamespace ");

            #line 18 "C:\codebase\v3\AWSDotNetPublic\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 20 "C:\codebase\v3\AWSDotNetPublic\generator\ServiceClientGeneratorLib\Generators\SourceFiles\StructureGenerator.tt"

            if (this.StructureType == StructureType.Request)
            {
                this.FormatOperationRequestDocumentation(this.Operation);
            }
            else if (this.Operation != null && GeneratorHelpers.HasSuppressedResult(this.Operation))
            {
                this.FormatVoidResultDocumentation(this.Operation.Name);
            }
            else if (this.StructureType == StructureType.Response && (this.Structure == null || string.IsNullOrEmpty(this.Structure.Documentation)))
            {
            #line default
            #line hidden
                this.Write("\t/// <summary>\r\n\t/// This is the response object from the ");

            #line 29 "C:\codebase\v3\AWSDotNetPublic\generator\ServiceClientGeneratorLib\Generators\SourceFiles\StructureGenerator.tt"
                this.Write(this.ToStringHelper.ToStringWithCulture(this.Operation.Name));

            #line default
            #line hidden
                this.Write(" operation.\r\n\t/// </summary>\r\n");

            #line 31 "C:\codebase\v3\AWSDotNetPublic\generator\ServiceClientGeneratorLib\Generators\SourceFiles\StructureGenerator.tt"
            }
            else
            {
                this.FormatClassDocumentation(this.Structure);
            }


            #line default
            #line hidden
            this.Write("\tpublic partial class ");

            #line 36 "C:\codebase\v3\AWSDotNetPublic\generator\ServiceClientGeneratorLib\Generators\SourceFiles\StructureGenerator.tt"
            this.Write(this.ToStringHelper.ToStringWithCulture(this.ClassName));

            #line default
            #line hidden

            #line 36 "C:\codebase\v3\AWSDotNetPublic\generator\ServiceClientGeneratorLib\Generators\SourceFiles\StructureGenerator.tt"
            this.Write(this.ToStringHelper.ToStringWithCulture(this.BaseClassString));

            #line default
            #line hidden
            this.Write("\r\n\t{\r\n");

            #line 38 "C:\codebase\v3\AWSDotNetPublic\generator\ServiceClientGeneratorLib\Generators\SourceFiles\StructureGenerator.tt"

            if (this.Structure != null)
            {
                if (this.IsWrapped)
                {
            #line default
            #line hidden
                    this.Write("        private ");

            #line 44 "C:\codebase\v3\AWSDotNetPublic\generator\ServiceClientGeneratorLib\Generators\SourceFiles\StructureGenerator.tt"
                    this.Write(this.ToStringHelper.ToStringWithCulture(this.Structure.Name));

            #line default
            #line hidden
                    this.Write(" _response;\r\n");

            #line 45 "C:\codebase\v3\AWSDotNetPublic\generator\ServiceClientGeneratorLib\Generators\SourceFiles\StructureGenerator.tt"
                }
                else
                {
                    foreach (var member in this.Structure.Members)
                    {
                        if (member.IsExcluded)
                        {
                            continue;
                        }


            #line default
            #line hidden
                        this.Write("        private ");

            #line 54 "C:\codebase\v3\AWSDotNetPublic\generator\ServiceClientGeneratorLib\Generators\SourceFiles\StructureGenerator.tt"
                        this.Write(this.ToStringHelper.ToStringWithCulture(member.DetermineType()));

            #line default
            #line hidden

            #line 54 "C:\codebase\v3\AWSDotNetPublic\generator\ServiceClientGeneratorLib\Generators\SourceFiles\StructureGenerator.tt"
                        this.Write(this.ToStringHelper.ToStringWithCulture(member.IsNullable ? "?" : ""));

            #line default
            #line hidden
                        this.Write(" ");

            #line 54 "C:\codebase\v3\AWSDotNetPublic\generator\ServiceClientGeneratorLib\Generators\SourceFiles\StructureGenerator.tt"
                        this.Write(this.ToStringHelper.ToStringWithCulture(member.VariableName));

            #line default
            #line hidden

            #line 54 "C:\codebase\v3\AWSDotNetPublic\generator\ServiceClientGeneratorLib\Generators\SourceFiles\StructureGenerator.tt"
                        this.Write(this.ToStringHelper.ToStringWithCulture(member.ShouldInstantiate ? string.Format(" = new {0}();", member.DetermineType()) : ";"));

            #line default
            #line hidden
                        this.Write("\r\n");

            #line 55 "C:\codebase\v3\AWSDotNetPublic\generator\ServiceClientGeneratorLib\Generators\SourceFiles\StructureGenerator.tt"
                    }
                }
            }


            #line default
            #line hidden
            this.Write("\r\n");

            #line 61 "C:\codebase\v3\AWSDotNetPublic\generator\ServiceClientGeneratorLib\Generators\SourceFiles\StructureGenerator.tt"

            if (this.Structure != null)
            {
                if (this.IsWrapped)
                {
            #line default
            #line hidden
                    this.Write("        /// <summary>\r\n        /// Gets and sets the ");

            #line 68 "C:\codebase\v3\AWSDotNetPublic\generator\ServiceClientGeneratorLib\Generators\SourceFiles\StructureGenerator.tt"
                    this.Write(this.ToStringHelper.ToStringWithCulture(this.Structure.Name));

            #line default
            #line hidden
                    this.Write(" property.\r\n        /// </summary>\r\n        public ");

            #line 70 "C:\codebase\v3\AWSDotNetPublic\generator\ServiceClientGeneratorLib\Generators\SourceFiles\StructureGenerator.tt"
                    this.Write(this.ToStringHelper.ToStringWithCulture(this.Structure.Name));

            #line default
            #line hidden
                    this.Write(" ");

            #line 70 "C:\codebase\v3\AWSDotNetPublic\generator\ServiceClientGeneratorLib\Generators\SourceFiles\StructureGenerator.tt"
                    this.Write(this.ToStringHelper.ToStringWithCulture(this.Structure.Name));

            #line default
            #line hidden
                    this.Write("\r\n        {\r\n            get { return this._response; }\r\n            set { this._" +
                               "response = value; }\r\n        }\r\n");

            #line 75 "C:\codebase\v3\AWSDotNetPublic\generator\ServiceClientGeneratorLib\Generators\SourceFiles\StructureGenerator.tt"
                }
                else
                {
                    AddSimpleRequestConstructors(this.ClassName, this.Structure, this.Config.Namespace);
                    foreach (var member in this.Structure.Members)
                    {
                        if (member.IsExcluded)
                        {
                            continue;
                        }


            #line default
            #line hidden

            #line 85 "C:\codebase\v3\AWSDotNetPublic\generator\ServiceClientGeneratorLib\Generators\SourceFiles\StructureGenerator.tt"
                        this.FormatPropertyDocumentation(member);

            #line default
            #line hidden
                        this.Write("        ");

            #line 86 "C:\codebase\v3\AWSDotNetPublic\generator\ServiceClientGeneratorLib\Generators\SourceFiles\StructureGenerator.tt"
                        this.Write(this.ToStringHelper.ToStringWithCulture(member.AccessModifier));

            #line default
            #line hidden
                        this.Write(" ");

            #line 86 "C:\codebase\v3\AWSDotNetPublic\generator\ServiceClientGeneratorLib\Generators\SourceFiles\StructureGenerator.tt"
                        this.Write(this.ToStringHelper.ToStringWithCulture(member.DetermineType()));

            #line default
            #line hidden

            #line 86 "C:\codebase\v3\AWSDotNetPublic\generator\ServiceClientGeneratorLib\Generators\SourceFiles\StructureGenerator.tt"
                        this.Write(this.ToStringHelper.ToStringWithCulture(member.UseNullable ? "?" : ""));

            #line default
            #line hidden
                        this.Write(" ");

            #line 86 "C:\codebase\v3\AWSDotNetPublic\generator\ServiceClientGeneratorLib\Generators\SourceFiles\StructureGenerator.tt"
                        this.Write(this.ToStringHelper.ToStringWithCulture(member.PropertyName));

            #line default
            #line hidden
                        this.Write("\r\n        {\r\n");

            #line 88 "C:\codebase\v3\AWSDotNetPublic\generator\ServiceClientGeneratorLib\Generators\SourceFiles\StructureGenerator.tt"

                        if (member.IsNullable && !member.UseNullable)
                        {
            #line default
            #line hidden
                            this.Write("            get { return this.");

            #line 92 "C:\codebase\v3\AWSDotNetPublic\generator\ServiceClientGeneratorLib\Generators\SourceFiles\StructureGenerator.tt"
                            this.Write(this.ToStringHelper.ToStringWithCulture(member.VariableName));

            #line default
            #line hidden
                            this.Write(".GetValueOrDefault(); }\r\n");

            #line 93 "C:\codebase\v3\AWSDotNetPublic\generator\ServiceClientGeneratorLib\Generators\SourceFiles\StructureGenerator.tt"
                        }
                        else
                        {
            #line default
            #line hidden
                            this.Write("            get { return this.");

            #line 98 "C:\codebase\v3\AWSDotNetPublic\generator\ServiceClientGeneratorLib\Generators\SourceFiles\StructureGenerator.tt"
                            this.Write(this.ToStringHelper.ToStringWithCulture(member.VariableName));

            #line default
            #line hidden
                            this.Write("; }\r\n");

            #line 99 "C:\codebase\v3\AWSDotNetPublic\generator\ServiceClientGeneratorLib\Generators\SourceFiles\StructureGenerator.tt"
                        }


            #line default
            #line hidden
                        this.Write("            set { this.");

            #line 102 "C:\codebase\v3\AWSDotNetPublic\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 105 "C:\codebase\v3\AWSDotNetPublic\generator\ServiceClientGeneratorLib\Generators\SourceFiles\StructureGenerator.tt"

                        if (member.EmitIsSetProperties)
                        {
            #line default
            #line hidden
                            this.Write("        /// <summary>\r\n        /// This property is set to true if the property <" +
                                       "seealso cref=\"");

            #line 110 "C:\codebase\v3\AWSDotNetPublic\generator\ServiceClientGeneratorLib\Generators\SourceFiles\StructureGenerator.tt"
                            this.Write(this.ToStringHelper.ToStringWithCulture(member.PropertyName));

            #line default
            #line hidden
                            this.Write(@"""/>
        /// is set; false otherwise.
        /// This property can be used to determine if the related property
        /// was returned by a service response or if the related property
        /// should be sent to the service during a service call.
        /// </summary>
        /// <returns>
        /// True if the related property was set or will be sent to a service; false otherwise.
        /// </returns>
        public bool Is");

            #line 119 "C:\codebase\v3\AWSDotNetPublic\generator\ServiceClientGeneratorLib\Generators\SourceFiles\StructureGenerator.tt"
                            this.Write(this.ToStringHelper.ToStringWithCulture(member.PropertyName));

            #line default
            #line hidden
                            this.Write("Set\r\n        {\r\n            get\r\n            {\r\n                return Amazon.Uti" +
                                       "l.Internal.InternalSDKUtils.GetIsSet(this.");

            #line 123 "C:\codebase\v3\AWSDotNetPublic\generator\ServiceClientGeneratorLib\Generators\SourceFiles\StructureGenerator.tt"
                            this.Write(this.ToStringHelper.ToStringWithCulture(member.VariableName));

            #line default
            #line hidden
                            this.Write(");\r\n            }\r\n            set\r\n            {\r\n                Amazon.Util.In" +
                                       "ternal.InternalSDKUtils.SetIsSet(value, ref this.");

            #line 127 "C:\codebase\v3\AWSDotNetPublic\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 131 "C:\codebase\v3\AWSDotNetPublic\generator\ServiceClientGeneratorLib\Generators\SourceFiles\StructureGenerator.tt"
                        }


            #line default
            #line hidden
                        this.Write("        // Check to see if ");

            #line 134 "C:\codebase\v3\AWSDotNetPublic\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 135 "C:\codebase\v3\AWSDotNetPublic\generator\ServiceClientGeneratorLib\Generators\SourceFiles\StructureGenerator.tt"
                        this.Write(this.ToStringHelper.ToStringWithCulture(member.PropertyName));

            #line default
            #line hidden
                        this.Write("()\r\n        {\r\n");

            #line 137 "C:\codebase\v3\AWSDotNetPublic\generator\ServiceClientGeneratorLib\Generators\SourceFiles\StructureGenerator.tt"

                        if (member.EmitIsSetProperties)
                        {
            #line default
            #line hidden
                            this.Write("            return this.Is");

            #line 141 "C:\codebase\v3\AWSDotNetPublic\generator\ServiceClientGeneratorLib\Generators\SourceFiles\StructureGenerator.tt"
                            this.Write(this.ToStringHelper.ToStringWithCulture(member.PropertyName));

            #line default
            #line hidden
                            this.Write("Set; \r\n");

            #line 142 "C:\codebase\v3\AWSDotNetPublic\generator\ServiceClientGeneratorLib\Generators\SourceFiles\StructureGenerator.tt"
                        }
                        else if (member.IsNullable)
                        {
            #line default
            #line hidden
                            this.Write("            return this.");

            #line 147 "C:\codebase\v3\AWSDotNetPublic\generator\ServiceClientGeneratorLib\Generators\SourceFiles\StructureGenerator.tt"
                            this.Write(this.ToStringHelper.ToStringWithCulture(member.VariableName));

            #line default
            #line hidden
                            this.Write(".HasValue; \r\n");

            #line 148 "C:\codebase\v3\AWSDotNetPublic\generator\ServiceClientGeneratorLib\Generators\SourceFiles\StructureGenerator.tt"
                        }
                        else if (member.IsMap || member.IsList)
                        {
            #line default
            #line hidden
                            this.Write("            return this.");

            #line 153 "C:\codebase\v3\AWSDotNetPublic\generator\ServiceClientGeneratorLib\Generators\SourceFiles\StructureGenerator.tt"
                            this.Write(this.ToStringHelper.ToStringWithCulture(member.VariableName));

            #line default
            #line hidden
                            this.Write(" != null && this.");

            #line 153 "C:\codebase\v3\AWSDotNetPublic\generator\ServiceClientGeneratorLib\Generators\SourceFiles\StructureGenerator.tt"
                            this.Write(this.ToStringHelper.ToStringWithCulture(member.VariableName));

            #line default
            #line hidden
                            this.Write(".Count > 0; \r\n");

            #line 154 "C:\codebase\v3\AWSDotNetPublic\generator\ServiceClientGeneratorLib\Generators\SourceFiles\StructureGenerator.tt"
                        }
                        else
                        {
            #line default
            #line hidden
                            this.Write("            return this.");

            #line 159 "C:\codebase\v3\AWSDotNetPublic\generator\ServiceClientGeneratorLib\Generators\SourceFiles\StructureGenerator.tt"
                            this.Write(this.ToStringHelper.ToStringWithCulture(member.VariableName));

            #line default
            #line hidden
                            this.Write(" != null;\r\n");

            #line 160 "C:\codebase\v3\AWSDotNetPublic\generator\ServiceClientGeneratorLib\Generators\SourceFiles\StructureGenerator.tt"
                        }


            #line default
            #line hidden
                        this.Write("        }\r\n\r\n");

            #line 165 "C:\codebase\v3\AWSDotNetPublic\generator\ServiceClientGeneratorLib\Generators\SourceFiles\StructureGenerator.tt"
                    }
                }
            }


            #line default
            #line hidden
            this.Write("    }\r\n}\r\n\r\n\r\n");
            return(this.GenerationEnvironment.ToString());
        }
예제 #8
0
        /// <summary>
        /// Create the template output
        /// </summary>
        public override string TransformText()
        {
            #line 6 "C:\Dev\Repos\AWSDotNetPublic\generator\ServiceClientGeneratorLib\Generators\Marshallers\AWSQueryResponseUnmarshaller.tt"

            AddLicenseHeader();

            AddCommonUsingStatements();


            #line default
            #line hidden
            this.Write("namespace ");

            #line 11 "C:\Dev\Repos\AWSDotNetPublic\generator\ServiceClientGeneratorLib\Generators\Marshallers\AWSQueryResponseUnmarshaller.tt"
            this.Write(this.ToStringHelper.ToStringWithCulture(this.Config.Namespace));

            #line default
            #line hidden
            this.Write(".Model.Internal.MarshallTransformations\r\n{\r\n    /// <summary>\r\n    /// Response Unmarshaller for ");

            #line 14 "C:\Dev\Repos\AWSDotNetPublic\generator\ServiceClientGeneratorLib\Generators\Marshallers\AWSQueryResponseUnmarshaller.tt"
            this.Write(this.ToStringHelper.ToStringWithCulture(this.UnmarshallerBaseName));

            #line default
            #line hidden
            this.Write(" operation\r\n    /// </summary>  \r\n    public class ");

            #line 16 "C:\Dev\Repos\AWSDotNetPublic\generator\ServiceClientGeneratorLib\Generators\Marshallers\AWSQueryResponseUnmarshaller.tt"
            this.Write(this.ToStringHelper.ToStringWithCulture(this.UnmarshallerBaseName));

            #line default
            #line hidden
            this.Write("ResponseUnmarshaller : XmlResponseUnmarshaller\r\n    {\r\n        /// <summary>\r\n        /// Unmarshaller the response from the service to the response class.\r\n        /// </summary>  \r\n        /// <param name=\"context\"></param>\r\n        /// <returns></returns>\r\n        public override AmazonWebServiceResponse Unmarshall(XmlUnmarshallerContext context)\r\n        {\r\n            ");

            #line 25 "C:\Dev\Repos\AWSDotNetPublic\generator\ServiceClientGeneratorLib\Generators\Marshallers\AWSQueryResponseUnmarshaller.tt"
            this.Write(this.ToStringHelper.ToStringWithCulture(this.UnmarshallerBaseName));

            #line default
            #line hidden
            this.Write("Response response = new ");

            #line 25 "C:\Dev\Repos\AWSDotNetPublic\generator\ServiceClientGeneratorLib\Generators\Marshallers\AWSQueryResponseUnmarshaller.tt"
            this.Write(this.ToStringHelper.ToStringWithCulture(this.Operation.Name));

            #line default
            #line hidden
            this.Write("Response();\r\n\r\n            context.Read();\r\n            int targetDepth = context.CurrentDepth;\r\n            while (context.ReadAtDepth(targetDepth))\r\n            {\r\n                if (context.IsStartElement)\r\n                {                    \r\n                    if(context.TestExpression(\"");

            #line 33 "C:\Dev\Repos\AWSDotNetPublic\generator\ServiceClientGeneratorLib\Generators\Marshallers\AWSQueryResponseUnmarshaller.tt"
            this.Write(this.ToStringHelper.ToStringWithCulture(this.UnmarshallerBaseName));

            #line default
            #line hidden
            this.Write("Result\", 2))\r\n                    {\r\n                        UnmarshallResult(context, response);                        \r\n                        continue;\r\n                    }\r\n                    \r\n                    if (context.TestExpression(\"ResponseMetadata\", 2))\r\n                    {\r\n                        response.ResponseMetadata = ResponseMetadataUnmarshaller.Instance.Unmarshall(context);\r\n                    }\r\n                }\r\n            }\r\n\r\n            return response;\r\n        }\r\n\r\n");
            #line 49 "C:\Dev\Repos\AWSDotNetPublic\generator\ServiceClientGeneratorLib\Generators\Marshallers\AWSQueryResponseUnmarshaller.tt"

            if (this.Structure == null || this.Structure.Members.Count == 0)
            {
            #line default
            #line hidden
                this.Write("\t\t[System.Diagnostics.CodeAnalysis.SuppressMessage(\"Microsoft.Usage\", \"CA1801:ReviewUnusedParameters\", MessageId=\"response\")]\r\n");
            #line 54 "C:\Dev\Repos\AWSDotNetPublic\generator\ServiceClientGeneratorLib\Generators\Marshallers\AWSQueryResponseUnmarshaller.tt"
            }


            #line default
            #line hidden
            this.Write("        private static void UnmarshallResult(XmlUnmarshallerContext context, ");

            #line 57 "C:\Dev\Repos\AWSDotNetPublic\generator\ServiceClientGeneratorLib\Generators\Marshallers\AWSQueryResponseUnmarshaller.tt"
            this.Write(this.ToStringHelper.ToStringWithCulture(this.UnmarshallerBaseName));

            #line default
            #line hidden
            this.Write("Response response)\r\n        {\r\n            \r\n            int originalDepth = context.CurrentDepth;\r\n            int targetDepth = originalDepth + 1;\r\n            \r\n            if (context.IsStartOfDocument) \r\n               targetDepth += 2;\r\n            \r\n            while (context.ReadAtDepth(originalDepth))\r\n            {\r\n                if (context.IsStartElement || context.IsAttribute)\r\n                {\r\n\r\n");
            #line 71 "C:\Dev\Repos\AWSDotNetPublic\generator\ServiceClientGeneratorLib\Generators\Marshallers\AWSQueryResponseUnmarshaller.tt"

            if (this.Structure != null)
            {
                if (this.IsWrapped)
                {
            #line default
            #line hidden
                    this.Write("                    if ( context.TestExpression(\"");

            #line 77 "C:\Dev\Repos\AWSDotNetPublic\generator\ServiceClientGeneratorLib\Generators\Marshallers\AWSQueryResponseUnmarshaller.tt"
                    this.Write(this.ToStringHelper.ToStringWithCulture(this.Structure.MarshallName));

            #line default
            #line hidden
                    this.Write("\", targetDepth))\r\n                    {\r\n                        response.");

            #line 79 "C:\Dev\Repos\AWSDotNetPublic\generator\ServiceClientGeneratorLib\Generators\Marshallers\AWSQueryResponseUnmarshaller.tt"
                    this.Write(this.ToStringHelper.ToStringWithCulture(MemberAccessorFor(this.Structure.Name)));

            #line default
            #line hidden
                    this.Write(" = ");

            #line 79 "C:\Dev\Repos\AWSDotNetPublic\generator\ServiceClientGeneratorLib\Generators\Marshallers\AWSQueryResponseUnmarshaller.tt"
                    this.Write(this.ToStringHelper.ToStringWithCulture(this.Structure.Name));

            #line default
            #line hidden
                    this.Write("Unmarshaller.Instance.Unmarshall(context);\r\n                        continue;\r\n                    }\r\n");
            #line 82 "C:\Dev\Repos\AWSDotNetPublic\generator\ServiceClientGeneratorLib\Generators\Marshallers\AWSQueryResponseUnmarshaller.tt"
                }
                else
                {
                    foreach (var member in this.Structure.Members)
                    {
                        var testExpression = GeneratorHelpers.DetermineAWSQueryTestExpression(member);


            #line default
            #line hidden
                        this.Write("                    if (context.TestExpression(\"");

            #line 90 "C:\Dev\Repos\AWSDotNetPublic\generator\ServiceClientGeneratorLib\Generators\Marshallers\AWSQueryResponseUnmarshaller.tt"
                        this.Write(this.ToStringHelper.ToStringWithCulture(testExpression));

            #line default
            #line hidden
                        this.Write("\", targetDepth))\r\n                    {\r\n                        var unmarshaller = ");

            #line 92 "C:\Dev\Repos\AWSDotNetPublic\generator\ServiceClientGeneratorLib\Generators\Marshallers\AWSQueryResponseUnmarshaller.tt"
                        this.Write(this.ToStringHelper.ToStringWithCulture(member.DetermineTypeUnmarshallerInstantiate()));

            #line default
            #line hidden
                        this.Write(";\r\n");
            #line 93 "C:\Dev\Repos\AWSDotNetPublic\generator\ServiceClientGeneratorLib\Generators\Marshallers\AWSQueryResponseUnmarshaller.tt"

                        if (member.IsMap || member.IsList)
                        {
            #line default
            #line hidden
                            this.Write("                        var item = unmarshaller.Unmarshall(context);\r\n                        response.");

            #line 98 "C:\Dev\Repos\AWSDotNetPublic\generator\ServiceClientGeneratorLib\Generators\Marshallers\AWSQueryResponseUnmarshaller.tt"
                            this.Write(this.ToStringHelper.ToStringWithCulture(MemberAccessorFor(member.PropertyName)));

            #line default
            #line hidden
                            this.Write(".Add(item);\r\n");
            #line 99 "C:\Dev\Repos\AWSDotNetPublic\generator\ServiceClientGeneratorLib\Generators\Marshallers\AWSQueryResponseUnmarshaller.tt"
                        }
                        else
                        {
            #line default
            #line hidden
                            this.Write("                        response.");

            #line 104 "C:\Dev\Repos\AWSDotNetPublic\generator\ServiceClientGeneratorLib\Generators\Marshallers\AWSQueryResponseUnmarshaller.tt"
                            this.Write(this.ToStringHelper.ToStringWithCulture(MemberAccessorFor(member.PropertyName)));

            #line default
            #line hidden
                            this.Write(" = unmarshaller.Unmarshall(context);\r\n");
            #line 105 "C:\Dev\Repos\AWSDotNetPublic\generator\ServiceClientGeneratorLib\Generators\Marshallers\AWSQueryResponseUnmarshaller.tt"
                        }


            #line default
            #line hidden
                        this.Write("                        continue;\r\n                    }\r\n");
            #line 110 "C:\Dev\Repos\AWSDotNetPublic\generator\ServiceClientGeneratorLib\Generators\Marshallers\AWSQueryResponseUnmarshaller.tt"
                    }
                }
            }


            #line default
            #line hidden
            this.Write("                } \r\n           }\r\n\r\n            return;\r\n        }\r\n\r\n\r\n        /// <summary>\r\n        /// Unmarshaller error response to exception.\r\n        /// </summary>  \r\n        /// <param name=\"context\"></param>\r\n        /// <param name=\"innerException\"></param>\r\n        /// <param name=\"statusCode\"></param>\r\n        /// <returns></returns>\r\n        public override AmazonServiceException UnmarshallException(XmlUnmarshallerContext context, Exception innerException, HttpStatusCode statusCode)\r\n        {\r\n            ErrorResponse errorResponse = ErrorResponseUnmarshaller.GetInstance().Unmarshall(context);\r\n            errorResponse.InnerException = innerException;\r\n            errorResponse.StatusCode = statusCode;\r\n\r\n            var responseBodyBytes = context.GetResponseBodyBytes();\r\n\r\n            using (var streamCopy = new MemoryStream(responseBodyBytes))\r\n            using (var contextCopy = new XmlUnmarshallerContext(streamCopy, false, null))\r\n            {\r\n");
            #line 140 "C:\Dev\Repos\AWSDotNetPublic\generator\ServiceClientGeneratorLib\Generators\Marshallers\AWSQueryResponseUnmarshaller.tt"

            foreach (var exception in this.Operation.Exceptions)
            {
            #line default
            #line hidden
                this.Write("                if (errorResponse.Code != null && errorResponse.Code.Equals(\"");

            #line 144 "C:\Dev\Repos\AWSDotNetPublic\generator\ServiceClientGeneratorLib\Generators\Marshallers\AWSQueryResponseUnmarshaller.tt"
                this.Write(this.ToStringHelper.ToStringWithCulture(exception.Code));

            #line default
            #line hidden
                this.Write("\"))\r\n                {\r\n                    return ");

            #line 146 "C:\Dev\Repos\AWSDotNetPublic\generator\ServiceClientGeneratorLib\Generators\Marshallers\AWSQueryResponseUnmarshaller.tt"
                this.Write(this.ToStringHelper.ToStringWithCulture(exception.Name));

            #line default
            #line hidden
                this.Write("Unmarshaller.Instance.Unmarshall(contextCopy, errorResponse);\r\n                }\r\n");
            #line 148 "C:\Dev\Repos\AWSDotNetPublic\generator\ServiceClientGeneratorLib\Generators\Marshallers\AWSQueryResponseUnmarshaller.tt"
            }


            #line default
            #line hidden
            this.Write("            }\r\n            return new ");

            #line 152 "C:\Dev\Repos\AWSDotNetPublic\generator\ServiceClientGeneratorLib\Generators\Marshallers\AWSQueryResponseUnmarshaller.tt"
            this.Write(this.ToStringHelper.ToStringWithCulture(this.BaseException));

            #line default
            #line hidden
            this.Write("(errorResponse.Message, innerException, errorResponse.Type, errorResponse.Code, errorResponse.RequestId, statusCode);\r\n        }\r\n");
            #line 154 "C:\Dev\Repos\AWSDotNetPublic\generator\ServiceClientGeneratorLib\Generators\Marshallers\AWSQueryResponseUnmarshaller.tt"

            this.AddResponseSingletonMethod();


            #line default
            #line hidden
            this.Write("    }\r\n}\r\n");
            return(this.GenerationEnvironment.ToString());
        }
예제 #9
0
        /// <summary>
        /// Create the template output
        /// </summary>
        public override string TransformText()
        {
            #line 6 "C:\codebase\v3\AWSDotNetPublic\generator\ServiceClientGeneratorLib\Generators\SourceFiles\StructureGenerator.tt"

            AddLicenseHeader();


            #line default
            #line hidden
            this.Write("using System;\r\nusing System.Collections.Generic;\r\nusing System.Xml.Serialization;" +
                       "\r\nusing System.Text;\r\nusing System.IO;\r\n\r\nusing Amazon.Runtime;\r\nusing Amazon.Ru" +
                       "ntime.Internal;\r\n");

            #line 17 "C:\codebase\v3\AWSDotNetPublic\generator\ServiceClientGeneratorLib\Generators\SourceFiles\StructureGenerator.tt"

            if (this.StructureType == StructureType.Request && this.Operation.AuthType.HasValue)
            {
            #line default
            #line hidden
                this.Write("using Amazon.Runtime.Internal.Auth;\r\n");

            #line 22 "C:\codebase\v3\AWSDotNetPublic\generator\ServiceClientGeneratorLib\Generators\SourceFiles\StructureGenerator.tt"
            }


            #line default
            #line hidden
            this.Write("\r\nnamespace ");

            #line 26 "C:\codebase\v3\AWSDotNetPublic\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 28 "C:\codebase\v3\AWSDotNetPublic\generator\ServiceClientGeneratorLib\Generators\SourceFiles\StructureGenerator.tt"

            if (this.StructureType == StructureType.Request)
            {
                this.FormatOperationRequestDocumentation(this.Operation);
            }
            else if (this.Operation != null && GeneratorHelpers.HasSuppressedResult(this.Operation))
            {
                this.FormatVoidResultDocumentation(this.Operation.Name);
            }
            else if (this.StructureType == StructureType.Response && (this.Structure == null || string.IsNullOrEmpty(this.Structure.Documentation)))
            {
            #line default
            #line hidden
                this.Write("\t/// <summary>\r\n\t/// This is the response object from the ");

            #line 37 "C:\codebase\v3\AWSDotNetPublic\generator\ServiceClientGeneratorLib\Generators\SourceFiles\StructureGenerator.tt"
                this.Write(this.ToStringHelper.ToStringWithCulture(this.Operation.Name));

            #line default
            #line hidden
                this.Write(" operation.\r\n\t/// </summary>\r\n");

            #line 39 "C:\codebase\v3\AWSDotNetPublic\generator\ServiceClientGeneratorLib\Generators\SourceFiles\StructureGenerator.tt"
            }
            else
            {
                this.FormatClassDocumentation(this.Structure);
            }


            #line default
            #line hidden

            #line 44 "C:\codebase\v3\AWSDotNetPublic\generator\ServiceClientGeneratorLib\Generators\SourceFiles\StructureGenerator.tt"

            if (this.Structure != null && this.Structure.IsDeprecated)
            {
            #line default
            #line hidden
                this.Write("    [Obsolete(\"");

            #line 48 "C:\codebase\v3\AWSDotNetPublic\generator\ServiceClientGeneratorLib\Generators\SourceFiles\StructureGenerator.tt"
                this.Write(this.ToStringHelper.ToStringWithCulture(this.Structure.DeprecationMessage));

            #line default
            #line hidden
                this.Write("\")]\r\n");

            #line 49 "C:\codebase\v3\AWSDotNetPublic\generator\ServiceClientGeneratorLib\Generators\SourceFiles\StructureGenerator.tt"
            }


            #line default
            #line hidden
            this.Write("\tpublic partial class ");

            #line 52 "C:\codebase\v3\AWSDotNetPublic\generator\ServiceClientGeneratorLib\Generators\SourceFiles\StructureGenerator.tt"
            this.Write(this.ToStringHelper.ToStringWithCulture(this.ClassName));

            #line default
            #line hidden

            #line 52 "C:\codebase\v3\AWSDotNetPublic\generator\ServiceClientGeneratorLib\Generators\SourceFiles\StructureGenerator.tt"
            this.Write(this.ToStringHelper.ToStringWithCulture(this.BaseClassString));

            #line default
            #line hidden
            this.Write("\r\n\t{\r\n");

            #line 54 "C:\codebase\v3\AWSDotNetPublic\generator\ServiceClientGeneratorLib\Generators\SourceFiles\StructureGenerator.tt"

            if (this.Structure != null)
            {
                if (this.IsWrapped)
                {
            #line default
            #line hidden
                    this.Write("        private ");

            #line 60 "C:\codebase\v3\AWSDotNetPublic\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        /// <summary>\r\n        /// Gets and sets the ");

            #line 63 "C:\codebase\v3\AWSDotNetPublic\generator\ServiceClientGeneratorLib\Generators\SourceFiles\StructureGenerator.tt"
                    this.Write(this.ToStringHelper.ToStringWithCulture(this.Structure.Name));

            #line default
            #line hidden
                    this.Write(" property.\r\n        /// </summary>\r\n        public ");

            #line 65 "C:\codebase\v3\AWSDotNetPublic\generator\ServiceClientGeneratorLib\Generators\SourceFiles\StructureGenerator.tt"
                    this.Write(this.ToStringHelper.ToStringWithCulture(this.Structure.Name));

            #line default
            #line hidden
                    this.Write(" ");

            #line 65 "C:\codebase\v3\AWSDotNetPublic\generator\ServiceClientGeneratorLib\Generators\SourceFiles\StructureGenerator.tt"
                    this.Write(this.ToStringHelper.ToStringWithCulture(this.Structure.Name));

            #line default
            #line hidden
                    this.Write("\r\n        {\r\n            get { return this._response; }\r\n            set { this._" +
                               "response = value; }\r\n        }\r\n");

            #line 70 "C:\codebase\v3\AWSDotNetPublic\generator\ServiceClientGeneratorLib\Generators\SourceFiles\StructureGenerator.tt"
                }
                else
                {
                    foreach (var member in this.Structure.Members)
                    {
                        if (member.IsExcluded)
                        {
                            continue;
                        }


            #line default
            #line hidden
                        this.Write("        private ");

            #line 79 "C:\codebase\v3\AWSDotNetPublic\generator\ServiceClientGeneratorLib\Generators\SourceFiles\StructureGenerator.tt"
                        this.Write(this.ToStringHelper.ToStringWithCulture(member.DetermineType()));

            #line default
            #line hidden

            #line 79 "C:\codebase\v3\AWSDotNetPublic\generator\ServiceClientGeneratorLib\Generators\SourceFiles\StructureGenerator.tt"
                        this.Write(this.ToStringHelper.ToStringWithCulture(member.IsNullable ? "?" : ""));

            #line default
            #line hidden
                        this.Write(" ");

            #line 79 "C:\codebase\v3\AWSDotNetPublic\generator\ServiceClientGeneratorLib\Generators\SourceFiles\StructureGenerator.tt"
                        this.Write(this.ToStringHelper.ToStringWithCulture(member.VariableName));

            #line default
            #line hidden

            #line 79 "C:\codebase\v3\AWSDotNetPublic\generator\ServiceClientGeneratorLib\Generators\SourceFiles\StructureGenerator.tt"
                        this.Write(this.ToStringHelper.ToStringWithCulture(member.ShouldInstantiate ? string.Format(" = new {0}();", member.DetermineType()) : ";"));

            #line default
            #line hidden
                        this.Write("\r\n");

            #line 80 "C:\codebase\v3\AWSDotNetPublic\generator\ServiceClientGeneratorLib\Generators\SourceFiles\StructureGenerator.tt"
                    }


            #line default
            #line hidden
                    this.Write("\r\n");

            #line 84 "C:\codebase\v3\AWSDotNetPublic\generator\ServiceClientGeneratorLib\Generators\SourceFiles\StructureGenerator.tt"

                    AddSimpleRequestConstructors(this.ClassName, this.Structure, this.Config.Namespace);

                    foreach (var member in this.Structure.Members)
                    {
                        if (member.IsExcluded)
                        {
                            continue;
                        }


            #line default
            #line hidden

            #line 92 "C:\codebase\v3\AWSDotNetPublic\generator\ServiceClientGeneratorLib\Generators\SourceFiles\StructureGenerator.tt"
                        this.FormatPropertyDocumentation(member);

            #line default
            #line hidden

            #line 93 "C:\codebase\v3\AWSDotNetPublic\generator\ServiceClientGeneratorLib\Generators\SourceFiles\StructureGenerator.tt"

                        if (member.IsDeprecated)
                        {
            #line default
            #line hidden
                            this.Write("\t\t[Obsolete(\"");

            #line 97 "C:\codebase\v3\AWSDotNetPublic\generator\ServiceClientGeneratorLib\Generators\SourceFiles\StructureGenerator.tt"
                            this.Write(this.ToStringHelper.ToStringWithCulture(member.DeprecationMessage));

            #line default
            #line hidden
                            this.Write("\")]\r\n");

            #line 98 "C:\codebase\v3\AWSDotNetPublic\generator\ServiceClientGeneratorLib\Generators\SourceFiles\StructureGenerator.tt"
                        }


            #line default
            #line hidden
                        this.Write("        ");

            #line 101 "C:\codebase\v3\AWSDotNetPublic\generator\ServiceClientGeneratorLib\Generators\SourceFiles\StructureGenerator.tt"
                        this.Write(this.ToStringHelper.ToStringWithCulture(member.AccessModifier));

            #line default
            #line hidden
                        this.Write(" ");

            #line 101 "C:\codebase\v3\AWSDotNetPublic\generator\ServiceClientGeneratorLib\Generators\SourceFiles\StructureGenerator.tt"
                        this.Write(this.ToStringHelper.ToStringWithCulture(member.DetermineType()));

            #line default
            #line hidden

            #line 101 "C:\codebase\v3\AWSDotNetPublic\generator\ServiceClientGeneratorLib\Generators\SourceFiles\StructureGenerator.tt"
                        this.Write(this.ToStringHelper.ToStringWithCulture(member.UseNullable ? "?" : ""));

            #line default
            #line hidden
                        this.Write(" ");

            #line 101 "C:\codebase\v3\AWSDotNetPublic\generator\ServiceClientGeneratorLib\Generators\SourceFiles\StructureGenerator.tt"
                        this.Write(this.ToStringHelper.ToStringWithCulture(member.PropertyName));

            #line default
            #line hidden
                        this.Write("\r\n        {\r\n");

            #line 103 "C:\codebase\v3\AWSDotNetPublic\generator\ServiceClientGeneratorLib\Generators\SourceFiles\StructureGenerator.tt"

                        if (member.IsNullable && !member.UseNullable)
                        {
            #line default
            #line hidden
                            this.Write("            get { return this.");

            #line 107 "C:\codebase\v3\AWSDotNetPublic\generator\ServiceClientGeneratorLib\Generators\SourceFiles\StructureGenerator.tt"
                            this.Write(this.ToStringHelper.ToStringWithCulture(member.VariableName));

            #line default
            #line hidden
                            this.Write(".GetValueOrDefault(); }\r\n");

            #line 108 "C:\codebase\v3\AWSDotNetPublic\generator\ServiceClientGeneratorLib\Generators\SourceFiles\StructureGenerator.tt"
                        }
                        else
                        {
            #line default
            #line hidden
                            this.Write("            get { return this.");

            #line 113 "C:\codebase\v3\AWSDotNetPublic\generator\ServiceClientGeneratorLib\Generators\SourceFiles\StructureGenerator.tt"
                            this.Write(this.ToStringHelper.ToStringWithCulture(member.VariableName));

            #line default
            #line hidden
                            this.Write("; }\r\n");

            #line 114 "C:\codebase\v3\AWSDotNetPublic\generator\ServiceClientGeneratorLib\Generators\SourceFiles\StructureGenerator.tt"
                        }


            #line default
            #line hidden
                        this.Write("            set { ");

            #line 117 "C:\codebase\v3\AWSDotNetPublic\generator\ServiceClientGeneratorLib\Generators\SourceFiles\StructureGenerator.tt"
                        this.Write(this.ToStringHelper.ToStringWithCulture(member.IsBackwardsCompatibleDateTimeProperty ? "this." + member.BackwardCompatibilityVariableName + " = " : ""));

            #line default
            #line hidden
                        this.Write("this.");

            #line 117 "C:\codebase\v3\AWSDotNetPublic\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 120 "C:\codebase\v3\AWSDotNetPublic\generator\ServiceClientGeneratorLib\Generators\SourceFiles\StructureGenerator.tt"

                        if (member.EmitIsSetProperties)
                        {
            #line default
            #line hidden
                            this.Write("        /// <summary>\r\n        /// This property is set to true if the property <" +
                                       "seealso cref=\"");

            #line 125 "C:\codebase\v3\AWSDotNetPublic\generator\ServiceClientGeneratorLib\Generators\SourceFiles\StructureGenerator.tt"
                            this.Write(this.ToStringHelper.ToStringWithCulture(member.PropertyName));

            #line default
            #line hidden
                            this.Write(@"""/>
        /// is set; false otherwise.
        /// This property can be used to determine if the related property
        /// was returned by a service response or if the related property
        /// should be sent to the service during a service call.
        /// </summary>
        /// <returns>
        /// True if the related property was set or will be sent to a service; false otherwise.
        /// </returns>
");

            #line 134 "C:\codebase\v3\AWSDotNetPublic\generator\ServiceClientGeneratorLib\Generators\SourceFiles\StructureGenerator.tt"

                            if (member.IsDeprecated)
                            {
            #line default
            #line hidden
                                this.Write("\t\t[Obsolete(\"");

            #line 138 "C:\codebase\v3\AWSDotNetPublic\generator\ServiceClientGeneratorLib\Generators\SourceFiles\StructureGenerator.tt"
                                this.Write(this.ToStringHelper.ToStringWithCulture(member.DeprecationMessage));

            #line default
            #line hidden
                                this.Write("\")]\r\n");

            #line 139 "C:\codebase\v3\AWSDotNetPublic\generator\ServiceClientGeneratorLib\Generators\SourceFiles\StructureGenerator.tt"
                            }


            #line default
            #line hidden
                            this.Write("        public bool Is");

            #line 142 "C:\codebase\v3\AWSDotNetPublic\generator\ServiceClientGeneratorLib\Generators\SourceFiles\StructureGenerator.tt"
                            this.Write(this.ToStringHelper.ToStringWithCulture(member.PropertyName));

            #line default
            #line hidden
                            this.Write("Set\r\n        {\r\n            get\r\n            {\r\n                return Amazon.Uti" +
                                       "l.Internal.InternalSDKUtils.GetIsSet(this.");

            #line 146 "C:\codebase\v3\AWSDotNetPublic\generator\ServiceClientGeneratorLib\Generators\SourceFiles\StructureGenerator.tt"
                            this.Write(this.ToStringHelper.ToStringWithCulture(member.VariableName));

            #line default
            #line hidden
                            this.Write(");\r\n            }\r\n            set\r\n            {\r\n                Amazon.Util.In" +
                                       "ternal.InternalSDKUtils.SetIsSet(value, ref this.");

            #line 150 "C:\codebase\v3\AWSDotNetPublic\generator\ServiceClientGeneratorLib\Generators\SourceFiles\StructureGenerator.tt"
                            this.Write(this.ToStringHelper.ToStringWithCulture(member.VariableName));

            #line default
            #line hidden
                            this.Write(");\r\n");

            #line 151 "C:\codebase\v3\AWSDotNetPublic\generator\ServiceClientGeneratorLib\Generators\SourceFiles\StructureGenerator.tt"

                            if (member.IsBackwardsCompatibleDateTimeProperty)
                            {
            #line default
            #line hidden
                                this.Write("  \r\n                Amazon.Util.Internal.InternalSDKUtils.SetIsSet(value, ref thi" +
                                           "s.");

            #line 155 "C:\codebase\v3\AWSDotNetPublic\generator\ServiceClientGeneratorLib\Generators\SourceFiles\StructureGenerator.tt"
                                this.Write(this.ToStringHelper.ToStringWithCulture(member.BackwardCompatibilityVariableName));

            #line default
            #line hidden
                                this.Write(");\r\n");

            #line 156 "C:\codebase\v3\AWSDotNetPublic\generator\ServiceClientGeneratorLib\Generators\SourceFiles\StructureGenerator.tt"
                            }


            #line default
            #line hidden
                            this.Write("            }\r\n        }\r\n\r\n");

            #line 162 "C:\codebase\v3\AWSDotNetPublic\generator\ServiceClientGeneratorLib\Generators\SourceFiles\StructureGenerator.tt"
                        }


            #line default
            #line hidden
                        this.Write("        // Check to see if ");

            #line 165 "C:\codebase\v3\AWSDotNetPublic\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 166 "C:\codebase\v3\AWSDotNetPublic\generator\ServiceClientGeneratorLib\Generators\SourceFiles\StructureGenerator.tt"
                        this.Write(this.ToStringHelper.ToStringWithCulture(member.PropertyName));

            #line default
            #line hidden
                        this.Write("()\r\n        {\r\n");

            #line 168 "C:\codebase\v3\AWSDotNetPublic\generator\ServiceClientGeneratorLib\Generators\SourceFiles\StructureGenerator.tt"

                        if (member.EmitIsSetProperties)
                        {
            #line default
            #line hidden
                            this.Write("            return this.Is");

            #line 172 "C:\codebase\v3\AWSDotNetPublic\generator\ServiceClientGeneratorLib\Generators\SourceFiles\StructureGenerator.tt"
                            this.Write(this.ToStringHelper.ToStringWithCulture(member.PropertyName));

            #line default
            #line hidden
                            this.Write("Set; \r\n");

            #line 173 "C:\codebase\v3\AWSDotNetPublic\generator\ServiceClientGeneratorLib\Generators\SourceFiles\StructureGenerator.tt"
                        }
                        else if (member.IsNullable)
                        {
            #line default
            #line hidden
                            this.Write("            return this.");

            #line 178 "C:\codebase\v3\AWSDotNetPublic\generator\ServiceClientGeneratorLib\Generators\SourceFiles\StructureGenerator.tt"
                            this.Write(this.ToStringHelper.ToStringWithCulture(member.VariableName));

            #line default
            #line hidden
                            this.Write(".HasValue; \r\n");

            #line 179 "C:\codebase\v3\AWSDotNetPublic\generator\ServiceClientGeneratorLib\Generators\SourceFiles\StructureGenerator.tt"
                        }
                        else if (member.IsMap || member.IsList)
                        {
            #line default
            #line hidden
                            this.Write("            return this.");

            #line 184 "C:\codebase\v3\AWSDotNetPublic\generator\ServiceClientGeneratorLib\Generators\SourceFiles\StructureGenerator.tt"
                            this.Write(this.ToStringHelper.ToStringWithCulture(member.VariableName));

            #line default
            #line hidden
                            this.Write(" != null && this.");

            #line 184 "C:\codebase\v3\AWSDotNetPublic\generator\ServiceClientGeneratorLib\Generators\SourceFiles\StructureGenerator.tt"
                            this.Write(this.ToStringHelper.ToStringWithCulture(member.VariableName));

            #line default
            #line hidden
                            this.Write(".Count > 0; \r\n");

            #line 185 "C:\codebase\v3\AWSDotNetPublic\generator\ServiceClientGeneratorLib\Generators\SourceFiles\StructureGenerator.tt"
                        }
                        else
                        {
            #line default
            #line hidden
                            this.Write("            return this.");

            #line 190 "C:\codebase\v3\AWSDotNetPublic\generator\ServiceClientGeneratorLib\Generators\SourceFiles\StructureGenerator.tt"
                            this.Write(this.ToStringHelper.ToStringWithCulture(member.VariableName));

            #line default
            #line hidden
                            this.Write(" != null;\r\n");

            #line 191 "C:\codebase\v3\AWSDotNetPublic\generator\ServiceClientGeneratorLib\Generators\SourceFiles\StructureGenerator.tt"
                        }


            #line default
            #line hidden
                        this.Write("        }\r\n\r\n");

            #line 196 "C:\codebase\v3\AWSDotNetPublic\generator\ServiceClientGeneratorLib\Generators\SourceFiles\StructureGenerator.tt"
                    }

                    if (this.StructureType == StructureType.Request && this.Operation.AuthType.HasValue)
                    {
            #line default
            #line hidden
                        this.Write("        /// <summary>\r\n        /// Get the signer to use for this request.\r\n     " +
                                   "   /// </summary>\r\n        /// <returns>A signer for this request.</returns>\r\n  " +
                                   "      override protected AbstractAWSSigner CreateSigner()\r\n        {\r\n");

            #line 208 "C:\codebase\v3\AWSDotNetPublic\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 214 "C:\codebase\v3\AWSDotNetPublic\generator\ServiceClientGeneratorLib\Generators\SourceFiles\StructureGenerator.tt"

                            break;

                        case OperationAuthType.V4:


            #line default
            #line hidden
                            this.Write("            return new AWS4Signer();\r\n");

            #line 219 "C:\codebase\v3\AWSDotNetPublic\generator\ServiceClientGeneratorLib\Generators\SourceFiles\StructureGenerator.tt"

                            break;

                        case OperationAuthType.V4UnsignedBody:


            #line default
            #line hidden
                            this.Write("            return new AWS4Signer(false);\r\n");

            #line 224 "C:\codebase\v3\AWSDotNetPublic\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 231 "C:\codebase\v3\AWSDotNetPublic\generator\ServiceClientGeneratorLib\Generators\SourceFiles\StructureGenerator.tt"
                    }
                    if (this.Structure.Members.Any(m => !m.IsExcluded && m.IsBackwardsCompatibleDateTimeProperty))
                    {
            #line default
            #line hidden
                        this.Write("#region Backwards compatible properties\r\n");

            #line 237 "C:\codebase\v3\AWSDotNetPublic\generator\ServiceClientGeneratorLib\Generators\SourceFiles\StructureGenerator.tt"

                        foreach (var member in this.Structure.Members)
                        {
                            if (member.IsExcluded || !member.IsBackwardsCompatibleDateTimeProperty)
                            {
                                continue;
                            }


            #line default
            #line hidden
                            this.Write("        private ");

            #line 243 "C:\codebase\v3\AWSDotNetPublic\generator\ServiceClientGeneratorLib\Generators\SourceFiles\StructureGenerator.tt"
                            this.Write(this.ToStringHelper.ToStringWithCulture(member.DetermineType()));

            #line default
            #line hidden

            #line 243 "C:\codebase\v3\AWSDotNetPublic\generator\ServiceClientGeneratorLib\Generators\SourceFiles\StructureGenerator.tt"
                            this.Write(this.ToStringHelper.ToStringWithCulture(member.IsNullable ? "?" : ""));

            #line default
            #line hidden
                            this.Write(" ");

            #line 243 "C:\codebase\v3\AWSDotNetPublic\generator\ServiceClientGeneratorLib\Generators\SourceFiles\StructureGenerator.tt"
                            this.Write(this.ToStringHelper.ToStringWithCulture(member.BackwardCompatibilityVariableName));

            #line default
            #line hidden

            #line 243 "C:\codebase\v3\AWSDotNetPublic\generator\ServiceClientGeneratorLib\Generators\SourceFiles\StructureGenerator.tt"
                            this.Write(this.ToStringHelper.ToStringWithCulture(member.ShouldInstantiate ? string.Format(" = new {0}();", member.DetermineType()) : ";"));

            #line default
            #line hidden
                            this.Write("\r\n");

            #line 244 "C:\codebase\v3\AWSDotNetPublic\generator\ServiceClientGeneratorLib\Generators\SourceFiles\StructureGenerator.tt"
                        }


            #line default
            #line hidden
                        this.Write("\r\n");

            #line 248 "C:\codebase\v3\AWSDotNetPublic\generator\ServiceClientGeneratorLib\Generators\SourceFiles\StructureGenerator.tt"

                        foreach (var member in this.Structure.Members)
                        {
                            if (member.IsExcluded || !member.IsBackwardsCompatibleDateTimeProperty)
                            {
                                continue;
                            }


            #line default
            #line hidden

            #line 254 "C:\codebase\v3\AWSDotNetPublic\generator\ServiceClientGeneratorLib\Generators\SourceFiles\StructureGenerator.tt"
                            this.FormatPropertyDocumentation(member, "This property is deprecated. Setting this property results in non-UTC DateTimes " +
                                                             "not being marshalled correctly. Use " + member.PropertyName + " instead. Setting either " + member.BackwardCompatibilityPropertyName +
                                                             " or " + member.PropertyName + " results in both " + member.BackwardCompatibilityPropertyName + " and " +
                                                             member.PropertyName + " being assigned, the latest assignment to either one of the two property is reflected in " +
                                                             "the value of both. " + member.BackwardCompatibilityPropertyName + " is provided for backwards compatibility only " +
                                                             "and assigning a non-Utc DateTime to it results in the wrong timestamp being passed to the service.");

            #line default
            #line hidden
                            this.Write("        [Obsolete(\"Setting this property results in non-UTC DateTimes not being m" +
                                       "arshalled correctly. \" +\r\n            \"Use ");

            #line 261 "C:\codebase\v3\AWSDotNetPublic\generator\ServiceClientGeneratorLib\Generators\SourceFiles\StructureGenerator.tt"
                            this.Write(this.ToStringHelper.ToStringWithCulture(member.PropertyName));

            #line default
            #line hidden
                            this.Write(" instead. Setting either ");

            #line 261 "C:\codebase\v3\AWSDotNetPublic\generator\ServiceClientGeneratorLib\Generators\SourceFiles\StructureGenerator.tt"
                            this.Write(this.ToStringHelper.ToStringWithCulture(member.BackwardCompatibilityPropertyName));

            #line default
            #line hidden
                            this.Write(" or ");

            #line 261 "C:\codebase\v3\AWSDotNetPublic\generator\ServiceClientGeneratorLib\Generators\SourceFiles\StructureGenerator.tt"
                            this.Write(this.ToStringHelper.ToStringWithCulture(member.PropertyName));

            #line default
            #line hidden
                            this.Write(" results in both ");

            #line 261 "C:\codebase\v3\AWSDotNetPublic\generator\ServiceClientGeneratorLib\Generators\SourceFiles\StructureGenerator.tt"
                            this.Write(this.ToStringHelper.ToStringWithCulture(member.BackwardCompatibilityPropertyName));

            #line default
            #line hidden
                            this.Write(" and \" +\r\n            \"");

            #line 262 "C:\codebase\v3\AWSDotNetPublic\generator\ServiceClientGeneratorLib\Generators\SourceFiles\StructureGenerator.tt"
                            this.Write(this.ToStringHelper.ToStringWithCulture(member.PropertyName));

            #line default
            #line hidden
                            this.Write(" being assigned, the latest assignment to either one of the two property is \" + \r" +
                                       "\n            \"reflected in the value of both. ");

            #line 263 "C:\codebase\v3\AWSDotNetPublic\generator\ServiceClientGeneratorLib\Generators\SourceFiles\StructureGenerator.tt"
                            this.Write(this.ToStringHelper.ToStringWithCulture(member.BackwardCompatibilityPropertyName));

            #line default
            #line hidden
                            this.Write(" is provided for backwards compatibility only and \" +\r\n            \"assigning a n" +
                                       "on-Utc DateTime to it results in the wrong timestamp being passed to the service" +
                                       ".\", false)]\r\n        ");

            #line 265 "C:\codebase\v3\AWSDotNetPublic\generator\ServiceClientGeneratorLib\Generators\SourceFiles\StructureGenerator.tt"
                            this.Write(this.ToStringHelper.ToStringWithCulture(member.AccessModifier));

            #line default
            #line hidden
                            this.Write(" ");

            #line 265 "C:\codebase\v3\AWSDotNetPublic\generator\ServiceClientGeneratorLib\Generators\SourceFiles\StructureGenerator.tt"
                            this.Write(this.ToStringHelper.ToStringWithCulture(member.DetermineType()));

            #line default
            #line hidden

            #line 265 "C:\codebase\v3\AWSDotNetPublic\generator\ServiceClientGeneratorLib\Generators\SourceFiles\StructureGenerator.tt"
                            this.Write(this.ToStringHelper.ToStringWithCulture(member.UseNullable ? "?" : ""));

            #line default
            #line hidden
                            this.Write(" ");

            #line 265 "C:\codebase\v3\AWSDotNetPublic\generator\ServiceClientGeneratorLib\Generators\SourceFiles\StructureGenerator.tt"
                            this.Write(this.ToStringHelper.ToStringWithCulture(member.BackwardCompatibilityPropertyName));

            #line default
            #line hidden
                            this.Write("\r\n        {\r\n            get { return this.");

            #line 267 "C:\codebase\v3\AWSDotNetPublic\generator\ServiceClientGeneratorLib\Generators\SourceFiles\StructureGenerator.tt"
                            this.Write(this.ToStringHelper.ToStringWithCulture(member.BackwardCompatibilityVariableName));

            #line default
            #line hidden
                            this.Write(".GetValueOrDefault(); }\r\n            set\r\n            {\r\n                this.");

            #line 270 "C:\codebase\v3\AWSDotNetPublic\generator\ServiceClientGeneratorLib\Generators\SourceFiles\StructureGenerator.tt"
                            this.Write(this.ToStringHelper.ToStringWithCulture(member.BackwardCompatibilityVariableName));

            #line default
            #line hidden
                            this.Write(" = value;\r\n                this.");

            #line 271 "C:\codebase\v3\AWSDotNetPublic\generator\ServiceClientGeneratorLib\Generators\SourceFiles\StructureGenerator.tt"
                            this.Write(this.ToStringHelper.ToStringWithCulture(member.VariableName));

            #line default
            #line hidden
                            this.Write(" = new DateTime(value.Ticks, DateTimeKind.Utc);\r\n            }\r\n        }\r\n");

            #line 274 "C:\codebase\v3\AWSDotNetPublic\generator\ServiceClientGeneratorLib\Generators\SourceFiles\StructureGenerator.tt"

                            if (member.EmitIsSetProperties)
                            {
            #line default
            #line hidden
                                this.Write("\t\t/// <summary>\r\n        /// This property is set to true if the property <seeals" +
                                           "o cref=\"");

            #line 279 "C:\codebase\v3\AWSDotNetPublic\generator\ServiceClientGeneratorLib\Generators\SourceFiles\StructureGenerator.tt"
                                this.Write(this.ToStringHelper.ToStringWithCulture(member.BackwardCompatibilityPropertyName));

            #line default
            #line hidden
                                this.Write(@"""/>
        /// is set; false otherwise.
        /// This property can be used to determine if the related property
        /// was returned by a service response or if the related property
        /// should be sent to the service during a service call.
        /// </summary>
        /// <returns>
        /// True if the related property was set or will be sent to a service; false otherwise.
        /// </returns>
		[Obsolete(""Setting "        );

            #line 288 "C:\codebase\v3\AWSDotNetPublic\generator\ServiceClientGeneratorLib\Generators\SourceFiles\StructureGenerator.tt"
                                this.Write(this.ToStringHelper.ToStringWithCulture(member.BackwardCompatibilityPropertyName));

            #line default
            #line hidden
                                this.Write(" results in non-UTC DateTimes not being marshalled correctly. Use ");

            #line 288 "C:\codebase\v3\AWSDotNetPublic\generator\ServiceClientGeneratorLib\Generators\SourceFiles\StructureGenerator.tt"
                                this.Write(this.ToStringHelper.ToStringWithCulture(member.PropertyName));

            #line default
            #line hidden
                                this.Write(" instead.\", false)]\r\n\t\tpublic bool Is");

            #line 289 "C:\codebase\v3\AWSDotNetPublic\generator\ServiceClientGeneratorLib\Generators\SourceFiles\StructureGenerator.tt"
                                this.Write(this.ToStringHelper.ToStringWithCulture(member.BackwardCompatibilityPropertyName));

            #line default
            #line hidden
                                this.Write("Set\r\n        {\r\n            get\r\n            {\r\n                return this.Is");

            #line 293 "C:\codebase\v3\AWSDotNetPublic\generator\ServiceClientGeneratorLib\Generators\SourceFiles\StructureGenerator.tt"
                                this.Write(this.ToStringHelper.ToStringWithCulture(member.PropertyName));

            #line default
            #line hidden
                                this.Write("Set;\r\n            }\r\n            set\r\n            {\r\n                this.Is");

            #line 297 "C:\codebase\v3\AWSDotNetPublic\generator\ServiceClientGeneratorLib\Generators\SourceFiles\StructureGenerator.tt"
                                this.Write(this.ToStringHelper.ToStringWithCulture(member.PropertyName));

            #line default
            #line hidden
                                this.Write("Set = value;;\r\n            }\r\n        }\r\n");

            #line 300 "C:\codebase\v3\AWSDotNetPublic\generator\ServiceClientGeneratorLib\Generators\SourceFiles\StructureGenerator.tt"
                            }
                        }



            #line default
            #line hidden
                        this.Write("#endregion\r\n");

            #line 306 "C:\codebase\v3\AWSDotNetPublic\generator\ServiceClientGeneratorLib\Generators\SourceFiles\StructureGenerator.tt"
                    }
                }
            }
            else //TODO: remove this else clause. It was added just to preserve whitespaces
            {
            #line default
            #line hidden
                this.Write("\r\n");

            #line 315 "C:\codebase\v3\AWSDotNetPublic\generator\ServiceClientGeneratorLib\Generators\SourceFiles\StructureGenerator.tt"
            }


            #line default
            #line hidden
            this.Write("    }\r\n}\r\n\r\n\r\n");
            return(this.GenerationEnvironment.ToString());
        }
예제 #10
0
        /// <summary>
        /// Create the template output
        /// </summary>
        public override string TransformText()
        {
            #line 6 "C:\dev\net\runtime.rebase\sdk\src\ServiceClientGenerator\Generators\AWSQueryStructureUnmarshaller.tt"

            AddLicenseHeader();

            AddCommonUsingStatements();


            #line default
            #line hidden
            this.Write("namespace ");

            #line 11 "C:\dev\net\runtime.rebase\sdk\src\ServiceClientGenerator\Generators\AWSQueryStructureUnmarshaller.tt"
            this.Write(this.ToStringHelper.ToStringWithCulture(this.Config.Namespace));

            #line default
            #line hidden
            this.Write(".Model.Internal.MarshallTransformations\r\n{\r\n    /// <summary>\r\n    /// Response U" +
                       "nmarshaller for ");

            #line 14 "C:\dev\net\runtime.rebase\sdk\src\ServiceClientGenerator\Generators\AWSQueryStructureUnmarshaller.tt"
            this.Write(this.ToStringHelper.ToStringWithCulture(this.UnmarshallerBaseName));

            #line default
            #line hidden
            this.Write(" Object\r\n    /// </summary>  \r\n    public class ");

            #line 16 "C:\dev\net\runtime.rebase\sdk\src\ServiceClientGenerator\Generators\AWSQueryStructureUnmarshaller.tt"
            this.Write(this.ToStringHelper.ToStringWithCulture(this.UnmarshallerBaseName));

            #line default
            #line hidden
            this.Write("Unmarshaller : IUnmarshaller<");

            #line 16 "C:\dev\net\runtime.rebase\sdk\src\ServiceClientGenerator\Generators\AWSQueryStructureUnmarshaller.tt"
            this.Write(this.ToStringHelper.ToStringWithCulture(this.UnmarshallerBaseName));

            #line default
            #line hidden
            this.Write(", XmlUnmarshallerContext>, IUnmarshaller<");

            #line 16 "C:\dev\net\runtime.rebase\sdk\src\ServiceClientGenerator\Generators\AWSQueryStructureUnmarshaller.tt"
            this.Write(this.ToStringHelper.ToStringWithCulture(this.UnmarshallerBaseName));

            #line default
            #line hidden
            this.Write(", JsonUnmarshallerContext>\r\n    {\r\n        public ");

            #line 18 "C:\dev\net\runtime.rebase\sdk\src\ServiceClientGenerator\Generators\AWSQueryStructureUnmarshaller.tt"
            this.Write(this.ToStringHelper.ToStringWithCulture(this.UnmarshallerBaseName));

            #line default
            #line hidden
            this.Write(" Unmarshall(XmlUnmarshallerContext context)\r\n        {\r\n            ");

            #line 20 "C:\dev\net\runtime.rebase\sdk\src\ServiceClientGenerator\Generators\AWSQueryStructureUnmarshaller.tt"
            this.Write(this.ToStringHelper.ToStringWithCulture(this.UnmarshallerBaseName));

            #line default
            #line hidden
            this.Write(" unmarshalledObject = new ");

            #line 20 "C:\dev\net\runtime.rebase\sdk\src\ServiceClientGenerator\Generators\AWSQueryStructureUnmarshaller.tt"
            this.Write(this.ToStringHelper.ToStringWithCulture(this.UnmarshallerBaseName));

            #line default
            #line hidden
            this.Write(@"();
            int originalDepth = context.CurrentDepth;
            int targetDepth = originalDepth + 1;
            
            if (context.IsStartOfDocument) 
               targetDepth += 2;
            
            while (context.ReadAtDepth(originalDepth))
            {
                if (context.IsStartElement || context.IsAttribute)
                {
");

            #line 31 "C:\dev\net\runtime.rebase\sdk\src\ServiceClientGenerator\Generators\AWSQueryStructureUnmarshaller.tt"

            if (this.Structure != null)
            {
                foreach (var member in this.Structure.Members)
                {
                    var testExpression = GeneratorHelpers.DetermineAWSQueryTestExpression(member);


            #line default
            #line hidden
                    this.Write("                    if (context.TestExpression(\"");

            #line 38 "C:\dev\net\runtime.rebase\sdk\src\ServiceClientGenerator\Generators\AWSQueryStructureUnmarshaller.tt"
                    this.Write(this.ToStringHelper.ToStringWithCulture(testExpression));

            #line default
            #line hidden
                    this.Write("\", targetDepth))\r\n                    {\r\n                        var unmarshaller" +
                               " = ");

            #line 40 "C:\dev\net\runtime.rebase\sdk\src\ServiceClientGenerator\Generators\AWSQueryStructureUnmarshaller.tt"
                    this.Write(this.ToStringHelper.ToStringWithCulture(member.DetermineTypeUnmarshallerInstantiate()));

            #line default
            #line hidden
                    this.Write(";\r\n");

            #line 41 "C:\dev\net\runtime.rebase\sdk\src\ServiceClientGenerator\Generators\AWSQueryStructureUnmarshaller.tt"

                    if (member.IsMap || member.IsList)
                    {
            #line default
            #line hidden
                        this.Write("                        var item = unmarshaller.Unmarshall(context);\r\n           " +
                                   "             unmarshalledObject.");

            #line 46 "C:\dev\net\runtime.rebase\sdk\src\ServiceClientGenerator\Generators\AWSQueryStructureUnmarshaller.tt"
                        this.Write(this.ToStringHelper.ToStringWithCulture(member.PropertyName));

            #line default
            #line hidden
                        this.Write(".Add(item);\r\n");

            #line 47 "C:\dev\net\runtime.rebase\sdk\src\ServiceClientGenerator\Generators\AWSQueryStructureUnmarshaller.tt"
                    }
                    else
                    {
            #line default
            #line hidden
                        this.Write("                        unmarshalledObject.");

            #line 52 "C:\dev\net\runtime.rebase\sdk\src\ServiceClientGenerator\Generators\AWSQueryStructureUnmarshaller.tt"
                        this.Write(this.ToStringHelper.ToStringWithCulture(member.PropertyName));

            #line default
            #line hidden
                        this.Write(" = unmarshaller.Unmarshall(context);\r\n");

            #line 53 "C:\dev\net\runtime.rebase\sdk\src\ServiceClientGenerator\Generators\AWSQueryStructureUnmarshaller.tt"
                    }


            #line default
            #line hidden
                    this.Write("                        continue;\r\n                    }\r\n");

            #line 58 "C:\dev\net\runtime.rebase\sdk\src\ServiceClientGenerator\Generators\AWSQueryStructureUnmarshaller.tt"
                }
            }


            #line default
            #line hidden
            this.Write(@"                }
                else if (context.IsEndElement && context.CurrentDepth < originalDepth)
                {
                    return unmarshalledObject;
                }
            }

            return unmarshalledObject;
        }

        public ");

            #line 72 "C:\dev\net\runtime.rebase\sdk\src\ServiceClientGenerator\Generators\AWSQueryStructureUnmarshaller.tt"
            this.Write(this.ToStringHelper.ToStringWithCulture(this.UnmarshallerBaseName));

            #line default
            #line hidden
            this.Write(" Unmarshall(JsonUnmarshallerContext context)\r\n        {\r\n            return null;" +
                       "\r\n        }\r\n\r\n\r\n");

            #line 78 "C:\dev\net\runtime.rebase\sdk\src\ServiceClientGenerator\Generators\AWSQueryStructureUnmarshaller.tt"

            this.AddStructureSingletonMethod();


            #line default
            #line hidden
            this.Write("    }\r\n}");
            return(this.GenerationEnvironment.ToString());
        }
예제 #11
0
        void ProcessMembers(int level, string parameterContext, string variableName, IEnumerable <Member> members)
        {
            string variableNameFragment = variableName.Replace(".", string.Empty);

            foreach (var member in members)
            {
                if (GeneratorHelpers.UseCustomMarshall(member, this.Operation))
                {
                    continue;
                }

                var marshallName = GeneratorHelpers.DetermineAWSQueryMarshallName(member, this.Operation);


        #line default
        #line hidden

        #line 53 "C:\dev\net\runtime.rebase\sdk\src\ServiceClientGenerator\Generators\AWSQueryRequestMarshaller.tt"
                this.Write(this.ToStringHelper.ToStringWithCulture(new string(' ', level * 4)));


        #line default
        #line hidden

        #line 53 "C:\dev\net\runtime.rebase\sdk\src\ServiceClientGenerator\Generators\AWSQueryRequestMarshaller.tt"
                this.Write("                if(");


        #line default
        #line hidden

        #line 53 "C:\dev\net\runtime.rebase\sdk\src\ServiceClientGenerator\Generators\AWSQueryRequestMarshaller.tt"
                this.Write(this.ToStringHelper.ToStringWithCulture(variableName));


        #line default
        #line hidden

        #line 53 "C:\dev\net\runtime.rebase\sdk\src\ServiceClientGenerator\Generators\AWSQueryRequestMarshaller.tt"
                this.Write(".IsSet");


        #line default
        #line hidden

        #line 53 "C:\dev\net\runtime.rebase\sdk\src\ServiceClientGenerator\Generators\AWSQueryRequestMarshaller.tt"
                this.Write(this.ToStringHelper.ToStringWithCulture(member.PropertyName));


        #line default
        #line hidden

        #line 53 "C:\dev\net\runtime.rebase\sdk\src\ServiceClientGenerator\Generators\AWSQueryRequestMarshaller.tt"
                this.Write("())\r\n");


        #line default
        #line hidden

        #line 54 "C:\dev\net\runtime.rebase\sdk\src\ServiceClientGenerator\Generators\AWSQueryRequestMarshaller.tt"
                this.Write(this.ToStringHelper.ToStringWithCulture(new string(' ', level * 4)));


        #line default
        #line hidden

        #line 54 "C:\dev\net\runtime.rebase\sdk\src\ServiceClientGenerator\Generators\AWSQueryRequestMarshaller.tt"
                this.Write("                {\r\n");


        #line default
        #line hidden

        #line 55 "C:\dev\net\runtime.rebase\sdk\src\ServiceClientGenerator\Generators\AWSQueryRequestMarshaller.tt"

                if (member.IsList)
                {
                    string context         = ComposeContext(parameterContext, marshallName);
                    string listItemContext = ComposeContext(context,
                                                            GeneratorHelpers.DetermineAWSQueryListMemberPrefix(member),
                                                            variableNameFragment + "listValueIndex",
                                                            GeneratorHelpers.DetermineAWSQueryListMemberSuffix(this.Operation, member));


        #line default
        #line hidden

        #line 64 "C:\dev\net\runtime.rebase\sdk\src\ServiceClientGenerator\Generators\AWSQueryRequestMarshaller.tt"
                    this.Write(this.ToStringHelper.ToStringWithCulture(new string(' ', level * 4)));


        #line default
        #line hidden

        #line 64 "C:\dev\net\runtime.rebase\sdk\src\ServiceClientGenerator\Generators\AWSQueryRequestMarshaller.tt"
                    this.Write("                    int ");


        #line default
        #line hidden

        #line 64 "C:\dev\net\runtime.rebase\sdk\src\ServiceClientGenerator\Generators\AWSQueryRequestMarshaller.tt"
                    this.Write(this.ToStringHelper.ToStringWithCulture(variableNameFragment));


        #line default
        #line hidden

        #line 64 "C:\dev\net\runtime.rebase\sdk\src\ServiceClientGenerator\Generators\AWSQueryRequestMarshaller.tt"
                    this.Write("listValueIndex = 1;\r\n");


        #line default
        #line hidden

        #line 65 "C:\dev\net\runtime.rebase\sdk\src\ServiceClientGenerator\Generators\AWSQueryRequestMarshaller.tt"
                    this.Write(this.ToStringHelper.ToStringWithCulture(new string(' ', level * 4)));


        #line default
        #line hidden

        #line 65 "C:\dev\net\runtime.rebase\sdk\src\ServiceClientGenerator\Generators\AWSQueryRequestMarshaller.tt"
                    this.Write("                    foreach(var ");


        #line default
        #line hidden

        #line 65 "C:\dev\net\runtime.rebase\sdk\src\ServiceClientGenerator\Generators\AWSQueryRequestMarshaller.tt"
                    this.Write(this.ToStringHelper.ToStringWithCulture(variableNameFragment));


        #line default
        #line hidden

        #line 65 "C:\dev\net\runtime.rebase\sdk\src\ServiceClientGenerator\Generators\AWSQueryRequestMarshaller.tt"
                    this.Write("listValue in ");


        #line default
        #line hidden

        #line 65 "C:\dev\net\runtime.rebase\sdk\src\ServiceClientGenerator\Generators\AWSQueryRequestMarshaller.tt"
                    this.Write(this.ToStringHelper.ToStringWithCulture(variableName));


        #line default
        #line hidden

        #line 65 "C:\dev\net\runtime.rebase\sdk\src\ServiceClientGenerator\Generators\AWSQueryRequestMarshaller.tt"
                    this.Write(".");


        #line default
        #line hidden

        #line 65 "C:\dev\net\runtime.rebase\sdk\src\ServiceClientGenerator\Generators\AWSQueryRequestMarshaller.tt"
                    this.Write(this.ToStringHelper.ToStringWithCulture(member.PropertyName));


        #line default
        #line hidden

        #line 65 "C:\dev\net\runtime.rebase\sdk\src\ServiceClientGenerator\Generators\AWSQueryRequestMarshaller.tt"
                    this.Write(")\r\n");


        #line default
        #line hidden

        #line 66 "C:\dev\net\runtime.rebase\sdk\src\ServiceClientGenerator\Generators\AWSQueryRequestMarshaller.tt"
                    this.Write(this.ToStringHelper.ToStringWithCulture(new string(' ', level * 4)));


        #line default
        #line hidden

        #line 66 "C:\dev\net\runtime.rebase\sdk\src\ServiceClientGenerator\Generators\AWSQueryRequestMarshaller.tt"
                    this.Write("                    {\r\n");


        #line default
        #line hidden

        #line 67 "C:\dev\net\runtime.rebase\sdk\src\ServiceClientGenerator\Generators\AWSQueryRequestMarshaller.tt"

                    if (member.Shape.ListShape.IsStructure)
                    {
                        ProcessMembers(level + 2, listItemContext, variableNameFragment + "listValue", member.Shape.ListShape.Members);
                    }
                    else
                    {
        #line default
        #line hidden

        #line 75 "C:\dev\net\runtime.rebase\sdk\src\ServiceClientGenerator\Generators\AWSQueryRequestMarshaller.tt"
                        this.Write(this.ToStringHelper.ToStringWithCulture(new string(' ', level * 4)));


        #line default
        #line hidden

        #line 75 "C:\dev\net\runtime.rebase\sdk\src\ServiceClientGenerator\Generators\AWSQueryRequestMarshaller.tt"
                        this.Write("                        request.Parameters.Add(");


        #line default
        #line hidden

        #line 75 "C:\dev\net\runtime.rebase\sdk\src\ServiceClientGenerator\Generators\AWSQueryRequestMarshaller.tt"
                        this.Write(this.ToStringHelper.ToStringWithCulture(listItemContext));


        #line default
        #line hidden

        #line 75 "C:\dev\net\runtime.rebase\sdk\src\ServiceClientGenerator\Generators\AWSQueryRequestMarshaller.tt"
                        this.Write(", StringUtils.From");


        #line default
        #line hidden

        #line 75 "C:\dev\net\runtime.rebase\sdk\src\ServiceClientGenerator\Generators\AWSQueryRequestMarshaller.tt"
                        this.Write(this.ToStringHelper.ToStringWithCulture(member.Shape.ListShape.GetPrimitiveType()));


        #line default
        #line hidden

        #line 75 "C:\dev\net\runtime.rebase\sdk\src\ServiceClientGenerator\Generators\AWSQueryRequestMarshaller.tt"
                        this.Write("(");


        #line default
        #line hidden

        #line 75 "C:\dev\net\runtime.rebase\sdk\src\ServiceClientGenerator\Generators\AWSQueryRequestMarshaller.tt"
                        this.Write(this.ToStringHelper.ToStringWithCulture(variableNameFragment));


        #line default
        #line hidden

        #line 75 "C:\dev\net\runtime.rebase\sdk\src\ServiceClientGenerator\Generators\AWSQueryRequestMarshaller.tt"
                        this.Write("listValue));\r\n");


        #line default
        #line hidden

        #line 76 "C:\dev\net\runtime.rebase\sdk\src\ServiceClientGenerator\Generators\AWSQueryRequestMarshaller.tt"
                    }


        #line default
        #line hidden

        #line 79 "C:\dev\net\runtime.rebase\sdk\src\ServiceClientGenerator\Generators\AWSQueryRequestMarshaller.tt"
                    this.Write(this.ToStringHelper.ToStringWithCulture(new string(' ', level * 4)));


        #line default
        #line hidden

        #line 79 "C:\dev\net\runtime.rebase\sdk\src\ServiceClientGenerator\Generators\AWSQueryRequestMarshaller.tt"
                    this.Write("                        ");


        #line default
        #line hidden

        #line 79 "C:\dev\net\runtime.rebase\sdk\src\ServiceClientGenerator\Generators\AWSQueryRequestMarshaller.tt"
                    this.Write(this.ToStringHelper.ToStringWithCulture(variableNameFragment));


        #line default
        #line hidden

        #line 79 "C:\dev\net\runtime.rebase\sdk\src\ServiceClientGenerator\Generators\AWSQueryRequestMarshaller.tt"
                    this.Write("listValueIndex++;\r\n");


        #line default
        #line hidden

        #line 80 "C:\dev\net\runtime.rebase\sdk\src\ServiceClientGenerator\Generators\AWSQueryRequestMarshaller.tt"
                    this.Write(this.ToStringHelper.ToStringWithCulture(new string(' ', level * 4)));


        #line default
        #line hidden

        #line 80 "C:\dev\net\runtime.rebase\sdk\src\ServiceClientGenerator\Generators\AWSQueryRequestMarshaller.tt"
                    this.Write("                    }\r\n");


        #line default
        #line hidden

        #line 81 "C:\dev\net\runtime.rebase\sdk\src\ServiceClientGenerator\Generators\AWSQueryRequestMarshaller.tt"
                }
                else if (member.IsMap)
                {
                    string context         = ComposeContext(parameterContext, marshallName);
                    string mapItemContext  = ComposeContext(context, member.Shape.IsFlattened ? "" : "entry", "mapIndex");
                    string mapKeyContext   = ComposeContext(mapItemContext, member.Shape.KeyMarshallName);
                    string mapValueContext = ComposeContext(mapItemContext, member.Shape.ValueMarshallName);


        #line default
        #line hidden

        #line 90 "C:\dev\net\runtime.rebase\sdk\src\ServiceClientGenerator\Generators\AWSQueryRequestMarshaller.tt"
                    this.Write(this.ToStringHelper.ToStringWithCulture(new string(' ', level * 4)));


        #line default
        #line hidden

        #line 90 "C:\dev\net\runtime.rebase\sdk\src\ServiceClientGenerator\Generators\AWSQueryRequestMarshaller.tt"
                    this.Write("                    int mapIndex = 1;\r\n");


        #line default
        #line hidden

        #line 91 "C:\dev\net\runtime.rebase\sdk\src\ServiceClientGenerator\Generators\AWSQueryRequestMarshaller.tt"
                    this.Write(this.ToStringHelper.ToStringWithCulture(new string(' ', level * 4)));


        #line default
        #line hidden

        #line 91 "C:\dev\net\runtime.rebase\sdk\src\ServiceClientGenerator\Generators\AWSQueryRequestMarshaller.tt"
                    this.Write("                    foreach(var key in ");


        #line default
        #line hidden

        #line 91 "C:\dev\net\runtime.rebase\sdk\src\ServiceClientGenerator\Generators\AWSQueryRequestMarshaller.tt"
                    this.Write(this.ToStringHelper.ToStringWithCulture(variableName));


        #line default
        #line hidden

        #line 91 "C:\dev\net\runtime.rebase\sdk\src\ServiceClientGenerator\Generators\AWSQueryRequestMarshaller.tt"
                    this.Write(".");


        #line default
        #line hidden

        #line 91 "C:\dev\net\runtime.rebase\sdk\src\ServiceClientGenerator\Generators\AWSQueryRequestMarshaller.tt"
                    this.Write(this.ToStringHelper.ToStringWithCulture(member.PropertyName));


        #line default
        #line hidden

        #line 91 "C:\dev\net\runtime.rebase\sdk\src\ServiceClientGenerator\Generators\AWSQueryRequestMarshaller.tt"
                    this.Write(".Keys)\r\n");


        #line default
        #line hidden

        #line 92 "C:\dev\net\runtime.rebase\sdk\src\ServiceClientGenerator\Generators\AWSQueryRequestMarshaller.tt"
                    this.Write(this.ToStringHelper.ToStringWithCulture(new string(' ', level * 4)));


        #line default
        #line hidden

        #line 92 "C:\dev\net\runtime.rebase\sdk\src\ServiceClientGenerator\Generators\AWSQueryRequestMarshaller.tt"
                    this.Write("                    {\r\n");


        #line default
        #line hidden

        #line 93 "C:\dev\net\runtime.rebase\sdk\src\ServiceClientGenerator\Generators\AWSQueryRequestMarshaller.tt"
                    this.Write(this.ToStringHelper.ToStringWithCulture(new string(' ', level * 4)));


        #line default
        #line hidden

        #line 93 "C:\dev\net\runtime.rebase\sdk\src\ServiceClientGenerator\Generators\AWSQueryRequestMarshaller.tt"
                    this.Write("                        ");


        #line default
        #line hidden

        #line 93 "C:\dev\net\runtime.rebase\sdk\src\ServiceClientGenerator\Generators\AWSQueryRequestMarshaller.tt"
                    this.Write(this.ToStringHelper.ToStringWithCulture(member.Shape.ValueShape.IsStructure ? member.Shape.ValueShape.Name : member.Shape.ValueShape.GetPrimitiveType()));


        #line default
        #line hidden

        #line 93 "C:\dev\net\runtime.rebase\sdk\src\ServiceClientGenerator\Generators\AWSQueryRequestMarshaller.tt"
                    this.Write(" value;\r\n");


        #line default
        #line hidden

        #line 94 "C:\dev\net\runtime.rebase\sdk\src\ServiceClientGenerator\Generators\AWSQueryRequestMarshaller.tt"
                    this.Write(this.ToStringHelper.ToStringWithCulture(new string(' ', level * 4)));


        #line default
        #line hidden

        #line 94 "C:\dev\net\runtime.rebase\sdk\src\ServiceClientGenerator\Generators\AWSQueryRequestMarshaller.tt"
                    this.Write("                        bool hasValue = ");


        #line default
        #line hidden

        #line 94 "C:\dev\net\runtime.rebase\sdk\src\ServiceClientGenerator\Generators\AWSQueryRequestMarshaller.tt"
                    this.Write(this.ToStringHelper.ToStringWithCulture(variableName));


        #line default
        #line hidden

        #line 94 "C:\dev\net\runtime.rebase\sdk\src\ServiceClientGenerator\Generators\AWSQueryRequestMarshaller.tt"
                    this.Write(".");


        #line default
        #line hidden

        #line 94 "C:\dev\net\runtime.rebase\sdk\src\ServiceClientGenerator\Generators\AWSQueryRequestMarshaller.tt"
                    this.Write(this.ToStringHelper.ToStringWithCulture(member.PropertyName));


        #line default
        #line hidden

        #line 94 "C:\dev\net\runtime.rebase\sdk\src\ServiceClientGenerator\Generators\AWSQueryRequestMarshaller.tt"
                    this.Write(".TryGetValue(key, out value);\r\n");


        #line default
        #line hidden

        #line 95 "C:\dev\net\runtime.rebase\sdk\src\ServiceClientGenerator\Generators\AWSQueryRequestMarshaller.tt"
                    this.Write(this.ToStringHelper.ToStringWithCulture(new string(' ', level * 4)));


        #line default
        #line hidden

        #line 95 "C:\dev\net\runtime.rebase\sdk\src\ServiceClientGenerator\Generators\AWSQueryRequestMarshaller.tt"
                    this.Write("                        request.Parameters.Add(");


        #line default
        #line hidden

        #line 95 "C:\dev\net\runtime.rebase\sdk\src\ServiceClientGenerator\Generators\AWSQueryRequestMarshaller.tt"
                    this.Write(this.ToStringHelper.ToStringWithCulture(mapKeyContext));


        #line default
        #line hidden

        #line 95 "C:\dev\net\runtime.rebase\sdk\src\ServiceClientGenerator\Generators\AWSQueryRequestMarshaller.tt"
                    this.Write(", StringUtils.From");


        #line default
        #line hidden

        #line 95 "C:\dev\net\runtime.rebase\sdk\src\ServiceClientGenerator\Generators\AWSQueryRequestMarshaller.tt"
                    this.Write(this.ToStringHelper.ToStringWithCulture(member.Shape.KeyShape.GetPrimitiveType()));


        #line default
        #line hidden

        #line 95 "C:\dev\net\runtime.rebase\sdk\src\ServiceClientGenerator\Generators\AWSQueryRequestMarshaller.tt"
                    this.Write("(key));\r\n");


        #line default
        #line hidden

        #line 96 "C:\dev\net\runtime.rebase\sdk\src\ServiceClientGenerator\Generators\AWSQueryRequestMarshaller.tt"
                    this.Write(this.ToStringHelper.ToStringWithCulture(new string(' ', level * 4)));


        #line default
        #line hidden

        #line 96 "C:\dev\net\runtime.rebase\sdk\src\ServiceClientGenerator\Generators\AWSQueryRequestMarshaller.tt"
                    this.Write("                        if (hasValue)\r\n");


        #line default
        #line hidden

        #line 97 "C:\dev\net\runtime.rebase\sdk\src\ServiceClientGenerator\Generators\AWSQueryRequestMarshaller.tt"
                    this.Write(this.ToStringHelper.ToStringWithCulture(new string(' ', level * 4)));


        #line default
        #line hidden

        #line 97 "C:\dev\net\runtime.rebase\sdk\src\ServiceClientGenerator\Generators\AWSQueryRequestMarshaller.tt"
                    this.Write("                        {\r\n");


        #line default
        #line hidden

        #line 98 "C:\dev\net\runtime.rebase\sdk\src\ServiceClientGenerator\Generators\AWSQueryRequestMarshaller.tt"

                    if (member.Shape.ValueShape.IsStructure)
                    {
                        ProcessMembers(level + 3, mapValueContext, "value", member.Shape.ValueShape.Members);
                    }
                    else
                    {
        #line default
        #line hidden

        #line 106 "C:\dev\net\runtime.rebase\sdk\src\ServiceClientGenerator\Generators\AWSQueryRequestMarshaller.tt"
                        this.Write(this.ToStringHelper.ToStringWithCulture(new string(' ', level * 4)));


        #line default
        #line hidden

        #line 106 "C:\dev\net\runtime.rebase\sdk\src\ServiceClientGenerator\Generators\AWSQueryRequestMarshaller.tt"
                        this.Write("                            request.Parameters.Add(");


        #line default
        #line hidden

        #line 106 "C:\dev\net\runtime.rebase\sdk\src\ServiceClientGenerator\Generators\AWSQueryRequestMarshaller.tt"
                        this.Write(this.ToStringHelper.ToStringWithCulture(mapValueContext));


        #line default
        #line hidden

        #line 106 "C:\dev\net\runtime.rebase\sdk\src\ServiceClientGenerator\Generators\AWSQueryRequestMarshaller.tt"
                        this.Write(", StringUtils.From");


        #line default
        #line hidden

        #line 106 "C:\dev\net\runtime.rebase\sdk\src\ServiceClientGenerator\Generators\AWSQueryRequestMarshaller.tt"
                        this.Write(this.ToStringHelper.ToStringWithCulture(member.Shape.ValueShape.GetPrimitiveType()));


        #line default
        #line hidden

        #line 106 "C:\dev\net\runtime.rebase\sdk\src\ServiceClientGenerator\Generators\AWSQueryRequestMarshaller.tt"
                        this.Write("(value));\r\n");


        #line default
        #line hidden

        #line 107 "C:\dev\net\runtime.rebase\sdk\src\ServiceClientGenerator\Generators\AWSQueryRequestMarshaller.tt"
                    }


        #line default
        #line hidden

        #line 110 "C:\dev\net\runtime.rebase\sdk\src\ServiceClientGenerator\Generators\AWSQueryRequestMarshaller.tt"
                    this.Write(this.ToStringHelper.ToStringWithCulture(new string(' ', level * 4)));


        #line default
        #line hidden

        #line 110 "C:\dev\net\runtime.rebase\sdk\src\ServiceClientGenerator\Generators\AWSQueryRequestMarshaller.tt"
                    this.Write("                        }\r\n");


        #line default
        #line hidden

        #line 111 "C:\dev\net\runtime.rebase\sdk\src\ServiceClientGenerator\Generators\AWSQueryRequestMarshaller.tt"
                    this.Write(this.ToStringHelper.ToStringWithCulture(new string(' ', level * 4)));


        #line default
        #line hidden

        #line 111 "C:\dev\net\runtime.rebase\sdk\src\ServiceClientGenerator\Generators\AWSQueryRequestMarshaller.tt"
                    this.Write("                        mapIndex++;\r\n");


        #line default
        #line hidden

        #line 112 "C:\dev\net\runtime.rebase\sdk\src\ServiceClientGenerator\Generators\AWSQueryRequestMarshaller.tt"
                    this.Write(this.ToStringHelper.ToStringWithCulture(new string(' ', level * 4)));


        #line default
        #line hidden

        #line 112 "C:\dev\net\runtime.rebase\sdk\src\ServiceClientGenerator\Generators\AWSQueryRequestMarshaller.tt"
                    this.Write("                    }\r\n");


        #line default
        #line hidden

        #line 113 "C:\dev\net\runtime.rebase\sdk\src\ServiceClientGenerator\Generators\AWSQueryRequestMarshaller.tt"
                }
                else if (member.IsStructure)
                {
                    string context = ComposeContext(parameterContext, marshallName);
                    ProcessMembers(level + 1, context, variableName + "." + member.PropertyName, member.Shape.Members);
                }
                else
                {
                    string context = ComposeContext(parameterContext, marshallName);


        #line default
        #line hidden

        #line 124 "C:\dev\net\runtime.rebase\sdk\src\ServiceClientGenerator\Generators\AWSQueryRequestMarshaller.tt"
                    this.Write(this.ToStringHelper.ToStringWithCulture(new string(' ', level * 4)));


        #line default
        #line hidden

        #line 124 "C:\dev\net\runtime.rebase\sdk\src\ServiceClientGenerator\Generators\AWSQueryRequestMarshaller.tt"
                    this.Write("                    request.Parameters.Add(");


        #line default
        #line hidden

        #line 124 "C:\dev\net\runtime.rebase\sdk\src\ServiceClientGenerator\Generators\AWSQueryRequestMarshaller.tt"
                    this.Write(this.ToStringHelper.ToStringWithCulture(context));


        #line default
        #line hidden

        #line 124 "C:\dev\net\runtime.rebase\sdk\src\ServiceClientGenerator\Generators\AWSQueryRequestMarshaller.tt"
                    this.Write(", StringUtils.From");


        #line default
        #line hidden

        #line 124 "C:\dev\net\runtime.rebase\sdk\src\ServiceClientGenerator\Generators\AWSQueryRequestMarshaller.tt"
                    this.Write(this.ToStringHelper.ToStringWithCulture(member.GetPrimitiveType()));


        #line default
        #line hidden

        #line 124 "C:\dev\net\runtime.rebase\sdk\src\ServiceClientGenerator\Generators\AWSQueryRequestMarshaller.tt"
                    this.Write("(");


        #line default
        #line hidden

        #line 124 "C:\dev\net\runtime.rebase\sdk\src\ServiceClientGenerator\Generators\AWSQueryRequestMarshaller.tt"
                    this.Write(this.ToStringHelper.ToStringWithCulture(variableName));


        #line default
        #line hidden

        #line 124 "C:\dev\net\runtime.rebase\sdk\src\ServiceClientGenerator\Generators\AWSQueryRequestMarshaller.tt"
                    this.Write(".");


        #line default
        #line hidden

        #line 124 "C:\dev\net\runtime.rebase\sdk\src\ServiceClientGenerator\Generators\AWSQueryRequestMarshaller.tt"
                    this.Write(this.ToStringHelper.ToStringWithCulture(member.PropertyName));


        #line default
        #line hidden

        #line 124 "C:\dev\net\runtime.rebase\sdk\src\ServiceClientGenerator\Generators\AWSQueryRequestMarshaller.tt"
                    this.Write("));\r\n");


        #line default
        #line hidden

        #line 125 "C:\dev\net\runtime.rebase\sdk\src\ServiceClientGenerator\Generators\AWSQueryRequestMarshaller.tt"
                }


        #line default
        #line hidden

        #line 128 "C:\dev\net\runtime.rebase\sdk\src\ServiceClientGenerator\Generators\AWSQueryRequestMarshaller.tt"
                this.Write(this.ToStringHelper.ToStringWithCulture(new string(' ', level * 4)));


        #line default
        #line hidden

        #line 128 "C:\dev\net\runtime.rebase\sdk\src\ServiceClientGenerator\Generators\AWSQueryRequestMarshaller.tt"
                this.Write("                }\r\n");


        #line default
        #line hidden

        #line 129 "C:\dev\net\runtime.rebase\sdk\src\ServiceClientGenerator\Generators\AWSQueryRequestMarshaller.tt"
            }
        }
예제 #12
0
 public void SaveGeneratedCodeAsFileTest()
 {
     GeneratorHelpers.SaveGeneratedCodeAsFile("", "");
     Assert.Fail();
 }
예제 #13
0
        /// <summary>
        /// Create the template output
        /// </summary>
        public override string TransformText()
        {
            #line 6 "C:\code\dotnet\release-merging\sdk\src\ServiceClientGenerator\Generators\AWSQueryResponseUnmarshaller.tt"

            AddLicenseHeader();

            AddCommonUsingStatements();


            #line default
            #line hidden
            this.Write("namespace ");

            #line 11 "C:\code\dotnet\release-merging\sdk\src\ServiceClientGenerator\Generators\AWSQueryResponseUnmarshaller.tt"
            this.Write(this.ToStringHelper.ToStringWithCulture(this.Config.Namespace));

            #line default
            #line hidden
            this.Write(".Model.Internal.MarshallTransformations\r\n{\r\n    /// <summary>\r\n    /// Response U" +
                       "nmarshaller for ");

            #line 14 "C:\code\dotnet\release-merging\sdk\src\ServiceClientGenerator\Generators\AWSQueryResponseUnmarshaller.tt"
            this.Write(this.ToStringHelper.ToStringWithCulture(this.UnmarshallerBaseName));

            #line default
            #line hidden
            this.Write(" operation\r\n    /// </summary>  \r\n    public class ");

            #line 16 "C:\code\dotnet\release-merging\sdk\src\ServiceClientGenerator\Generators\AWSQueryResponseUnmarshaller.tt"
            this.Write(this.ToStringHelper.ToStringWithCulture(this.UnmarshallerBaseName));

            #line default
            #line hidden
            this.Write("ResponseUnmarshaller : XmlResponseUnmarshaller\r\n    {\r\n        public override Am" +
                       "azonWebServiceResponse Unmarshall(XmlUnmarshallerContext context)\r\n        {\r\n  " +
                       "          ");

            #line 20 "C:\code\dotnet\release-merging\sdk\src\ServiceClientGenerator\Generators\AWSQueryResponseUnmarshaller.tt"
            this.Write(this.ToStringHelper.ToStringWithCulture(this.UnmarshallerBaseName));

            #line default
            #line hidden
            this.Write("Response response = new ");

            #line 20 "C:\code\dotnet\release-merging\sdk\src\ServiceClientGenerator\Generators\AWSQueryResponseUnmarshaller.tt"
            this.Write(this.ToStringHelper.ToStringWithCulture(this.Operation.Name));

            #line default
            #line hidden
            this.Write(@"Response();

            context.Read();
            int targetDepth = context.CurrentDepth;
            while (context.ReadAtDepth(targetDepth))
            {
                if (context.IsStartElement)
                {                    
                    if(context.TestExpression(""");

            #line 28 "C:\code\dotnet\release-merging\sdk\src\ServiceClientGenerator\Generators\AWSQueryResponseUnmarshaller.tt"
            this.Write(this.ToStringHelper.ToStringWithCulture(this.UnmarshallerBaseName));

            #line default
            #line hidden
            this.Write(@"Result"", 2))
                    {
                        UnmarshallResult(context, response);                        
                        continue;
                    }
                    
                    if (context.TestExpression(""ResponseMetadata"", 2))
                    {
                        response.ResponseMetadata = ResponseMetadataUnmarshaller.Instance.Unmarshall(context);
                    }
                }
            }

            return response;
        }

");

            #line 44 "C:\code\dotnet\release-merging\sdk\src\ServiceClientGenerator\Generators\AWSQueryResponseUnmarshaller.tt"

            if (this.Structure == null || this.Structure.Members.Count == 0)
            {
            #line default
            #line hidden
                this.Write("\t\t[System.Diagnostics.CodeAnalysis.SuppressMessage(\"Microsoft.Usage\", \"CA1801:Rev" +
                           "iewUnusedParameters\", MessageId=\"response\")]\r\n");

            #line 49 "C:\code\dotnet\release-merging\sdk\src\ServiceClientGenerator\Generators\AWSQueryResponseUnmarshaller.tt"
            }


            #line default
            #line hidden
            this.Write("        private static void UnmarshallResult(XmlUnmarshallerContext context, ");

            #line 52 "C:\code\dotnet\release-merging\sdk\src\ServiceClientGenerator\Generators\AWSQueryResponseUnmarshaller.tt"
            this.Write(this.ToStringHelper.ToStringWithCulture(this.UnmarshallerBaseName));

            #line default
            #line hidden
            this.Write(@"Response response)
        {
            
            int originalDepth = context.CurrentDepth;
            int targetDepth = originalDepth + 1;
            
            if (context.IsStartOfDocument) 
               targetDepth += 2;
            
            while (context.ReadAtDepth(originalDepth))
            {
                if (context.IsStartElement || context.IsAttribute)
                {

");

            #line 66 "C:\code\dotnet\release-merging\sdk\src\ServiceClientGenerator\Generators\AWSQueryResponseUnmarshaller.tt"

            if (this.Structure != null)
            {
                if (this.IsWrapped)
                {
            #line default
            #line hidden
                    this.Write("                    if ( context.TestExpression(\"");

            #line 72 "C:\code\dotnet\release-merging\sdk\src\ServiceClientGenerator\Generators\AWSQueryResponseUnmarshaller.tt"
                    this.Write(this.ToStringHelper.ToStringWithCulture(this.Structure.MarshallName));

            #line default
            #line hidden
                    this.Write("\", targetDepth))\r\n                    {\r\n                        response.");

            #line 74 "C:\code\dotnet\release-merging\sdk\src\ServiceClientGenerator\Generators\AWSQueryResponseUnmarshaller.tt"
                    this.Write(this.ToStringHelper.ToStringWithCulture(MemberAccessorFor(this.Structure.Name)));

            #line default
            #line hidden
                    this.Write(" = ");

            #line 74 "C:\code\dotnet\release-merging\sdk\src\ServiceClientGenerator\Generators\AWSQueryResponseUnmarshaller.tt"
                    this.Write(this.ToStringHelper.ToStringWithCulture(this.Structure.Name));

            #line default
            #line hidden
                    this.Write("Unmarshaller.Instance.Unmarshall(context);\r\n                        continue;\r\n  " +
                               "                  }\r\n");

            #line 77 "C:\code\dotnet\release-merging\sdk\src\ServiceClientGenerator\Generators\AWSQueryResponseUnmarshaller.tt"
                }
                else
                {
                    foreach (var member in this.Structure.Members)
                    {
                        var testExpression = GeneratorHelpers.DetermineAWSQueryTestExpression(member);


            #line default
            #line hidden
                        this.Write("                    if (context.TestExpression(\"");

            #line 85 "C:\code\dotnet\release-merging\sdk\src\ServiceClientGenerator\Generators\AWSQueryResponseUnmarshaller.tt"
                        this.Write(this.ToStringHelper.ToStringWithCulture(testExpression));

            #line default
            #line hidden
                        this.Write("\", targetDepth))\r\n                    {\r\n                        var unmarshaller" +
                                   " = ");

            #line 87 "C:\code\dotnet\release-merging\sdk\src\ServiceClientGenerator\Generators\AWSQueryResponseUnmarshaller.tt"
                        this.Write(this.ToStringHelper.ToStringWithCulture(member.DetermineTypeUnmarshallerInstantiate()));

            #line default
            #line hidden
                        this.Write(";\r\n");

            #line 88 "C:\code\dotnet\release-merging\sdk\src\ServiceClientGenerator\Generators\AWSQueryResponseUnmarshaller.tt"

                        if (member.IsMap || member.IsList)
                        {
            #line default
            #line hidden
                            this.Write("                        var item = unmarshaller.Unmarshall(context);\r\n           " +
                                       "             response.");

            #line 93 "C:\code\dotnet\release-merging\sdk\src\ServiceClientGenerator\Generators\AWSQueryResponseUnmarshaller.tt"
                            this.Write(this.ToStringHelper.ToStringWithCulture(MemberAccessorFor(member.PropertyName)));

            #line default
            #line hidden
                            this.Write(".Add(item);\r\n");

            #line 94 "C:\code\dotnet\release-merging\sdk\src\ServiceClientGenerator\Generators\AWSQueryResponseUnmarshaller.tt"
                        }
                        else
                        {
            #line default
            #line hidden
                            this.Write("                        response.");

            #line 99 "C:\code\dotnet\release-merging\sdk\src\ServiceClientGenerator\Generators\AWSQueryResponseUnmarshaller.tt"
                            this.Write(this.ToStringHelper.ToStringWithCulture(MemberAccessorFor(member.PropertyName)));

            #line default
            #line hidden
                            this.Write(" = unmarshaller.Unmarshall(context);\r\n");

            #line 100 "C:\code\dotnet\release-merging\sdk\src\ServiceClientGenerator\Generators\AWSQueryResponseUnmarshaller.tt"
                        }


            #line default
            #line hidden
                        this.Write("                        continue;\r\n                    }\r\n");

            #line 105 "C:\code\dotnet\release-merging\sdk\src\ServiceClientGenerator\Generators\AWSQueryResponseUnmarshaller.tt"
                    }
                }
            }


            #line default
            #line hidden
            this.Write(@"                } 
           }

            return;
        }


        public override AmazonServiceException UnmarshallException(XmlUnmarshallerContext context, Exception innerException, HttpStatusCode statusCode)
        {
            ErrorResponse errorResponse = ErrorResponseUnmarshaller.GetInstance().Unmarshall(context);
");

            #line 120 "C:\code\dotnet\release-merging\sdk\src\ServiceClientGenerator\Generators\AWSQueryResponseUnmarshaller.tt"

            foreach (var exception in this.Operation.Exceptions)
            {
            #line default
            #line hidden
                this.Write("            if (errorResponse.Code != null && errorResponse.Code.Equals(\"");

            #line 124 "C:\code\dotnet\release-merging\sdk\src\ServiceClientGenerator\Generators\AWSQueryResponseUnmarshaller.tt"
                this.Write(this.ToStringHelper.ToStringWithCulture(exception.Code));

            #line default
            #line hidden
                this.Write("\"))\r\n            {\r\n                return new ");

            #line 126 "C:\code\dotnet\release-merging\sdk\src\ServiceClientGenerator\Generators\AWSQueryResponseUnmarshaller.tt"
                this.Write(this.ToStringHelper.ToStringWithCulture(exception.Name));

            #line default
            #line hidden
                this.Write("(errorResponse.Message, innerException, errorResponse.Type, errorResponse.Code, e" +
                           "rrorResponse.RequestId, statusCode);\r\n            }\r\n");

            #line 128 "C:\code\dotnet\release-merging\sdk\src\ServiceClientGenerator\Generators\AWSQueryResponseUnmarshaller.tt"
            }


            #line default
            #line hidden
            this.Write("            return new Amazon");

            #line 131 "C:\code\dotnet\release-merging\sdk\src\ServiceClientGenerator\Generators\AWSQueryResponseUnmarshaller.tt"
            this.Write(this.ToStringHelper.ToStringWithCulture(this.Config.BaseName));

            #line default
            #line hidden
            this.Write("Exception(errorResponse.Message, innerException, errorResponse.Type, errorRespons" +
                       "e.Code, errorResponse.RequestId, statusCode);\r\n        }\r\n");

            #line 133 "C:\code\dotnet\release-merging\sdk\src\ServiceClientGenerator\Generators\AWSQueryResponseUnmarshaller.tt"

            this.AddResponseSingletonMethod();


            #line default
            #line hidden
            this.Write("    }\r\n}\r\n");
            return(this.GenerationEnvironment.ToString());
        }
예제 #14
0
        /// <summary>
        /// Create the template output
        /// </summary>
        public override string TransformText()
        {
            #line 6 "C:\dev\codecommit\unityv3\generator\ServiceClientGeneratorLib\Generators\SourceFiles\ServiceClients.tt"

            AddLicenseHeader();


            #line default
            #line hidden
            this.Write("\r\n\r\nusing System;\r\nusing System.Collections.Generic;\r\n\r\nusing ");

            #line 14 "C:\dev\codecommit\unityv3\generator\ServiceClientGeneratorLib\Generators\SourceFiles\ServiceClients.tt"
            this.Write(this.ToStringHelper.ToStringWithCulture(this.Config.Namespace));

            #line default
            #line hidden
            this.Write(".Model;\r\nusing ");

            #line 15 "C:\dev\codecommit\unityv3\generator\ServiceClientGeneratorLib\Generators\SourceFiles\ServiceClients.tt"
            this.Write(this.ToStringHelper.ToStringWithCulture(this.Config.Namespace));

            #line default
            #line hidden
            this.Write(".Model.Internal.MarshallTransformations;\r\nusing Amazon.Runtime;\r\nusing Amazon.Run" +
                       "time.Internal;\r\nusing Amazon.Runtime.Internal.Auth;\r\nusing Amazon.Runtime.Intern" +
                       "al.Transform;\r\n\r\nnamespace ");

            #line 21 "C:\dev\codecommit\unityv3\generator\ServiceClientGeneratorLib\Generators\SourceFiles\ServiceClients.tt"
            this.Write(this.ToStringHelper.ToStringWithCulture(this.Config.Namespace));

            #line default
            #line hidden
            this.Write("\r\n{\r\n");

            #line 23 "C:\dev\codecommit\unityv3\generator\ServiceClientGeneratorLib\Generators\SourceFiles\ServiceClients.tt"
            this.FormatServiceClientDocumentation(this.Config.ServiceModel.Documentation);

            #line default
            #line hidden
            this.Write("\tpublic partial class Amazon");

            #line 24 "C:\dev\codecommit\unityv3\generator\ServiceClientGeneratorLib\Generators\SourceFiles\ServiceClients.tt"
            this.Write(this.ToStringHelper.ToStringWithCulture(this.Config.BaseName));

            #line default
            #line hidden
            this.Write("Client : AmazonServiceClient, IAmazon");

            #line 24 "C:\dev\codecommit\unityv3\generator\ServiceClientGeneratorLib\Generators\SourceFiles\ServiceClients.tt"
            this.Write(this.ToStringHelper.ToStringWithCulture(this.Config.BaseName));

            #line default
            #line hidden
            this.Write("\r\n\t{\r\n");

            #line 26 "C:\dev\codecommit\unityv3\generator\ServiceClientGeneratorLib\Generators\SourceFiles\ServiceClients.tt"

            // Creates constructors for the service if the model specifies to do so
            if (this.Config.GenerateConstructors)
            {
            #line default
            #line hidden
                this.Write("        #region Constructors\r\n\r\n        /// <summary>\r\n        /// Constructs Ama" +
                           "zon");

            #line 34 "C:\dev\codecommit\unityv3\generator\ServiceClientGeneratorLib\Generators\SourceFiles\ServiceClients.tt"
                this.Write(this.ToStringHelper.ToStringWithCulture(this.Config.BaseName));

            #line default
            #line hidden
                this.Write(@"Client with the credentials loaded from the application's
        /// default configuration, and if unsuccessful from the Instance Profile service on an EC2 instance.
        /// 
        /// Example App.config with credentials set. 
        /// <code>
        /// &lt;?xml version=""1.0"" encoding=""utf-8"" ?&gt;
        /// &lt;configuration&gt;
        ///     &lt;appSettings&gt;
        ///         &lt;add key=""AWSProfileName"" value=""AWS Default""/&gt;
        ///     &lt;/appSettings&gt;
        /// &lt;/configuration&gt;
        /// </code>
        ///
        /// </summary>
        public Amazon");

            #line 48 "C:\dev\codecommit\unityv3\generator\ServiceClientGeneratorLib\Generators\SourceFiles\ServiceClients.tt"
                this.Write(this.ToStringHelper.ToStringWithCulture(this.Config.BaseName));

            #line default
            #line hidden
                this.Write("Client()\r\n            : base(FallbackCredentialsFactory.GetCredentials(), new Ama" +
                           "zon");

            #line 49 "C:\dev\codecommit\unityv3\generator\ServiceClientGeneratorLib\Generators\SourceFiles\ServiceClients.tt"
                this.Write(this.ToStringHelper.ToStringWithCulture(this.Config.BaseName));

            #line default
            #line hidden
                this.Write("Config()) { }\r\n\r\n        /// <summary>\r\n        /// Constructs Amazon");

            #line 52 "C:\dev\codecommit\unityv3\generator\ServiceClientGeneratorLib\Generators\SourceFiles\ServiceClients.tt"
                this.Write(this.ToStringHelper.ToStringWithCulture(this.Config.BaseName));

            #line default
            #line hidden
                this.Write(@"Client with the credentials loaded from the application's
        /// default configuration, and if unsuccessful from the Instance Profile service on an EC2 instance.
        /// 
        /// Example App.config with credentials set. 
        /// <code>
        /// &lt;?xml version=""1.0"" encoding=""utf-8"" ?&gt;
        /// &lt;configuration&gt;
        ///     &lt;appSettings&gt;
        ///         &lt;add key=""AWSProfileName"" value=""AWS Default""/&gt;
        ///     &lt;/appSettings&gt;
        /// &lt;/configuration&gt;
        /// </code>
        ///
        /// </summary>
        /// <param name=""region"">The region to connect.</param>
        public Amazon");

            #line 67 "C:\dev\codecommit\unityv3\generator\ServiceClientGeneratorLib\Generators\SourceFiles\ServiceClients.tt"
                this.Write(this.ToStringHelper.ToStringWithCulture(this.Config.BaseName));

            #line default
            #line hidden
                this.Write("Client(RegionEndpoint region)\r\n            : base(FallbackCredentialsFactory.GetC" +
                           "redentials(), new Amazon");

            #line 68 "C:\dev\codecommit\unityv3\generator\ServiceClientGeneratorLib\Generators\SourceFiles\ServiceClients.tt"
                this.Write(this.ToStringHelper.ToStringWithCulture(this.Config.BaseName));

            #line default
            #line hidden
                this.Write("Config{RegionEndpoint = region}) { }\r\n\r\n        /// <summary>\r\n        /// Constr" +
                           "ucts Amazon");

            #line 71 "C:\dev\codecommit\unityv3\generator\ServiceClientGeneratorLib\Generators\SourceFiles\ServiceClients.tt"
                this.Write(this.ToStringHelper.ToStringWithCulture(this.Config.BaseName));

            #line default
            #line hidden
                this.Write(@"Client with the credentials loaded from the application's
        /// default configuration, and if unsuccessful from the Instance Profile service on an EC2 instance.
        /// 
        /// Example App.config with credentials set. 
        /// <code>
        /// &lt;?xml version=""1.0"" encoding=""utf-8"" ?&gt;
        /// &lt;configuration&gt;
        ///     &lt;appSettings&gt;
        ///         &lt;add key=""AWSProfileName"" value=""AWS Default""/&gt;
        ///     &lt;/appSettings&gt;
        /// &lt;/configuration&gt;
        /// </code>
        ///
        /// </summary>
        /// <param name=""config"">The Amazon");

            #line 85 "C:\dev\codecommit\unityv3\generator\ServiceClientGeneratorLib\Generators\SourceFiles\ServiceClients.tt"
                this.Write(this.ToStringHelper.ToStringWithCulture(this.Config.BaseName));

            #line default
            #line hidden
                this.Write("Client Configuration Object</param>\r\n        public Amazon");

            #line 86 "C:\dev\codecommit\unityv3\generator\ServiceClientGeneratorLib\Generators\SourceFiles\ServiceClients.tt"
                this.Write(this.ToStringHelper.ToStringWithCulture(this.Config.BaseName));

            #line default
            #line hidden
                this.Write("Client(Amazon");

            #line 86 "C:\dev\codecommit\unityv3\generator\ServiceClientGeneratorLib\Generators\SourceFiles\ServiceClients.tt"
                this.Write(this.ToStringHelper.ToStringWithCulture(this.Config.BaseName));

            #line default
            #line hidden
                this.Write("Config config)\r\n            : base(FallbackCredentialsFactory.GetCredentials(), c" +
                           "onfig) { }\r\n\r\n        /// <summary>\r\n        /// Constructs Amazon");

            #line 90 "C:\dev\codecommit\unityv3\generator\ServiceClientGeneratorLib\Generators\SourceFiles\ServiceClients.tt"
                this.Write(this.ToStringHelper.ToStringWithCulture(this.Config.BaseName));

            #line default
            #line hidden
                this.Write("Client with AWS Credentials\r\n        /// </summary>\r\n        /// <param name=\"cre" +
                           "dentials\">AWS Credentials</param>\r\n        public Amazon");

            #line 93 "C:\dev\codecommit\unityv3\generator\ServiceClientGeneratorLib\Generators\SourceFiles\ServiceClients.tt"
                this.Write(this.ToStringHelper.ToStringWithCulture(this.Config.BaseName));

            #line default
            #line hidden
                this.Write("Client(AWSCredentials credentials)\r\n            : this(credentials, new Amazon");

            #line 94 "C:\dev\codecommit\unityv3\generator\ServiceClientGeneratorLib\Generators\SourceFiles\ServiceClients.tt"
                this.Write(this.ToStringHelper.ToStringWithCulture(this.Config.BaseName));

            #line default
            #line hidden
                this.Write("Config())\r\n        {\r\n        }\r\n\r\n        /// <summary>\r\n        /// Constructs " +
                           "Amazon");

            #line 99 "C:\dev\codecommit\unityv3\generator\ServiceClientGeneratorLib\Generators\SourceFiles\ServiceClients.tt"
                this.Write(this.ToStringHelper.ToStringWithCulture(this.Config.BaseName));

            #line default
            #line hidden
                this.Write("Client with AWS Credentials\r\n        /// </summary>\r\n        /// <param name=\"cre" +
                           "dentials\">AWS Credentials</param>\r\n        /// <param name=\"region\">The region t" +
                           "o connect.</param>\r\n        public Amazon");

            #line 103 "C:\dev\codecommit\unityv3\generator\ServiceClientGeneratorLib\Generators\SourceFiles\ServiceClients.tt"
                this.Write(this.ToStringHelper.ToStringWithCulture(this.Config.BaseName));

            #line default
            #line hidden
                this.Write("Client(AWSCredentials credentials, RegionEndpoint region)\r\n            : this(cre" +
                           "dentials, new Amazon");

            #line 104 "C:\dev\codecommit\unityv3\generator\ServiceClientGeneratorLib\Generators\SourceFiles\ServiceClients.tt"
                this.Write(this.ToStringHelper.ToStringWithCulture(this.Config.BaseName));

            #line default
            #line hidden
                this.Write("Config{RegionEndpoint = region})\r\n        {\r\n        }\r\n\r\n        /// <summary>\r\n" +
                           "        /// Constructs Amazon");

            #line 109 "C:\dev\codecommit\unityv3\generator\ServiceClientGeneratorLib\Generators\SourceFiles\ServiceClients.tt"
                this.Write(this.ToStringHelper.ToStringWithCulture(this.Config.BaseName));

            #line default
            #line hidden
                this.Write("Client with AWS Credentials and an\r\n        /// Amazon");

            #line 110 "C:\dev\codecommit\unityv3\generator\ServiceClientGeneratorLib\Generators\SourceFiles\ServiceClients.tt"
                this.Write(this.ToStringHelper.ToStringWithCulture(this.Config.BaseName));

            #line default
            #line hidden
                this.Write("Client Configuration object.\r\n        /// </summary>\r\n        /// <param name=\"cr" +
                           "edentials\">AWS Credentials</param>\r\n        /// <param name=\"clientConfig\">The A" +
                           "mazon");

            #line 113 "C:\dev\codecommit\unityv3\generator\ServiceClientGeneratorLib\Generators\SourceFiles\ServiceClients.tt"
                this.Write(this.ToStringHelper.ToStringWithCulture(this.Config.BaseName));

            #line default
            #line hidden
                this.Write("Client Configuration Object</param>\r\n        public Amazon");

            #line 114 "C:\dev\codecommit\unityv3\generator\ServiceClientGeneratorLib\Generators\SourceFiles\ServiceClients.tt"
                this.Write(this.ToStringHelper.ToStringWithCulture(this.Config.BaseName));

            #line default
            #line hidden
                this.Write("Client(AWSCredentials credentials, Amazon");

            #line 114 "C:\dev\codecommit\unityv3\generator\ServiceClientGeneratorLib\Generators\SourceFiles\ServiceClients.tt"
                this.Write(this.ToStringHelper.ToStringWithCulture(this.Config.BaseName));

            #line default
            #line hidden
                this.Write("Config clientConfig)\r\n            : base(credentials, clientConfig)\r\n        {\r\n " +
                           "       }\r\n\r\n        /// <summary>\r\n        /// Constructs Amazon");

            #line 120 "C:\dev\codecommit\unityv3\generator\ServiceClientGeneratorLib\Generators\SourceFiles\ServiceClients.tt"
                this.Write(this.ToStringHelper.ToStringWithCulture(this.Config.BaseName));

            #line default
            #line hidden
                this.Write("Client with AWS Access Key ID and AWS Secret Key\r\n        /// </summary>\r\n       " +
                           " /// <param name=\"awsAccessKeyId\">AWS Access Key ID</param>\r\n        /// <param " +
                           "name=\"awsSecretAccessKey\">AWS Secret Access Key</param>\r\n        public Amazon");

            #line 124 "C:\dev\codecommit\unityv3\generator\ServiceClientGeneratorLib\Generators\SourceFiles\ServiceClients.tt"
                this.Write(this.ToStringHelper.ToStringWithCulture(this.Config.BaseName));

            #line default
            #line hidden
                this.Write("Client(string awsAccessKeyId, string awsSecretAccessKey)\r\n            : this(awsA" +
                           "ccessKeyId, awsSecretAccessKey, new Amazon");

            #line 125 "C:\dev\codecommit\unityv3\generator\ServiceClientGeneratorLib\Generators\SourceFiles\ServiceClients.tt"
                this.Write(this.ToStringHelper.ToStringWithCulture(this.Config.BaseName));

            #line default
            #line hidden
                this.Write("Config())\r\n        {\r\n        }\r\n\r\n        /// <summary>\r\n        /// Constructs " +
                           "Amazon");

            #line 130 "C:\dev\codecommit\unityv3\generator\ServiceClientGeneratorLib\Generators\SourceFiles\ServiceClients.tt"
                this.Write(this.ToStringHelper.ToStringWithCulture(this.Config.BaseName));

            #line default
            #line hidden
                this.Write(@"Client with AWS Access Key ID and AWS Secret Key
        /// </summary>
        /// <param name=""awsAccessKeyId"">AWS Access Key ID</param>
        /// <param name=""awsSecretAccessKey"">AWS Secret Access Key</param>
        /// <param name=""region"">The region to connect.</param>
        public Amazon");

            #line 135 "C:\dev\codecommit\unityv3\generator\ServiceClientGeneratorLib\Generators\SourceFiles\ServiceClients.tt"
                this.Write(this.ToStringHelper.ToStringWithCulture(this.Config.BaseName));

            #line default
            #line hidden
                this.Write("Client(string awsAccessKeyId, string awsSecretAccessKey, RegionEndpoint region)\r\n" +
                           "            : this(awsAccessKeyId, awsSecretAccessKey, new Amazon");

            #line 136 "C:\dev\codecommit\unityv3\generator\ServiceClientGeneratorLib\Generators\SourceFiles\ServiceClients.tt"
                this.Write(this.ToStringHelper.ToStringWithCulture(this.Config.BaseName));

            #line default
            #line hidden
                this.Write("Config() {RegionEndpoint=region})\r\n        {\r\n        }\r\n\r\n        /// <summary>\r" +
                           "\n        /// Constructs Amazon");

            #line 141 "C:\dev\codecommit\unityv3\generator\ServiceClientGeneratorLib\Generators\SourceFiles\ServiceClients.tt"
                this.Write(this.ToStringHelper.ToStringWithCulture(this.Config.BaseName));

            #line default
            #line hidden
                this.Write("Client with AWS Access Key ID, AWS Secret Key and an\r\n        /// Amazon");

            #line 142 "C:\dev\codecommit\unityv3\generator\ServiceClientGeneratorLib\Generators\SourceFiles\ServiceClients.tt"
                this.Write(this.ToStringHelper.ToStringWithCulture(this.Config.BaseName));

            #line default
            #line hidden
                this.Write("Client Configuration object. \r\n        /// </summary>\r\n        /// <param name=\"a" +
                           "wsAccessKeyId\">AWS Access Key ID</param>\r\n        /// <param name=\"awsSecretAcce" +
                           "ssKey\">AWS Secret Access Key</param>\r\n        /// <param name=\"clientConfig\">The" +
                           " Amazon");

            #line 146 "C:\dev\codecommit\unityv3\generator\ServiceClientGeneratorLib\Generators\SourceFiles\ServiceClients.tt"
                this.Write(this.ToStringHelper.ToStringWithCulture(this.Config.BaseName));

            #line default
            #line hidden
                this.Write("Client Configuration Object</param>\r\n        public Amazon");

            #line 147 "C:\dev\codecommit\unityv3\generator\ServiceClientGeneratorLib\Generators\SourceFiles\ServiceClients.tt"
                this.Write(this.ToStringHelper.ToStringWithCulture(this.Config.BaseName));

            #line default
            #line hidden
                this.Write("Client(string awsAccessKeyId, string awsSecretAccessKey, Amazon");

            #line 147 "C:\dev\codecommit\unityv3\generator\ServiceClientGeneratorLib\Generators\SourceFiles\ServiceClients.tt"
                this.Write(this.ToStringHelper.ToStringWithCulture(this.Config.BaseName));

            #line default
            #line hidden
                this.Write("Config clientConfig)\r\n            : base(awsAccessKeyId, awsSecretAccessKey, clie" +
                           "ntConfig)\r\n        {\r\n        }\r\n\r\n        /// <summary>\r\n        /// Constructs" +
                           " Amazon");

            #line 153 "C:\dev\codecommit\unityv3\generator\ServiceClientGeneratorLib\Generators\SourceFiles\ServiceClients.tt"
                this.Write(this.ToStringHelper.ToStringWithCulture(this.Config.BaseName));

            #line default
            #line hidden
                this.Write(@"Client with AWS Access Key ID and AWS Secret Key
        /// </summary>
        /// <param name=""awsAccessKeyId"">AWS Access Key ID</param>
        /// <param name=""awsSecretAccessKey"">AWS Secret Access Key</param>
        /// <param name=""awsSessionToken"">AWS Session Token</param>
        public Amazon");

            #line 158 "C:\dev\codecommit\unityv3\generator\ServiceClientGeneratorLib\Generators\SourceFiles\ServiceClients.tt"
                this.Write(this.ToStringHelper.ToStringWithCulture(this.Config.BaseName));

            #line default
            #line hidden
                this.Write("Client(string awsAccessKeyId, string awsSecretAccessKey, string awsSessionToken)\r" +
                           "\n            : this(awsAccessKeyId, awsSecretAccessKey, awsSessionToken, new Ama" +
                           "zon");

            #line 159 "C:\dev\codecommit\unityv3\generator\ServiceClientGeneratorLib\Generators\SourceFiles\ServiceClients.tt"
                this.Write(this.ToStringHelper.ToStringWithCulture(this.Config.BaseName));

            #line default
            #line hidden
                this.Write("Config())\r\n        {\r\n        }\r\n\r\n        /// <summary>\r\n        /// Constructs " +
                           "Amazon");

            #line 164 "C:\dev\codecommit\unityv3\generator\ServiceClientGeneratorLib\Generators\SourceFiles\ServiceClients.tt"
                this.Write(this.ToStringHelper.ToStringWithCulture(this.Config.BaseName));

            #line default
            #line hidden
                this.Write(@"Client with AWS Access Key ID and AWS Secret Key
        /// </summary>
        /// <param name=""awsAccessKeyId"">AWS Access Key ID</param>
        /// <param name=""awsSecretAccessKey"">AWS Secret Access Key</param>
        /// <param name=""awsSessionToken"">AWS Session Token</param>
        /// <param name=""region"">The region to connect.</param>
        public Amazon");

            #line 170 "C:\dev\codecommit\unityv3\generator\ServiceClientGeneratorLib\Generators\SourceFiles\ServiceClients.tt"
                this.Write(this.ToStringHelper.ToStringWithCulture(this.Config.BaseName));

            #line default
            #line hidden
                this.Write("Client(string awsAccessKeyId, string awsSecretAccessKey, string awsSessionToken, " +
                           "RegionEndpoint region)\r\n            : this(awsAccessKeyId, awsSecretAccessKey, a" +
                           "wsSessionToken, new Amazon");

            #line 171 "C:\dev\codecommit\unityv3\generator\ServiceClientGeneratorLib\Generators\SourceFiles\ServiceClients.tt"
                this.Write(this.ToStringHelper.ToStringWithCulture(this.Config.BaseName));

            #line default
            #line hidden
                this.Write("Config{RegionEndpoint = region})\r\n        {\r\n        }\r\n\r\n        /// <summary>\r\n" +
                           "        /// Constructs Amazon");

            #line 176 "C:\dev\codecommit\unityv3\generator\ServiceClientGeneratorLib\Generators\SourceFiles\ServiceClients.tt"
                this.Write(this.ToStringHelper.ToStringWithCulture(this.Config.BaseName));

            #line default
            #line hidden
                this.Write("Client with AWS Access Key ID, AWS Secret Key and an\r\n        /// Amazon");

            #line 177 "C:\dev\codecommit\unityv3\generator\ServiceClientGeneratorLib\Generators\SourceFiles\ServiceClients.tt"
                this.Write(this.ToStringHelper.ToStringWithCulture(this.Config.BaseName));

            #line default
            #line hidden
                this.Write(@"Client Configuration object. 
        /// </summary>
        /// <param name=""awsAccessKeyId"">AWS Access Key ID</param>
        /// <param name=""awsSecretAccessKey"">AWS Secret Access Key</param>
        /// <param name=""awsSessionToken"">AWS Session Token</param>
        /// <param name=""clientConfig"">The Amazon");

            #line 182 "C:\dev\codecommit\unityv3\generator\ServiceClientGeneratorLib\Generators\SourceFiles\ServiceClients.tt"
                this.Write(this.ToStringHelper.ToStringWithCulture(this.Config.BaseName));

            #line default
            #line hidden
                this.Write("Client Configuration Object</param>\r\n        public Amazon");

            #line 183 "C:\dev\codecommit\unityv3\generator\ServiceClientGeneratorLib\Generators\SourceFiles\ServiceClients.tt"
                this.Write(this.ToStringHelper.ToStringWithCulture(this.Config.BaseName));

            #line default
            #line hidden
                this.Write("Client(string awsAccessKeyId, string awsSecretAccessKey, string awsSessionToken, " +
                           "Amazon");

            #line 183 "C:\dev\codecommit\unityv3\generator\ServiceClientGeneratorLib\Generators\SourceFiles\ServiceClients.tt"
                this.Write(this.ToStringHelper.ToStringWithCulture(this.Config.BaseName));

            #line default
            #line hidden
                this.Write("Config clientConfig)\r\n            : base(awsAccessKeyId, awsSecretAccessKey, awsS" +
                           "essionToken, clientConfig)\r\n        {\r\n        }\r\n\r\n        #endregion\r\n");

            #line 189 "C:\dev\codecommit\unityv3\generator\ServiceClientGeneratorLib\Generators\SourceFiles\ServiceClients.tt"
            }


            #line default
            #line hidden
            this.Write("\r\n        #region Overrides\r\n\r\n        \r\n        /// <summary>\r\n        /// Creat" +
                       "es the signer for the service.\r\n        /// </summary>\r\n        protected overri" +
                       "de AbstractAWSSigner CreateSigner()\r\n        {\r\n            return new ");

            #line 201 "C:\dev\codecommit\unityv3\generator\ServiceClientGeneratorLib\Generators\SourceFiles\ServiceClients.tt"
            this.Write(this.ToStringHelper.ToStringWithCulture(GeneratorHelpers.DetermineSigner(this.Config.ServiceModel.SignatureVersion, this.Config.BaseName)));

            #line default
            #line hidden
            this.Write("();\r\n        }\r\n\r\n");

            #line 204 "C:\dev\codecommit\unityv3\generator\ServiceClientGeneratorLib\Generators\SourceFiles\ServiceClients.tt"

            if (this.Config.ServiceModel.Customizations.PipelineOverride != null)
            {
            #line default
            #line hidden
                this.Write("        /// <summary>\r\n        /// Customize the pipeline\r\n        /// </summary>" +
                           "\r\n        /// <param name=\"pipeline\"></param>\r\n        protected override void C" +
                           "ustomizeRuntimePipeline(RuntimePipeline pipeline)\r\n        {\r\n");

            #line 214 "C:\dev\codecommit\unityv3\generator\ServiceClientGeneratorLib\Generators\SourceFiles\ServiceClients.tt"

                var pipelineOverrides = this.Config.ServiceModel.Customizations.PipelineOverride;
                foreach (var o in pipelineOverrides.Overrides)
                {
                    if (o.OverrideMethod == "remove")
                    {
            #line default
            #line hidden
                        this.Write("            pipeline.");

            #line 221 "C:\dev\codecommit\unityv3\generator\ServiceClientGeneratorLib\Generators\SourceFiles\ServiceClients.tt"
                        this.Write(this.ToStringHelper.ToStringWithCulture(o.FormattedOverrideMethod));

            #line default
            #line hidden
                        this.Write("();\r\n");

            #line 222 "C:\dev\codecommit\unityv3\generator\ServiceClientGeneratorLib\Generators\SourceFiles\ServiceClients.tt"
                    }
                    else
                    {
            #line default
            #line hidden
                        this.Write("            pipeline.");

            #line 227 "C:\dev\codecommit\unityv3\generator\ServiceClientGeneratorLib\Generators\SourceFiles\ServiceClients.tt"
                        this.Write(this.ToStringHelper.ToStringWithCulture(o.FormattedOverrideMethod));

            #line default
            #line hidden
                        this.Write("(new ");

            #line 227 "C:\dev\codecommit\unityv3\generator\ServiceClientGeneratorLib\Generators\SourceFiles\ServiceClients.tt"
                        this.Write(this.ToStringHelper.ToStringWithCulture(o.NewType));

            #line default
            #line hidden
                        this.Write("(");

            #line 227 "C:\dev\codecommit\unityv3\generator\ServiceClientGeneratorLib\Generators\SourceFiles\ServiceClients.tt"
                        this.Write(this.ToStringHelper.ToStringWithCulture(o.ConstructorInput));

            #line default
            #line hidden
                        this.Write("));\r\n");

            #line 228 "C:\dev\codecommit\unityv3\generator\ServiceClientGeneratorLib\Generators\SourceFiles\ServiceClients.tt"
                    }
                }


            #line default
            #line hidden
                this.Write("        }\t\r\n");

            #line 233 "C:\dev\codecommit\unityv3\generator\ServiceClientGeneratorLib\Generators\SourceFiles\ServiceClients.tt"
            }


            #line default
            #line hidden
            this.Write(@"
        #endregion

        #region Dispose

        /// <summary>
        /// Disposes the service client.
        /// </summary>
        protected override void Dispose(bool disposing)
        {
            base.Dispose(disposing);
        }

        #endregion

        ");

            #line 251 "C:\dev\codecommit\unityv3\generator\ServiceClientGeneratorLib\Generators\SourceFiles\ServiceClients.tt"

            // Generates methods for each operation in the model
            foreach (var operation in this.Config.ServiceModel.Operations)
            {
            #line default
            #line hidden
                this.Write("\r\n        #region  ");

            #line 257 "C:\dev\codecommit\unityv3\generator\ServiceClientGeneratorLib\Generators\SourceFiles\ServiceClients.tt"
                this.Write(this.ToStringHelper.ToStringWithCulture(operation.Name));

            #line default
            #line hidden
                this.Write("\r\n");

            #line 258 "C:\dev\codecommit\unityv3\generator\ServiceClientGeneratorLib\Generators\SourceFiles\ServiceClients.tt"

                if (this.Config.ServiceModel.Customizations.CreateNoArgOverload(operation.Name))
                {
                    this.FormatOperationDocumentationSync(operation, false);
                    if (operation.IsDeprecated)
                    {
            #line default
            #line hidden
                        this.Write("\t\t[Obsolete(\"");

            #line 265 "C:\dev\codecommit\unityv3\generator\ServiceClientGeneratorLib\Generators\SourceFiles\ServiceClients.tt"
                        this.Write(this.ToStringHelper.ToStringWithCulture(operation.DeprecationMessage));

            #line default
            #line hidden
                        this.Write("\")]\r\n");

            #line 266 "C:\dev\codecommit\unityv3\generator\ServiceClientGeneratorLib\Generators\SourceFiles\ServiceClients.tt"
                    }


            #line default
            #line hidden
                    this.Write("        public ");

            #line 269 "C:\dev\codecommit\unityv3\generator\ServiceClientGeneratorLib\Generators\SourceFiles\ServiceClients.tt"
                    this.Write(this.ToStringHelper.ToStringWithCulture(operation.Name));

            #line default
            #line hidden
                    this.Write("Response ");

            #line 269 "C:\dev\codecommit\unityv3\generator\ServiceClientGeneratorLib\Generators\SourceFiles\ServiceClients.tt"
                    this.Write(this.ToStringHelper.ToStringWithCulture(operation.Name));

            #line default
            #line hidden
                    this.Write("()\r\n        {\r\n            return ");

            #line 271 "C:\dev\codecommit\unityv3\generator\ServiceClientGeneratorLib\Generators\SourceFiles\ServiceClients.tt"
                    this.Write(this.ToStringHelper.ToStringWithCulture(operation.Name));

            #line default
            #line hidden
                    this.Write("(new ");

            #line 271 "C:\dev\codecommit\unityv3\generator\ServiceClientGeneratorLib\Generators\SourceFiles\ServiceClients.tt"
                    this.Write(this.ToStringHelper.ToStringWithCulture(operation.Name));

            #line default
            #line hidden
                    this.Write("Request());\r\n        }\r\n");

            #line 273 "C:\dev\codecommit\unityv3\generator\ServiceClientGeneratorLib\Generators\SourceFiles\ServiceClients.tt"
                }
                AddSimpleClientMethods(operation, true);


            #line default
            #line hidden

            #line 277 "C:\dev\codecommit\unityv3\generator\ServiceClientGeneratorLib\Generators\SourceFiles\ServiceClients.tt"

                this.FormatOperationDocumentationSync(operation, true);
                if (operation.IsDeprecated)
                {
            #line default
            #line hidden
                    this.Write("\t\t[Obsolete(\"");

            #line 282 "C:\dev\codecommit\unityv3\generator\ServiceClientGeneratorLib\Generators\SourceFiles\ServiceClients.tt"
                    this.Write(this.ToStringHelper.ToStringWithCulture(operation.DeprecationMessage));

            #line default
            #line hidden
                    this.Write("\")]\r\n");

            #line 283 "C:\dev\codecommit\unityv3\generator\ServiceClientGeneratorLib\Generators\SourceFiles\ServiceClients.tt"
                }


            #line default
            #line hidden
                this.Write("        ");

            #line 286 "C:\dev\codecommit\unityv3\generator\ServiceClientGeneratorLib\Generators\SourceFiles\ServiceClients.tt"
                this.Write(this.ToStringHelper.ToStringWithCulture(operation.IsInternal ? "internal" : "public"));

            #line default
            #line hidden
                this.Write(" ");

            #line 286 "C:\dev\codecommit\unityv3\generator\ServiceClientGeneratorLib\Generators\SourceFiles\ServiceClients.tt"
                this.Write(this.ToStringHelper.ToStringWithCulture(operation.Name));

            #line default
            #line hidden
                this.Write("Response ");

            #line 286 "C:\dev\codecommit\unityv3\generator\ServiceClientGeneratorLib\Generators\SourceFiles\ServiceClients.tt"
                this.Write(this.ToStringHelper.ToStringWithCulture(operation.Name));

            #line default
            #line hidden
                this.Write("(");

            #line 286 "C:\dev\codecommit\unityv3\generator\ServiceClientGeneratorLib\Generators\SourceFiles\ServiceClients.tt"
                this.Write(this.ToStringHelper.ToStringWithCulture(operation.Name));

            #line default
            #line hidden
                this.Write("Request request)\r\n        {\r\n            var marshaller = new ");

            #line 288 "C:\dev\codecommit\unityv3\generator\ServiceClientGeneratorLib\Generators\SourceFiles\ServiceClients.tt"
                this.Write(this.ToStringHelper.ToStringWithCulture(operation.Name));

            #line default
            #line hidden
                this.Write("RequestMarshaller();\r\n            var unmarshaller = ");

            #line 289 "C:\dev\codecommit\unityv3\generator\ServiceClientGeneratorLib\Generators\SourceFiles\ServiceClients.tt"
                this.Write(this.ToStringHelper.ToStringWithCulture(operation.Name));

            #line default
            #line hidden
                this.Write("ResponseUnmarshaller.Instance;\r\n\r\n            return Invoke<");

            #line 291 "C:\dev\codecommit\unityv3\generator\ServiceClientGeneratorLib\Generators\SourceFiles\ServiceClients.tt"
                this.Write(this.ToStringHelper.ToStringWithCulture(operation.Name));

            #line default
            #line hidden
                this.Write("Request,");

            #line 291 "C:\dev\codecommit\unityv3\generator\ServiceClientGeneratorLib\Generators\SourceFiles\ServiceClients.tt"
                this.Write(this.ToStringHelper.ToStringWithCulture(operation.Name));

            #line default
            #line hidden
                this.Write("Response>(request, marshaller, unmarshaller);\r\n        }\r\n\r\n");

            #line 294 "C:\dev\codecommit\unityv3\generator\ServiceClientGeneratorLib\Generators\SourceFiles\ServiceClients.tt"

                AddBeginAsyncDocumentation(operation.Name);
                if (operation.IsDeprecated)
                {
            #line default
            #line hidden
                    this.Write("\t\t[Obsolete(\"");

            #line 299 "C:\dev\codecommit\unityv3\generator\ServiceClientGeneratorLib\Generators\SourceFiles\ServiceClients.tt"
                    this.Write(this.ToStringHelper.ToStringWithCulture(operation.DeprecationMessage));

            #line default
            #line hidden
                    this.Write("\")]\r\n");

            #line 300 "C:\dev\codecommit\unityv3\generator\ServiceClientGeneratorLib\Generators\SourceFiles\ServiceClients.tt"
                }


            #line default
            #line hidden
                this.Write("        ");

            #line 303 "C:\dev\codecommit\unityv3\generator\ServiceClientGeneratorLib\Generators\SourceFiles\ServiceClients.tt"
                this.Write(this.ToStringHelper.ToStringWithCulture(operation.IsInternal ? "internal" : "public"));

            #line default
            #line hidden
                this.Write(" IAsyncResult Begin");

            #line 303 "C:\dev\codecommit\unityv3\generator\ServiceClientGeneratorLib\Generators\SourceFiles\ServiceClients.tt"
                this.Write(this.ToStringHelper.ToStringWithCulture(operation.Name));

            #line default
            #line hidden
                this.Write("(");

            #line 303 "C:\dev\codecommit\unityv3\generator\ServiceClientGeneratorLib\Generators\SourceFiles\ServiceClients.tt"
                this.Write(this.ToStringHelper.ToStringWithCulture(operation.Name));

            #line default
            #line hidden
                this.Write("Request request, AsyncCallback callback, object state)\r\n        {\r\n            va" +
                           "r marshaller = new ");

            #line 305 "C:\dev\codecommit\unityv3\generator\ServiceClientGeneratorLib\Generators\SourceFiles\ServiceClients.tt"
                this.Write(this.ToStringHelper.ToStringWithCulture(operation.Name));

            #line default
            #line hidden
                this.Write("RequestMarshaller();\r\n            var unmarshaller = ");

            #line 306 "C:\dev\codecommit\unityv3\generator\ServiceClientGeneratorLib\Generators\SourceFiles\ServiceClients.tt"
                this.Write(this.ToStringHelper.ToStringWithCulture(operation.Name));

            #line default
            #line hidden
                this.Write("ResponseUnmarshaller.Instance;\r\n\r\n            return BeginInvoke<");

            #line 308 "C:\dev\codecommit\unityv3\generator\ServiceClientGeneratorLib\Generators\SourceFiles\ServiceClients.tt"
                this.Write(this.ToStringHelper.ToStringWithCulture(operation.Name));

            #line default
            #line hidden
                this.Write("Request>(request, marshaller, unmarshaller,\r\n                callback, state);\r\n " +
                           "       }\r\n\r\n");

            #line 312 "C:\dev\codecommit\unityv3\generator\ServiceClientGeneratorLib\Generators\SourceFiles\ServiceClients.tt"

                AddEndAsyncDocumentation(operation.Name);
                if (operation.IsDeprecated)
                {
            #line default
            #line hidden
                    this.Write("\t\t[Obsolete(\"");

            #line 317 "C:\dev\codecommit\unityv3\generator\ServiceClientGeneratorLib\Generators\SourceFiles\ServiceClients.tt"
                    this.Write(this.ToStringHelper.ToStringWithCulture(operation.DeprecationMessage));

            #line default
            #line hidden
                    this.Write("\")]\r\n");

            #line 318 "C:\dev\codecommit\unityv3\generator\ServiceClientGeneratorLib\Generators\SourceFiles\ServiceClients.tt"
                }


            #line default
            #line hidden
                this.Write("        ");

            #line 321 "C:\dev\codecommit\unityv3\generator\ServiceClientGeneratorLib\Generators\SourceFiles\ServiceClients.tt"
                this.Write(this.ToStringHelper.ToStringWithCulture(operation.IsInternal ? "internal" : "public"));

            #line default
            #line hidden
                this.Write("  ");

            #line 321 "C:\dev\codecommit\unityv3\generator\ServiceClientGeneratorLib\Generators\SourceFiles\ServiceClients.tt"
                this.Write(this.ToStringHelper.ToStringWithCulture(operation.Name));

            #line default
            #line hidden
                this.Write("Response End");

            #line 321 "C:\dev\codecommit\unityv3\generator\ServiceClientGeneratorLib\Generators\SourceFiles\ServiceClients.tt"
                this.Write(this.ToStringHelper.ToStringWithCulture(operation.Name));

            #line default
            #line hidden
                this.Write("(IAsyncResult asyncResult)\r\n        {\r\n            return EndInvoke<");

            #line 323 "C:\dev\codecommit\unityv3\generator\ServiceClientGeneratorLib\Generators\SourceFiles\ServiceClients.tt"
                this.Write(this.ToStringHelper.ToStringWithCulture(operation.Name));

            #line default
            #line hidden
                this.Write("Response>(asyncResult);\r\n        }\r\n\r\n        #endregion\r\n        ");

            #line 327 "C:\dev\codecommit\unityv3\generator\ServiceClientGeneratorLib\Generators\SourceFiles\ServiceClients.tt"
            }


            #line default
            #line hidden
            this.Write("\r\n    }\r\n}\r\n");
            return(this.GenerationEnvironment.ToString());
        }
예제 #15
0
        /// <summary>
        /// Create the template output
        /// </summary>
        public override string TransformText()
        {
            #line 6 "C:\projects\aws\AWSDotNetPublic\generator\ServiceClientGeneratorLib\Generators\Marshallers\AWSQueryExceptionUnmarshaller.tt"

            AddLicenseHeader();

            AddCommonUsingStatements();


            #line default
            #line hidden
            this.Write("namespace ");

            #line 11 "C:\projects\aws\AWSDotNetPublic\generator\ServiceClientGeneratorLib\Generators\Marshallers\AWSQueryExceptionUnmarshaller.tt"
            this.Write(this.ToStringHelper.ToStringWithCulture(this.Config.Namespace));

            #line default
            #line hidden
            this.Write(".Model.Internal.MarshallTransformations\r\n{\r\n    /// <summary>\r\n    /// Response U" +
                       "nmarshaller for ");

            #line 14 "C:\projects\aws\AWSDotNetPublic\generator\ServiceClientGeneratorLib\Generators\Marshallers\AWSQueryExceptionUnmarshaller.tt"
            this.Write(this.ToStringHelper.ToStringWithCulture(this.UnmarshallerBaseName));

            #line default
            #line hidden
            this.Write(" operation\r\n    /// </summary>  \r\n    public class ");

            #line 16 "C:\projects\aws\AWSDotNetPublic\generator\ServiceClientGeneratorLib\Generators\Marshallers\AWSQueryExceptionUnmarshaller.tt"
            this.Write(this.ToStringHelper.ToStringWithCulture(this.UnmarshallerBaseName));

            #line default
            #line hidden
            this.Write("Unmarshaller : IErrorResponseUnmarshaller<");

            #line 16 "C:\projects\aws\AWSDotNetPublic\generator\ServiceClientGeneratorLib\Generators\Marshallers\AWSQueryExceptionUnmarshaller.tt"
            this.Write(this.ToStringHelper.ToStringWithCulture(this.UnmarshallerBaseName));

            #line default
            #line hidden
            this.Write(", XmlUnmarshallerContext>\r\n    {\r\n        /// <summary>\r\n        /// Unmarshaller" +
                       " the response from the service to the response class.\r\n        /// </summary>  \r" +
                       "\n        /// <param name=\"context\"></param>\r\n        /// <returns></returns>\r\n  " +
                       "      public ");

            #line 23 "C:\projects\aws\AWSDotNetPublic\generator\ServiceClientGeneratorLib\Generators\Marshallers\AWSQueryExceptionUnmarshaller.tt"
            this.Write(this.ToStringHelper.ToStringWithCulture(this.UnmarshallerBaseName));

            #line default
            #line hidden
            this.Write(@" Unmarshall(XmlUnmarshallerContext context)
        {
            return this.Unmarshall(context, new Amazon.Runtime.Internal.ErrorResponse());
        }

        /// <summary>
        /// Unmarshaller error response to exception.
        /// </summary>  
        /// <param name=""context""></param>
        /// <param name=""errorResponse""></param>
        /// <returns></returns>
        public ");

            #line 34 "C:\projects\aws\AWSDotNetPublic\generator\ServiceClientGeneratorLib\Generators\Marshallers\AWSQueryExceptionUnmarshaller.tt"
            this.Write(this.ToStringHelper.ToStringWithCulture(this.UnmarshallerBaseName));

            #line default
            #line hidden
            this.Write(" Unmarshall(XmlUnmarshallerContext context, Amazon.Runtime.Internal.ErrorResponse" +
                       " errorResponse)\r\n        {\r\n            ");

            #line 36 "C:\projects\aws\AWSDotNetPublic\generator\ServiceClientGeneratorLib\Generators\Marshallers\AWSQueryExceptionUnmarshaller.tt"
            this.Write(this.ToStringHelper.ToStringWithCulture(this.UnmarshallerBaseName));

            #line default
            #line hidden
            this.Write(" response = new ");

            #line 36 "C:\projects\aws\AWSDotNetPublic\generator\ServiceClientGeneratorLib\Generators\Marshallers\AWSQueryExceptionUnmarshaller.tt"
            this.Write(this.ToStringHelper.ToStringWithCulture(this.UnmarshallerBaseName));

            #line default
            #line hidden
            this.Write(@"(errorResponse.Message, errorResponse.InnerException, 
                errorResponse.Type, errorResponse.Code, errorResponse.RequestId, errorResponse.StatusCode);
            
            int originalDepth = context.CurrentDepth;
            int targetDepth = originalDepth + 1;
            
            if (context.IsStartOfDocument) 
               targetDepth += 2;
            
            while (context.ReadAtDepth(originalDepth))
            {
                if (context.IsStartElement || context.IsAttribute)
                {
");

            #line 49 "C:\projects\aws\AWSDotNetPublic\generator\ServiceClientGeneratorLib\Generators\Marshallers\AWSQueryExceptionUnmarshaller.tt"

            if (this.Structure != null)
            {
                foreach (var member in this.Structure.Members)
                {
                    var testExpression = GeneratorHelpers.DetermineAWSQueryTestExpression(member);


            #line default
            #line hidden
                    this.Write("                    if (context.TestExpression(\"");

            #line 56 "C:\projects\aws\AWSDotNetPublic\generator\ServiceClientGeneratorLib\Generators\Marshallers\AWSQueryExceptionUnmarshaller.tt"
                    this.Write(this.ToStringHelper.ToStringWithCulture(testExpression));

            #line default
            #line hidden
                    this.Write("\", targetDepth))\r\n                    {\r\n");

            #line 58 "C:\projects\aws\AWSDotNetPublic\generator\ServiceClientGeneratorLib\Generators\Marshallers\AWSQueryExceptionUnmarshaller.tt"

                    if (member.IsMap || member.IsList)
                    {
            #line default
            #line hidden
                        this.Write("                        var item = ");

            #line 62 "C:\projects\aws\AWSDotNetPublic\generator\ServiceClientGeneratorLib\Generators\Marshallers\AWSQueryExceptionUnmarshaller.tt"
                        this.Write(this.ToStringHelper.ToStringWithCulture(member.DetermineTypeUnmarshallerInstantiate()));

            #line default
            #line hidden
                        this.Write(".Unmarshall(context);\r\n                        response.");

            #line 63 "C:\projects\aws\AWSDotNetPublic\generator\ServiceClientGeneratorLib\Generators\Marshallers\AWSQueryExceptionUnmarshaller.tt"
                        this.Write(this.ToStringHelper.ToStringWithCulture(MemberAccessorFor(member.PropertyName)));

            #line default
            #line hidden
                        this.Write(".Add(item);\r\n");

            #line 64 "C:\projects\aws\AWSDotNetPublic\generator\ServiceClientGeneratorLib\Generators\Marshallers\AWSQueryExceptionUnmarshaller.tt"
                    }
                    else
                    {
            #line default
            #line hidden
                        this.Write("                        response.");

            #line 69 "C:\projects\aws\AWSDotNetPublic\generator\ServiceClientGeneratorLib\Generators\Marshallers\AWSQueryExceptionUnmarshaller.tt"
                        this.Write(this.ToStringHelper.ToStringWithCulture(MemberAccessorFor(member.PropertyName)));

            #line default
            #line hidden
                        this.Write(" = ");

            #line 69 "C:\projects\aws\AWSDotNetPublic\generator\ServiceClientGeneratorLib\Generators\Marshallers\AWSQueryExceptionUnmarshaller.tt"
                        this.Write(this.ToStringHelper.ToStringWithCulture(member.DetermineTypeUnmarshallerInstantiate()));

            #line default
            #line hidden
                        this.Write(".Unmarshall(context);\r\n");

            #line 70 "C:\projects\aws\AWSDotNetPublic\generator\ServiceClientGeneratorLib\Generators\Marshallers\AWSQueryExceptionUnmarshaller.tt"
                    }


            #line default
            #line hidden
                    this.Write("                    }\r\n");

            #line 74 "C:\projects\aws\AWSDotNetPublic\generator\ServiceClientGeneratorLib\Generators\Marshallers\AWSQueryExceptionUnmarshaller.tt"
                }
            }


            #line default
            #line hidden
            this.Write("                }\r\n            }\r\n            return response;\r\n        }\r\n\r\n");

            #line 83 "C:\projects\aws\AWSDotNetPublic\generator\ServiceClientGeneratorLib\Generators\Marshallers\AWSQueryExceptionUnmarshaller.tt"

            this.AddStructureSingletonMethod();


            #line default
            #line hidden
            this.Write("    }\r\n}\r\n");
            return(this.GenerationEnvironment.ToString());
        }
예제 #16
0
        void ProcessMembers(int level, string parameterContext, string variableName, IEnumerable <Member> members)
        {
            string variableNameFragment = variableName.Replace(".", string.Empty);

            foreach (var member in members)
            {
                if (GeneratorHelpers.UseCustomMarshall(member, this.Operation))
                {
                    continue;
                }

                var marshallName = GeneratorHelpers.DetermineAWSQueryMarshallName(member, this.Operation);

        #line default
        #line hidden

        #line 63 "C:\dev\V3\AWSDotNetPublic\generator\ServiceClientGeneratorLib\Generators\Marshallers\AWSQueryRequestMarshaller.tt"
                this.Write(this.ToStringHelper.ToStringWithCulture(new string(' ', level * 4)));


        #line default
        #line hidden

        #line 63 "C:\dev\V3\AWSDotNetPublic\generator\ServiceClientGeneratorLib\Generators\Marshallers\AWSQueryRequestMarshaller.tt"
                this.Write("                if(");


        #line default
        #line hidden

        #line 63 "C:\dev\V3\AWSDotNetPublic\generator\ServiceClientGeneratorLib\Generators\Marshallers\AWSQueryRequestMarshaller.tt"
                this.Write(this.ToStringHelper.ToStringWithCulture(variableName));


        #line default
        #line hidden

        #line 63 "C:\dev\V3\AWSDotNetPublic\generator\ServiceClientGeneratorLib\Generators\Marshallers\AWSQueryRequestMarshaller.tt"
                this.Write(".IsSet");


        #line default
        #line hidden

        #line 63 "C:\dev\V3\AWSDotNetPublic\generator\ServiceClientGeneratorLib\Generators\Marshallers\AWSQueryRequestMarshaller.tt"
                this.Write(this.ToStringHelper.ToStringWithCulture(member.PropertyName));


        #line default
        #line hidden

        #line 63 "C:\dev\V3\AWSDotNetPublic\generator\ServiceClientGeneratorLib\Generators\Marshallers\AWSQueryRequestMarshaller.tt"
                this.Write("())\r\n");


        #line default
        #line hidden

        #line 64 "C:\dev\V3\AWSDotNetPublic\generator\ServiceClientGeneratorLib\Generators\Marshallers\AWSQueryRequestMarshaller.tt"
                this.Write(this.ToStringHelper.ToStringWithCulture(new string(' ', level * 4)));


        #line default
        #line hidden

        #line 64 "C:\dev\V3\AWSDotNetPublic\generator\ServiceClientGeneratorLib\Generators\Marshallers\AWSQueryRequestMarshaller.tt"
                this.Write("                {\r\n");


        #line default
        #line hidden

        #line 65 "C:\dev\V3\AWSDotNetPublic\generator\ServiceClientGeneratorLib\Generators\Marshallers\AWSQueryRequestMarshaller.tt"

                if (member.IsList)
                {
                    string context         = ComposeContext(parameterContext, marshallName);
                    string listItemContext = ComposeContext(context,
                                                            GeneratorHelpers.DetermineAWSQueryListMemberPrefix(member),
                                                            variableNameFragment + "listValueIndex",
                                                            GeneratorHelpers.DetermineAWSQueryListMemberSuffix(this.Operation, member));


        #line default
        #line hidden

        #line 74 "C:\dev\V3\AWSDotNetPublic\generator\ServiceClientGeneratorLib\Generators\Marshallers\AWSQueryRequestMarshaller.tt"
                    this.Write(this.ToStringHelper.ToStringWithCulture(new string(' ', level * 4)));


        #line default
        #line hidden

        #line 74 "C:\dev\V3\AWSDotNetPublic\generator\ServiceClientGeneratorLib\Generators\Marshallers\AWSQueryRequestMarshaller.tt"
                    this.Write("                    int ");


        #line default
        #line hidden

        #line 74 "C:\dev\V3\AWSDotNetPublic\generator\ServiceClientGeneratorLib\Generators\Marshallers\AWSQueryRequestMarshaller.tt"
                    this.Write(this.ToStringHelper.ToStringWithCulture(variableNameFragment));


        #line default
        #line hidden

        #line 74 "C:\dev\V3\AWSDotNetPublic\generator\ServiceClientGeneratorLib\Generators\Marshallers\AWSQueryRequestMarshaller.tt"
                    this.Write("listValueIndex = 1;\r\n");


        #line default
        #line hidden

        #line 75 "C:\dev\V3\AWSDotNetPublic\generator\ServiceClientGeneratorLib\Generators\Marshallers\AWSQueryRequestMarshaller.tt"
                    this.Write(this.ToStringHelper.ToStringWithCulture(new string(' ', level * 4)));


        #line default
        #line hidden

        #line 75 "C:\dev\V3\AWSDotNetPublic\generator\ServiceClientGeneratorLib\Generators\Marshallers\AWSQueryRequestMarshaller.tt"
                    this.Write("                    foreach(var ");


        #line default
        #line hidden

        #line 75 "C:\dev\V3\AWSDotNetPublic\generator\ServiceClientGeneratorLib\Generators\Marshallers\AWSQueryRequestMarshaller.tt"
                    this.Write(this.ToStringHelper.ToStringWithCulture(variableNameFragment));


        #line default
        #line hidden

        #line 75 "C:\dev\V3\AWSDotNetPublic\generator\ServiceClientGeneratorLib\Generators\Marshallers\AWSQueryRequestMarshaller.tt"
                    this.Write("listValue in ");


        #line default
        #line hidden

        #line 75 "C:\dev\V3\AWSDotNetPublic\generator\ServiceClientGeneratorLib\Generators\Marshallers\AWSQueryRequestMarshaller.tt"
                    this.Write(this.ToStringHelper.ToStringWithCulture(variableName));


        #line default
        #line hidden

        #line 75 "C:\dev\V3\AWSDotNetPublic\generator\ServiceClientGeneratorLib\Generators\Marshallers\AWSQueryRequestMarshaller.tt"
                    this.Write(".");


        #line default
        #line hidden

        #line 75 "C:\dev\V3\AWSDotNetPublic\generator\ServiceClientGeneratorLib\Generators\Marshallers\AWSQueryRequestMarshaller.tt"
                    this.Write(this.ToStringHelper.ToStringWithCulture(member.PropertyName));


        #line default
        #line hidden

        #line 75 "C:\dev\V3\AWSDotNetPublic\generator\ServiceClientGeneratorLib\Generators\Marshallers\AWSQueryRequestMarshaller.tt"
                    this.Write(")\r\n");


        #line default
        #line hidden

        #line 76 "C:\dev\V3\AWSDotNetPublic\generator\ServiceClientGeneratorLib\Generators\Marshallers\AWSQueryRequestMarshaller.tt"
                    this.Write(this.ToStringHelper.ToStringWithCulture(new string(' ', level * 4)));


        #line default
        #line hidden

        #line 76 "C:\dev\V3\AWSDotNetPublic\generator\ServiceClientGeneratorLib\Generators\Marshallers\AWSQueryRequestMarshaller.tt"
                    this.Write("                    {\r\n");


        #line default
        #line hidden

        #line 77 "C:\dev\V3\AWSDotNetPublic\generator\ServiceClientGeneratorLib\Generators\Marshallers\AWSQueryRequestMarshaller.tt"

                    if (member.Shape.ListShape.IsStructure)
                    {
                        ProcessMembers(level + 2, listItemContext, variableNameFragment + "listValue", member.Shape.ListShape.Members);
                    }
                    else
                    {
                        if (string.IsNullOrEmpty(member.CustomMarshallerTransformation))
                        {
        #line default
        #line hidden

        #line 87 "C:\dev\V3\AWSDotNetPublic\generator\ServiceClientGeneratorLib\Generators\Marshallers\AWSQueryRequestMarshaller.tt"
                            this.Write(this.ToStringHelper.ToStringWithCulture(new string(' ', level * 4)));


        #line default
        #line hidden

        #line 87 "C:\dev\V3\AWSDotNetPublic\generator\ServiceClientGeneratorLib\Generators\Marshallers\AWSQueryRequestMarshaller.tt"
                            this.Write("                        request.Parameters.Add(");


        #line default
        #line hidden

        #line 87 "C:\dev\V3\AWSDotNetPublic\generator\ServiceClientGeneratorLib\Generators\Marshallers\AWSQueryRequestMarshaller.tt"
                            this.Write(this.ToStringHelper.ToStringWithCulture(listItemContext));


        #line default
        #line hidden

        #line 87 "C:\dev\V3\AWSDotNetPublic\generator\ServiceClientGeneratorLib\Generators\Marshallers\AWSQueryRequestMarshaller.tt"
                            this.Write(", StringUtils.From");


        #line default
        #line hidden

        #line 87 "C:\dev\V3\AWSDotNetPublic\generator\ServiceClientGeneratorLib\Generators\Marshallers\AWSQueryRequestMarshaller.tt"
                            this.Write(this.ToStringHelper.ToStringWithCulture(member.Shape.ListShape.GetPrimitiveType()));


        #line default
        #line hidden

        #line 87 "C:\dev\V3\AWSDotNetPublic\generator\ServiceClientGeneratorLib\Generators\Marshallers\AWSQueryRequestMarshaller.tt"
                            this.Write("(");


        #line default
        #line hidden

        #line 87 "C:\dev\V3\AWSDotNetPublic\generator\ServiceClientGeneratorLib\Generators\Marshallers\AWSQueryRequestMarshaller.tt"
                            this.Write(this.ToStringHelper.ToStringWithCulture(variableNameFragment));


        #line default
        #line hidden

        #line 87 "C:\dev\V3\AWSDotNetPublic\generator\ServiceClientGeneratorLib\Generators\Marshallers\AWSQueryRequestMarshaller.tt"
                            this.Write("listValue));\r\n");


        #line default
        #line hidden

        #line 88 "C:\dev\V3\AWSDotNetPublic\generator\ServiceClientGeneratorLib\Generators\Marshallers\AWSQueryRequestMarshaller.tt"
                        }
                        else
                        {
        #line default
        #line hidden

        #line 93 "C:\dev\V3\AWSDotNetPublic\generator\ServiceClientGeneratorLib\Generators\Marshallers\AWSQueryRequestMarshaller.tt"
                            this.Write(this.ToStringHelper.ToStringWithCulture(new string(' ', level * 4)));


        #line default
        #line hidden

        #line 93 "C:\dev\V3\AWSDotNetPublic\generator\ServiceClientGeneratorLib\Generators\Marshallers\AWSQueryRequestMarshaller.tt"
                            this.Write("                        request.Parameters.Add(");


        #line default
        #line hidden

        #line 93 "C:\dev\V3\AWSDotNetPublic\generator\ServiceClientGeneratorLib\Generators\Marshallers\AWSQueryRequestMarshaller.tt"
                            this.Write(this.ToStringHelper.ToStringWithCulture(listItemContext));


        #line default
        #line hidden

        #line 93 "C:\dev\V3\AWSDotNetPublic\generator\ServiceClientGeneratorLib\Generators\Marshallers\AWSQueryRequestMarshaller.tt"
                            this.Write(", ");


        #line default
        #line hidden

        #line 93 "C:\dev\V3\AWSDotNetPublic\generator\ServiceClientGeneratorLib\Generators\Marshallers\AWSQueryRequestMarshaller.tt"
                            this.Write(this.ToStringHelper.ToStringWithCulture(member.CustomMarshallerTransformation + "(" + variableNameFragment + "listValue)"));


        #line default
        #line hidden

        #line 93 "C:\dev\V3\AWSDotNetPublic\generator\ServiceClientGeneratorLib\Generators\Marshallers\AWSQueryRequestMarshaller.tt"
                            this.Write(");\r\n");


        #line default
        #line hidden

        #line 94 "C:\dev\V3\AWSDotNetPublic\generator\ServiceClientGeneratorLib\Generators\Marshallers\AWSQueryRequestMarshaller.tt"
                        }
                    }


        #line default
        #line hidden

        #line 98 "C:\dev\V3\AWSDotNetPublic\generator\ServiceClientGeneratorLib\Generators\Marshallers\AWSQueryRequestMarshaller.tt"
                    this.Write(this.ToStringHelper.ToStringWithCulture(new string(' ', level * 4)));


        #line default
        #line hidden

        #line 98 "C:\dev\V3\AWSDotNetPublic\generator\ServiceClientGeneratorLib\Generators\Marshallers\AWSQueryRequestMarshaller.tt"
                    this.Write("                        ");


        #line default
        #line hidden

        #line 98 "C:\dev\V3\AWSDotNetPublic\generator\ServiceClientGeneratorLib\Generators\Marshallers\AWSQueryRequestMarshaller.tt"
                    this.Write(this.ToStringHelper.ToStringWithCulture(variableNameFragment));


        #line default
        #line hidden

        #line 98 "C:\dev\V3\AWSDotNetPublic\generator\ServiceClientGeneratorLib\Generators\Marshallers\AWSQueryRequestMarshaller.tt"
                    this.Write("listValueIndex++;\r\n");


        #line default
        #line hidden

        #line 99 "C:\dev\V3\AWSDotNetPublic\generator\ServiceClientGeneratorLib\Generators\Marshallers\AWSQueryRequestMarshaller.tt"
                    this.Write(this.ToStringHelper.ToStringWithCulture(new string(' ', level * 4)));


        #line default
        #line hidden

        #line 99 "C:\dev\V3\AWSDotNetPublic\generator\ServiceClientGeneratorLib\Generators\Marshallers\AWSQueryRequestMarshaller.tt"
                    this.Write("                    }\r\n");


        #line default
        #line hidden

        #line 100 "C:\dev\V3\AWSDotNetPublic\generator\ServiceClientGeneratorLib\Generators\Marshallers\AWSQueryRequestMarshaller.tt"
                }
                else if (member.IsMap)
                {
                    string context         = ComposeContext(parameterContext, marshallName);
                    string mapItemContext  = ComposeContext(context, member.Shape.IsFlattened ? "" : "entry", "mapIndex");
                    string mapKeyContext   = ComposeContext(mapItemContext, member.Shape.KeyMarshallName);
                    string mapValueContext = ComposeContext(mapItemContext, member.Shape.ValueMarshallName);


        #line default
        #line hidden

        #line 109 "C:\dev\V3\AWSDotNetPublic\generator\ServiceClientGeneratorLib\Generators\Marshallers\AWSQueryRequestMarshaller.tt"
                    this.Write(this.ToStringHelper.ToStringWithCulture(new string(' ', level * 4)));


        #line default
        #line hidden

        #line 109 "C:\dev\V3\AWSDotNetPublic\generator\ServiceClientGeneratorLib\Generators\Marshallers\AWSQueryRequestMarshaller.tt"
                    this.Write("                    int mapIndex = 1;\r\n");


        #line default
        #line hidden

        #line 110 "C:\dev\V3\AWSDotNetPublic\generator\ServiceClientGeneratorLib\Generators\Marshallers\AWSQueryRequestMarshaller.tt"
                    this.Write(this.ToStringHelper.ToStringWithCulture(new string(' ', level * 4)));


        #line default
        #line hidden

        #line 110 "C:\dev\V3\AWSDotNetPublic\generator\ServiceClientGeneratorLib\Generators\Marshallers\AWSQueryRequestMarshaller.tt"
                    this.Write("                    foreach(var key in ");


        #line default
        #line hidden

        #line 110 "C:\dev\V3\AWSDotNetPublic\generator\ServiceClientGeneratorLib\Generators\Marshallers\AWSQueryRequestMarshaller.tt"
                    this.Write(this.ToStringHelper.ToStringWithCulture(variableName));


        #line default
        #line hidden

        #line 110 "C:\dev\V3\AWSDotNetPublic\generator\ServiceClientGeneratorLib\Generators\Marshallers\AWSQueryRequestMarshaller.tt"
                    this.Write(".");


        #line default
        #line hidden

        #line 110 "C:\dev\V3\AWSDotNetPublic\generator\ServiceClientGeneratorLib\Generators\Marshallers\AWSQueryRequestMarshaller.tt"
                    this.Write(this.ToStringHelper.ToStringWithCulture(member.PropertyName));


        #line default
        #line hidden

        #line 110 "C:\dev\V3\AWSDotNetPublic\generator\ServiceClientGeneratorLib\Generators\Marshallers\AWSQueryRequestMarshaller.tt"
                    this.Write(".Keys)\r\n");


        #line default
        #line hidden

        #line 111 "C:\dev\V3\AWSDotNetPublic\generator\ServiceClientGeneratorLib\Generators\Marshallers\AWSQueryRequestMarshaller.tt"
                    this.Write(this.ToStringHelper.ToStringWithCulture(new string(' ', level * 4)));


        #line default
        #line hidden

        #line 111 "C:\dev\V3\AWSDotNetPublic\generator\ServiceClientGeneratorLib\Generators\Marshallers\AWSQueryRequestMarshaller.tt"
                    this.Write("                    {\r\n");


        #line default
        #line hidden

        #line 112 "C:\dev\V3\AWSDotNetPublic\generator\ServiceClientGeneratorLib\Generators\Marshallers\AWSQueryRequestMarshaller.tt"
                    this.Write(this.ToStringHelper.ToStringWithCulture(new string(' ', level * 4)));


        #line default
        #line hidden

        #line 112 "C:\dev\V3\AWSDotNetPublic\generator\ServiceClientGeneratorLib\Generators\Marshallers\AWSQueryRequestMarshaller.tt"
                    this.Write("                        ");


        #line default
        #line hidden

        #line 112 "C:\dev\V3\AWSDotNetPublic\generator\ServiceClientGeneratorLib\Generators\Marshallers\AWSQueryRequestMarshaller.tt"
                    this.Write(this.ToStringHelper.ToStringWithCulture(member.Shape.ValueShape.IsStructure ? member.Shape.ValueShape.Name : member.Shape.ValueShape.GetPrimitiveType()));


        #line default
        #line hidden

        #line 112 "C:\dev\V3\AWSDotNetPublic\generator\ServiceClientGeneratorLib\Generators\Marshallers\AWSQueryRequestMarshaller.tt"
                    this.Write(" value;\r\n");


        #line default
        #line hidden

        #line 113 "C:\dev\V3\AWSDotNetPublic\generator\ServiceClientGeneratorLib\Generators\Marshallers\AWSQueryRequestMarshaller.tt"
                    this.Write(this.ToStringHelper.ToStringWithCulture(new string(' ', level * 4)));


        #line default
        #line hidden

        #line 113 "C:\dev\V3\AWSDotNetPublic\generator\ServiceClientGeneratorLib\Generators\Marshallers\AWSQueryRequestMarshaller.tt"
                    this.Write("                        bool hasValue = ");


        #line default
        #line hidden

        #line 113 "C:\dev\V3\AWSDotNetPublic\generator\ServiceClientGeneratorLib\Generators\Marshallers\AWSQueryRequestMarshaller.tt"
                    this.Write(this.ToStringHelper.ToStringWithCulture(variableName));


        #line default
        #line hidden

        #line 113 "C:\dev\V3\AWSDotNetPublic\generator\ServiceClientGeneratorLib\Generators\Marshallers\AWSQueryRequestMarshaller.tt"
                    this.Write(".");


        #line default
        #line hidden

        #line 113 "C:\dev\V3\AWSDotNetPublic\generator\ServiceClientGeneratorLib\Generators\Marshallers\AWSQueryRequestMarshaller.tt"
                    this.Write(this.ToStringHelper.ToStringWithCulture(member.PropertyName));


        #line default
        #line hidden

        #line 113 "C:\dev\V3\AWSDotNetPublic\generator\ServiceClientGeneratorLib\Generators\Marshallers\AWSQueryRequestMarshaller.tt"
                    this.Write(".TryGetValue(key, out value);\r\n");


        #line default
        #line hidden

        #line 114 "C:\dev\V3\AWSDotNetPublic\generator\ServiceClientGeneratorLib\Generators\Marshallers\AWSQueryRequestMarshaller.tt"
                    this.Write(this.ToStringHelper.ToStringWithCulture(new string(' ', level * 4)));


        #line default
        #line hidden

        #line 114 "C:\dev\V3\AWSDotNetPublic\generator\ServiceClientGeneratorLib\Generators\Marshallers\AWSQueryRequestMarshaller.tt"
                    this.Write("                        request.Parameters.Add(");


        #line default
        #line hidden

        #line 114 "C:\dev\V3\AWSDotNetPublic\generator\ServiceClientGeneratorLib\Generators\Marshallers\AWSQueryRequestMarshaller.tt"
                    this.Write(this.ToStringHelper.ToStringWithCulture(mapKeyContext));


        #line default
        #line hidden

        #line 114 "C:\dev\V3\AWSDotNetPublic\generator\ServiceClientGeneratorLib\Generators\Marshallers\AWSQueryRequestMarshaller.tt"
                    this.Write(", StringUtils.From");


        #line default
        #line hidden

        #line 114 "C:\dev\V3\AWSDotNetPublic\generator\ServiceClientGeneratorLib\Generators\Marshallers\AWSQueryRequestMarshaller.tt"
                    this.Write(this.ToStringHelper.ToStringWithCulture(member.Shape.KeyShape.GetPrimitiveType()));


        #line default
        #line hidden

        #line 114 "C:\dev\V3\AWSDotNetPublic\generator\ServiceClientGeneratorLib\Generators\Marshallers\AWSQueryRequestMarshaller.tt"
                    this.Write("(key));\r\n");


        #line default
        #line hidden

        #line 115 "C:\dev\V3\AWSDotNetPublic\generator\ServiceClientGeneratorLib\Generators\Marshallers\AWSQueryRequestMarshaller.tt"
                    this.Write(this.ToStringHelper.ToStringWithCulture(new string(' ', level * 4)));


        #line default
        #line hidden

        #line 115 "C:\dev\V3\AWSDotNetPublic\generator\ServiceClientGeneratorLib\Generators\Marshallers\AWSQueryRequestMarshaller.tt"
                    this.Write("                        if (hasValue)\r\n");


        #line default
        #line hidden

        #line 116 "C:\dev\V3\AWSDotNetPublic\generator\ServiceClientGeneratorLib\Generators\Marshallers\AWSQueryRequestMarshaller.tt"
                    this.Write(this.ToStringHelper.ToStringWithCulture(new string(' ', level * 4)));


        #line default
        #line hidden

        #line 116 "C:\dev\V3\AWSDotNetPublic\generator\ServiceClientGeneratorLib\Generators\Marshallers\AWSQueryRequestMarshaller.tt"
                    this.Write("                        {\r\n");


        #line default
        #line hidden

        #line 117 "C:\dev\V3\AWSDotNetPublic\generator\ServiceClientGeneratorLib\Generators\Marshallers\AWSQueryRequestMarshaller.tt"

                    if (member.Shape.ValueShape.IsStructure)
                    {
                        ProcessMembers(level + 3, mapValueContext, "value", member.Shape.ValueShape.Members);
                    }
                    else
                    {
                        if (string.IsNullOrEmpty(member.CustomMarshallerTransformation))
                        {
        #line default
        #line hidden

        #line 127 "C:\dev\V3\AWSDotNetPublic\generator\ServiceClientGeneratorLib\Generators\Marshallers\AWSQueryRequestMarshaller.tt"
                            this.Write(this.ToStringHelper.ToStringWithCulture(new string(' ', level * 4)));


        #line default
        #line hidden

        #line 127 "C:\dev\V3\AWSDotNetPublic\generator\ServiceClientGeneratorLib\Generators\Marshallers\AWSQueryRequestMarshaller.tt"
                            this.Write("                            request.Parameters.Add(");


        #line default
        #line hidden

        #line 127 "C:\dev\V3\AWSDotNetPublic\generator\ServiceClientGeneratorLib\Generators\Marshallers\AWSQueryRequestMarshaller.tt"
                            this.Write(this.ToStringHelper.ToStringWithCulture(mapValueContext));


        #line default
        #line hidden

        #line 127 "C:\dev\V3\AWSDotNetPublic\generator\ServiceClientGeneratorLib\Generators\Marshallers\AWSQueryRequestMarshaller.tt"
                            this.Write(", StringUtils.From");


        #line default
        #line hidden

        #line 127 "C:\dev\V3\AWSDotNetPublic\generator\ServiceClientGeneratorLib\Generators\Marshallers\AWSQueryRequestMarshaller.tt"
                            this.Write(this.ToStringHelper.ToStringWithCulture(member.Shape.ValueShape.GetPrimitiveType()));


        #line default
        #line hidden

        #line 127 "C:\dev\V3\AWSDotNetPublic\generator\ServiceClientGeneratorLib\Generators\Marshallers\AWSQueryRequestMarshaller.tt"
                            this.Write("(value));\r\n");


        #line default
        #line hidden

        #line 128 "C:\dev\V3\AWSDotNetPublic\generator\ServiceClientGeneratorLib\Generators\Marshallers\AWSQueryRequestMarshaller.tt"
                        }
                        else
                        {
        #line default
        #line hidden

        #line 132 "C:\dev\V3\AWSDotNetPublic\generator\ServiceClientGeneratorLib\Generators\Marshallers\AWSQueryRequestMarshaller.tt"
                            this.Write(this.ToStringHelper.ToStringWithCulture(new string(' ', level * 4)));


        #line default
        #line hidden

        #line 132 "C:\dev\V3\AWSDotNetPublic\generator\ServiceClientGeneratorLib\Generators\Marshallers\AWSQueryRequestMarshaller.tt"
                            this.Write("                            request.Parameters.Add(");


        #line default
        #line hidden

        #line 132 "C:\dev\V3\AWSDotNetPublic\generator\ServiceClientGeneratorLib\Generators\Marshallers\AWSQueryRequestMarshaller.tt"
                            this.Write(this.ToStringHelper.ToStringWithCulture(mapValueContext));


        #line default
        #line hidden

        #line 132 "C:\dev\V3\AWSDotNetPublic\generator\ServiceClientGeneratorLib\Generators\Marshallers\AWSQueryRequestMarshaller.tt"
                            this.Write(", ");


        #line default
        #line hidden

        #line 132 "C:\dev\V3\AWSDotNetPublic\generator\ServiceClientGeneratorLib\Generators\Marshallers\AWSQueryRequestMarshaller.tt"
                            this.Write(this.ToStringHelper.ToStringWithCulture(member.CustomMarshallerTransformation + "(value)"));


        #line default
        #line hidden

        #line 132 "C:\dev\V3\AWSDotNetPublic\generator\ServiceClientGeneratorLib\Generators\Marshallers\AWSQueryRequestMarshaller.tt"
                            this.Write(");\r\n");


        #line default
        #line hidden

        #line 133 "C:\dev\V3\AWSDotNetPublic\generator\ServiceClientGeneratorLib\Generators\Marshallers\AWSQueryRequestMarshaller.tt"
                        }
                    }


        #line default
        #line hidden

        #line 137 "C:\dev\V3\AWSDotNetPublic\generator\ServiceClientGeneratorLib\Generators\Marshallers\AWSQueryRequestMarshaller.tt"
                    this.Write(this.ToStringHelper.ToStringWithCulture(new string(' ', level * 4)));


        #line default
        #line hidden

        #line 137 "C:\dev\V3\AWSDotNetPublic\generator\ServiceClientGeneratorLib\Generators\Marshallers\AWSQueryRequestMarshaller.tt"
                    this.Write("                        }\r\n");


        #line default
        #line hidden

        #line 138 "C:\dev\V3\AWSDotNetPublic\generator\ServiceClientGeneratorLib\Generators\Marshallers\AWSQueryRequestMarshaller.tt"
                    this.Write(this.ToStringHelper.ToStringWithCulture(new string(' ', level * 4)));


        #line default
        #line hidden

        #line 138 "C:\dev\V3\AWSDotNetPublic\generator\ServiceClientGeneratorLib\Generators\Marshallers\AWSQueryRequestMarshaller.tt"
                    this.Write("                        mapIndex++;\r\n");


        #line default
        #line hidden

        #line 139 "C:\dev\V3\AWSDotNetPublic\generator\ServiceClientGeneratorLib\Generators\Marshallers\AWSQueryRequestMarshaller.tt"
                    this.Write(this.ToStringHelper.ToStringWithCulture(new string(' ', level * 4)));


        #line default
        #line hidden

        #line 139 "C:\dev\V3\AWSDotNetPublic\generator\ServiceClientGeneratorLib\Generators\Marshallers\AWSQueryRequestMarshaller.tt"
                    this.Write("                    }\r\n");


        #line default
        #line hidden

        #line 140 "C:\dev\V3\AWSDotNetPublic\generator\ServiceClientGeneratorLib\Generators\Marshallers\AWSQueryRequestMarshaller.tt"
                }
                else if (member.IsStructure)
                {
                    string context = ComposeContext(parameterContext, marshallName);
                    ProcessMembers(level + 1, context, variableName + "." + member.PropertyName, member.Shape.Members);
                }
                else
                {
                    string context = ComposeContext(parameterContext, marshallName);
                    if (string.IsNullOrEmpty(member.CustomMarshallerTransformation))
                    {
        #line default
        #line hidden

        #line 153 "C:\dev\V3\AWSDotNetPublic\generator\ServiceClientGeneratorLib\Generators\Marshallers\AWSQueryRequestMarshaller.tt"
                        this.Write(this.ToStringHelper.ToStringWithCulture(new string(' ', level * 4)));


        #line default
        #line hidden

        #line 153 "C:\dev\V3\AWSDotNetPublic\generator\ServiceClientGeneratorLib\Generators\Marshallers\AWSQueryRequestMarshaller.tt"
                        this.Write("                    request.Parameters.Add(");


        #line default
        #line hidden

        #line 153 "C:\dev\V3\AWSDotNetPublic\generator\ServiceClientGeneratorLib\Generators\Marshallers\AWSQueryRequestMarshaller.tt"
                        this.Write(this.ToStringHelper.ToStringWithCulture(context));


        #line default
        #line hidden

        #line 153 "C:\dev\V3\AWSDotNetPublic\generator\ServiceClientGeneratorLib\Generators\Marshallers\AWSQueryRequestMarshaller.tt"
                        this.Write(", StringUtils.From");


        #line default
        #line hidden

        #line 153 "C:\dev\V3\AWSDotNetPublic\generator\ServiceClientGeneratorLib\Generators\Marshallers\AWSQueryRequestMarshaller.tt"
                        this.Write(this.ToStringHelper.ToStringWithCulture(member.GetPrimitiveType()));


        #line default
        #line hidden

        #line 153 "C:\dev\V3\AWSDotNetPublic\generator\ServiceClientGeneratorLib\Generators\Marshallers\AWSQueryRequestMarshaller.tt"
                        this.Write("(");


        #line default
        #line hidden

        #line 153 "C:\dev\V3\AWSDotNetPublic\generator\ServiceClientGeneratorLib\Generators\Marshallers\AWSQueryRequestMarshaller.tt"
                        this.Write(this.ToStringHelper.ToStringWithCulture(variableName));


        #line default
        #line hidden

        #line 153 "C:\dev\V3\AWSDotNetPublic\generator\ServiceClientGeneratorLib\Generators\Marshallers\AWSQueryRequestMarshaller.tt"
                        this.Write(".");


        #line default
        #line hidden

        #line 153 "C:\dev\V3\AWSDotNetPublic\generator\ServiceClientGeneratorLib\Generators\Marshallers\AWSQueryRequestMarshaller.tt"
                        this.Write(this.ToStringHelper.ToStringWithCulture(member.PropertyName));


        #line default
        #line hidden

        #line 153 "C:\dev\V3\AWSDotNetPublic\generator\ServiceClientGeneratorLib\Generators\Marshallers\AWSQueryRequestMarshaller.tt"
                        this.Write("));\r\n");


        #line default
        #line hidden

        #line 154 "C:\dev\V3\AWSDotNetPublic\generator\ServiceClientGeneratorLib\Generators\Marshallers\AWSQueryRequestMarshaller.tt"
                    }
                    else
                    {
        #line default
        #line hidden

        #line 158 "C:\dev\V3\AWSDotNetPublic\generator\ServiceClientGeneratorLib\Generators\Marshallers\AWSQueryRequestMarshaller.tt"
                        this.Write(this.ToStringHelper.ToStringWithCulture(new string(' ', level * 4)));


        #line default
        #line hidden

        #line 158 "C:\dev\V3\AWSDotNetPublic\generator\ServiceClientGeneratorLib\Generators\Marshallers\AWSQueryRequestMarshaller.tt"
                        this.Write("                    request.Parameters.Add(");


        #line default
        #line hidden

        #line 158 "C:\dev\V3\AWSDotNetPublic\generator\ServiceClientGeneratorLib\Generators\Marshallers\AWSQueryRequestMarshaller.tt"
                        this.Write(this.ToStringHelper.ToStringWithCulture(context));


        #line default
        #line hidden

        #line 158 "C:\dev\V3\AWSDotNetPublic\generator\ServiceClientGeneratorLib\Generators\Marshallers\AWSQueryRequestMarshaller.tt"
                        this.Write(", ");


        #line default
        #line hidden

        #line 158 "C:\dev\V3\AWSDotNetPublic\generator\ServiceClientGeneratorLib\Generators\Marshallers\AWSQueryRequestMarshaller.tt"
                        this.Write(this.ToStringHelper.ToStringWithCulture(member.CustomMarshallerTransformation + "(" + variableName + "." + member.PropertyName + ")"));


        #line default
        #line hidden

        #line 158 "C:\dev\V3\AWSDotNetPublic\generator\ServiceClientGeneratorLib\Generators\Marshallers\AWSQueryRequestMarshaller.tt"
                        this.Write(");\r\n");


        #line default
        #line hidden

        #line 159 "C:\dev\V3\AWSDotNetPublic\generator\ServiceClientGeneratorLib\Generators\Marshallers\AWSQueryRequestMarshaller.tt"
                    }
                    if (member.IsIdempotent)
                    {
        #line default
        #line hidden

        #line 164 "C:\dev\V3\AWSDotNetPublic\generator\ServiceClientGeneratorLib\Generators\Marshallers\AWSQueryRequestMarshaller.tt"
                        this.Write(this.ToStringHelper.ToStringWithCulture(new string(' ', level * 4)));


        #line default
        #line hidden

        #line 164 "C:\dev\V3\AWSDotNetPublic\generator\ServiceClientGeneratorLib\Generators\Marshallers\AWSQueryRequestMarshaller.tt"
                        this.Write(" \t\t\t   }\r\n");


        #line default
        #line hidden

        #line 165 "C:\dev\V3\AWSDotNetPublic\generator\ServiceClientGeneratorLib\Generators\Marshallers\AWSQueryRequestMarshaller.tt"
                        this.Write(this.ToStringHelper.ToStringWithCulture(new string(' ', level * 4)));


        #line default
        #line hidden

        #line 165 "C:\dev\V3\AWSDotNetPublic\generator\ServiceClientGeneratorLib\Generators\Marshallers\AWSQueryRequestMarshaller.tt"
                        this.Write(" \t\t\t   else if(!(");


        #line default
        #line hidden

        #line 165 "C:\dev\V3\AWSDotNetPublic\generator\ServiceClientGeneratorLib\Generators\Marshallers\AWSQueryRequestMarshaller.tt"
                        this.Write(this.ToStringHelper.ToStringWithCulture(variableName));


        #line default
        #line hidden

        #line 165 "C:\dev\V3\AWSDotNetPublic\generator\ServiceClientGeneratorLib\Generators\Marshallers\AWSQueryRequestMarshaller.tt"
                        this.Write(".IsSet");


        #line default
        #line hidden

        #line 165 "C:\dev\V3\AWSDotNetPublic\generator\ServiceClientGeneratorLib\Generators\Marshallers\AWSQueryRequestMarshaller.tt"
                        this.Write(this.ToStringHelper.ToStringWithCulture(member.PropertyName));


        #line default
        #line hidden

        #line 165 "C:\dev\V3\AWSDotNetPublic\generator\ServiceClientGeneratorLib\Generators\Marshallers\AWSQueryRequestMarshaller.tt"
                        this.Write("()))\r\n");


        #line default
        #line hidden

        #line 166 "C:\dev\V3\AWSDotNetPublic\generator\ServiceClientGeneratorLib\Generators\Marshallers\AWSQueryRequestMarshaller.tt"
                        this.Write(this.ToStringHelper.ToStringWithCulture(new string(' ', level * 4)));


        #line default
        #line hidden

        #line 166 "C:\dev\V3\AWSDotNetPublic\generator\ServiceClientGeneratorLib\Generators\Marshallers\AWSQueryRequestMarshaller.tt"
                        this.Write(" \t\t\t   {\r\n");


        #line default
        #line hidden

        #line 167 "C:\dev\V3\AWSDotNetPublic\generator\ServiceClientGeneratorLib\Generators\Marshallers\AWSQueryRequestMarshaller.tt"
                        this.Write(this.ToStringHelper.ToStringWithCulture(new string(' ', level * 4)));


        #line default
        #line hidden

        #line 167 "C:\dev\V3\AWSDotNetPublic\generator\ServiceClientGeneratorLib\Generators\Marshallers\AWSQueryRequestMarshaller.tt"
                        this.Write("                    request.Parameters.Add(");


        #line default
        #line hidden

        #line 167 "C:\dev\V3\AWSDotNetPublic\generator\ServiceClientGeneratorLib\Generators\Marshallers\AWSQueryRequestMarshaller.tt"
                        this.Write(this.ToStringHelper.ToStringWithCulture(context));


        #line default
        #line hidden

        #line 167 "C:\dev\V3\AWSDotNetPublic\generator\ServiceClientGeneratorLib\Generators\Marshallers\AWSQueryRequestMarshaller.tt"
                        this.Write(", StringUtils.FromString(Guid.NewGuid().ToString()));\r\n");


        #line default
        #line hidden

        #line 168 "C:\dev\V3\AWSDotNetPublic\generator\ServiceClientGeneratorLib\Generators\Marshallers\AWSQueryRequestMarshaller.tt"
                    }
                }


        #line default
        #line hidden

        #line 172 "C:\dev\V3\AWSDotNetPublic\generator\ServiceClientGeneratorLib\Generators\Marshallers\AWSQueryRequestMarshaller.tt"
                this.Write(this.ToStringHelper.ToStringWithCulture(new string(' ', level * 4)));


        #line default
        #line hidden

        #line 172 "C:\dev\V3\AWSDotNetPublic\generator\ServiceClientGeneratorLib\Generators\Marshallers\AWSQueryRequestMarshaller.tt"
                this.Write("                }\r\n");


        #line default
        #line hidden

        #line 173 "C:\dev\V3\AWSDotNetPublic\generator\ServiceClientGeneratorLib\Generators\Marshallers\AWSQueryRequestMarshaller.tt"
            }
        }
예제 #17
0
        /// <summary>
        /// Create the template output
        /// </summary>
        public override string TransformText()
        {
            #line 6 "C:\Dev\Worktrees\crr\generator\ServiceClientGeneratorLib\Generators\SourceFiles\ServiceClients45.tt"

            AddLicenseHeader();


            #line default
            #line hidden
            this.Write("\r\n\r\nusing System;\r\nusing System.Runtime.ExceptionServices;\r\nusing System.Threadin" +
                       "g;\r\nusing System.Threading.Tasks;\r\nusing System.Collections.Generic;\r\nusing Syst" +
                       "em.Net;\r\n\r\nusing ");

            #line 18 "C:\Dev\Worktrees\crr\generator\ServiceClientGeneratorLib\Generators\SourceFiles\ServiceClients45.tt"
            this.Write(this.ToStringHelper.ToStringWithCulture(this.Config.Namespace));

            #line default
            #line hidden
            this.Write(".Model;\r\nusing ");

            #line 19 "C:\Dev\Worktrees\crr\generator\ServiceClientGeneratorLib\Generators\SourceFiles\ServiceClients45.tt"
            this.Write(this.ToStringHelper.ToStringWithCulture(this.Config.Namespace));

            #line default
            #line hidden
            this.Write(".Model.Internal.MarshallTransformations;\r\nusing ");

            #line 20 "C:\Dev\Worktrees\crr\generator\ServiceClientGeneratorLib\Generators\SourceFiles\ServiceClients45.tt"
            this.Write(this.ToStringHelper.ToStringWithCulture(this.Config.Namespace));

            #line default
            #line hidden
            this.Write(".Internal;\r\nusing Amazon.Runtime;\r\nusing Amazon.Runtime.Internal;\r\nusing Amazon.R" +
                       "untime.Internal.Auth;\r\nusing Amazon.Runtime.Internal.Transform;\r\n\r\nnamespace ");

            #line 26 "C:\Dev\Worktrees\crr\generator\ServiceClientGeneratorLib\Generators\SourceFiles\ServiceClients45.tt"
            this.Write(this.ToStringHelper.ToStringWithCulture(this.Config.Namespace));

            #line default
            #line hidden
            this.Write("\r\n{\r\n");

            #line 28 "C:\Dev\Worktrees\crr\generator\ServiceClientGeneratorLib\Generators\SourceFiles\ServiceClients45.tt"
            this.FormatServiceClientDocumentation(this.Config.ServiceModel.Documentation);

            #line default
            #line hidden
            this.Write("    public partial class Amazon");

            #line 29 "C:\Dev\Worktrees\crr\generator\ServiceClientGeneratorLib\Generators\SourceFiles\ServiceClients45.tt"
            this.Write(this.ToStringHelper.ToStringWithCulture(this.Config.ClassName));

            #line default
            #line hidden
            this.Write("Client : AmazonServiceClient, IAmazon");

            #line 29 "C:\Dev\Worktrees\crr\generator\ServiceClientGeneratorLib\Generators\SourceFiles\ServiceClients45.tt"
            this.Write(this.ToStringHelper.ToStringWithCulture(this.Config.ClassName));

            #line default
            #line hidden
            this.Write("\r\n    {\r\n\t\tprivate static IServiceMetadata serviceMetadata = new Amazon");

            #line 31 "C:\Dev\Worktrees\crr\generator\ServiceClientGeneratorLib\Generators\SourceFiles\ServiceClients45.tt"
            this.Write(this.ToStringHelper.ToStringWithCulture(this.Config.ClassName));

            #line default
            #line hidden
            this.Write("Metadata();\r\n");

            #line 32 "C:\Dev\Worktrees\crr\generator\ServiceClientGeneratorLib\Generators\SourceFiles\ServiceClients45.tt"

            // Generates basic constructors for the service if enabled in the model
            if (this.Config.GenerateConstructors)
            {
            #line default
            #line hidden
                this.Write("        #region Constructors\r\n\r\n        /// <summary>\r\n        /// Constructs Ama" +
                           "zon");

            #line 40 "C:\Dev\Worktrees\crr\generator\ServiceClientGeneratorLib\Generators\SourceFiles\ServiceClients45.tt"
                this.Write(this.ToStringHelper.ToStringWithCulture(this.Config.ClassName));

            #line default
            #line hidden
                this.Write(@"Client with the credentials loaded from the application's
        /// default configuration, and if unsuccessful from the Instance Profile service on an EC2 instance.
        /// 
        /// Example App.config with credentials set. 
        /// <code>
        /// &lt;?xml version=""1.0"" encoding=""utf-8"" ?&gt;
        /// &lt;configuration&gt;
        ///     &lt;appSettings&gt;
        ///         &lt;add key=""AWSProfileName"" value=""AWS Default""/&gt;
        ///     &lt;/appSettings&gt;
        /// &lt;/configuration&gt;
        /// </code>
        ///
        /// </summary>
        public Amazon");

            #line 54 "C:\Dev\Worktrees\crr\generator\ServiceClientGeneratorLib\Generators\SourceFiles\ServiceClients45.tt"
                this.Write(this.ToStringHelper.ToStringWithCulture(this.Config.ClassName));

            #line default
            #line hidden
                this.Write("Client()\r\n            : base(FallbackCredentialsFactory.GetCredentials(), new Ama" +
                           "zon");

            #line 55 "C:\Dev\Worktrees\crr\generator\ServiceClientGeneratorLib\Generators\SourceFiles\ServiceClients45.tt"
                this.Write(this.ToStringHelper.ToStringWithCulture(this.Config.ClassName));

            #line default
            #line hidden
                this.Write("Config()) { }\r\n\r\n        /// <summary>\r\n        /// Constructs Amazon");

            #line 58 "C:\Dev\Worktrees\crr\generator\ServiceClientGeneratorLib\Generators\SourceFiles\ServiceClients45.tt"
                this.Write(this.ToStringHelper.ToStringWithCulture(this.Config.ClassName));

            #line default
            #line hidden
                this.Write(@"Client with the credentials loaded from the application's
        /// default configuration, and if unsuccessful from the Instance Profile service on an EC2 instance.
        /// 
        /// Example App.config with credentials set. 
        /// <code>
        /// &lt;?xml version=""1.0"" encoding=""utf-8"" ?&gt;
        /// &lt;configuration&gt;
        ///     &lt;appSettings&gt;
        ///         &lt;add key=""AWSProfileName"" value=""AWS Default""/&gt;
        ///     &lt;/appSettings&gt;
        /// &lt;/configuration&gt;
        /// </code>
        ///
        /// </summary>
        /// <param name=""region"">The region to connect.</param>
        public Amazon");

            #line 73 "C:\Dev\Worktrees\crr\generator\ServiceClientGeneratorLib\Generators\SourceFiles\ServiceClients45.tt"
                this.Write(this.ToStringHelper.ToStringWithCulture(this.Config.ClassName));

            #line default
            #line hidden
                this.Write("Client(RegionEndpoint region)\r\n            : base(FallbackCredentialsFactory.GetC" +
                           "redentials(), new Amazon");

            #line 74 "C:\Dev\Worktrees\crr\generator\ServiceClientGeneratorLib\Generators\SourceFiles\ServiceClients45.tt"
                this.Write(this.ToStringHelper.ToStringWithCulture(this.Config.ClassName));

            #line default
            #line hidden
                this.Write("Config{RegionEndpoint = region}) { }\r\n\r\n        /// <summary>\r\n        /// Constr" +
                           "ucts Amazon");

            #line 77 "C:\Dev\Worktrees\crr\generator\ServiceClientGeneratorLib\Generators\SourceFiles\ServiceClients45.tt"
                this.Write(this.ToStringHelper.ToStringWithCulture(this.Config.ClassName));

            #line default
            #line hidden
                this.Write(@"Client with the credentials loaded from the application's
        /// default configuration, and if unsuccessful from the Instance Profile service on an EC2 instance.
        /// 
        /// Example App.config with credentials set. 
        /// <code>
        /// &lt;?xml version=""1.0"" encoding=""utf-8"" ?&gt;
        /// &lt;configuration&gt;
        ///     &lt;appSettings&gt;
        ///         &lt;add key=""AWSProfileName"" value=""AWS Default""/&gt;
        ///     &lt;/appSettings&gt;
        /// &lt;/configuration&gt;
        /// </code>
        ///
        /// </summary>
        /// <param name=""config"">The Amazon");

            #line 91 "C:\Dev\Worktrees\crr\generator\ServiceClientGeneratorLib\Generators\SourceFiles\ServiceClients45.tt"
                this.Write(this.ToStringHelper.ToStringWithCulture(this.Config.ClassName));

            #line default
            #line hidden
                this.Write("Client Configuration Object</param>\r\n        public Amazon");

            #line 92 "C:\Dev\Worktrees\crr\generator\ServiceClientGeneratorLib\Generators\SourceFiles\ServiceClients45.tt"
                this.Write(this.ToStringHelper.ToStringWithCulture(this.Config.ClassName));

            #line default
            #line hidden
                this.Write("Client(Amazon");

            #line 92 "C:\Dev\Worktrees\crr\generator\ServiceClientGeneratorLib\Generators\SourceFiles\ServiceClients45.tt"
                this.Write(this.ToStringHelper.ToStringWithCulture(this.Config.ClassName));

            #line default
            #line hidden
                this.Write("Config config)\r\n            : base(FallbackCredentialsFactory.GetCredentials(), c" +
                           "onfig) { }\r\n\r\n        /// <summary>\r\n        /// Constructs Amazon");

            #line 96 "C:\Dev\Worktrees\crr\generator\ServiceClientGeneratorLib\Generators\SourceFiles\ServiceClients45.tt"
                this.Write(this.ToStringHelper.ToStringWithCulture(this.Config.ClassName));

            #line default
            #line hidden
                this.Write("Client with AWS Credentials\r\n        /// </summary>\r\n        /// <param name=\"cre" +
                           "dentials\">AWS Credentials</param>\r\n        public Amazon");

            #line 99 "C:\Dev\Worktrees\crr\generator\ServiceClientGeneratorLib\Generators\SourceFiles\ServiceClients45.tt"
                this.Write(this.ToStringHelper.ToStringWithCulture(this.Config.ClassName));

            #line default
            #line hidden
                this.Write("Client(AWSCredentials credentials)\r\n            : this(credentials, new Amazon");

            #line 100 "C:\Dev\Worktrees\crr\generator\ServiceClientGeneratorLib\Generators\SourceFiles\ServiceClients45.tt"
                this.Write(this.ToStringHelper.ToStringWithCulture(this.Config.ClassName));

            #line default
            #line hidden
                this.Write("Config())\r\n        {\r\n        }\r\n\r\n        /// <summary>\r\n        /// Constructs " +
                           "Amazon");

            #line 105 "C:\Dev\Worktrees\crr\generator\ServiceClientGeneratorLib\Generators\SourceFiles\ServiceClients45.tt"
                this.Write(this.ToStringHelper.ToStringWithCulture(this.Config.ClassName));

            #line default
            #line hidden
                this.Write("Client with AWS Credentials\r\n        /// </summary>\r\n        /// <param name=\"cre" +
                           "dentials\">AWS Credentials</param>\r\n        /// <param name=\"region\">The region t" +
                           "o connect.</param>\r\n        public Amazon");

            #line 109 "C:\Dev\Worktrees\crr\generator\ServiceClientGeneratorLib\Generators\SourceFiles\ServiceClients45.tt"
                this.Write(this.ToStringHelper.ToStringWithCulture(this.Config.ClassName));

            #line default
            #line hidden
                this.Write("Client(AWSCredentials credentials, RegionEndpoint region)\r\n            : this(cre" +
                           "dentials, new Amazon");

            #line 110 "C:\Dev\Worktrees\crr\generator\ServiceClientGeneratorLib\Generators\SourceFiles\ServiceClients45.tt"
                this.Write(this.ToStringHelper.ToStringWithCulture(this.Config.ClassName));

            #line default
            #line hidden
                this.Write("Config{RegionEndpoint = region})\r\n        {\r\n        }\r\n\r\n        /// <summary>\r\n" +
                           "        /// Constructs Amazon");

            #line 115 "C:\Dev\Worktrees\crr\generator\ServiceClientGeneratorLib\Generators\SourceFiles\ServiceClients45.tt"
                this.Write(this.ToStringHelper.ToStringWithCulture(this.Config.ClassName));

            #line default
            #line hidden
                this.Write("Client with AWS Credentials and an\r\n        /// Amazon");

            #line 116 "C:\Dev\Worktrees\crr\generator\ServiceClientGeneratorLib\Generators\SourceFiles\ServiceClients45.tt"
                this.Write(this.ToStringHelper.ToStringWithCulture(this.Config.ClassName));

            #line default
            #line hidden
                this.Write("Client Configuration object.\r\n        /// </summary>\r\n        /// <param name=\"cr" +
                           "edentials\">AWS Credentials</param>\r\n        /// <param name=\"clientConfig\">The A" +
                           "mazon");

            #line 119 "C:\Dev\Worktrees\crr\generator\ServiceClientGeneratorLib\Generators\SourceFiles\ServiceClients45.tt"
                this.Write(this.ToStringHelper.ToStringWithCulture(this.Config.ClassName));

            #line default
            #line hidden
                this.Write("Client Configuration Object</param>\r\n        public Amazon");

            #line 120 "C:\Dev\Worktrees\crr\generator\ServiceClientGeneratorLib\Generators\SourceFiles\ServiceClients45.tt"
                this.Write(this.ToStringHelper.ToStringWithCulture(this.Config.ClassName));

            #line default
            #line hidden
                this.Write("Client(AWSCredentials credentials, Amazon");

            #line 120 "C:\Dev\Worktrees\crr\generator\ServiceClientGeneratorLib\Generators\SourceFiles\ServiceClients45.tt"
                this.Write(this.ToStringHelper.ToStringWithCulture(this.Config.ClassName));

            #line default
            #line hidden
                this.Write("Config clientConfig)\r\n            : base(credentials, clientConfig)\r\n        {\r\n " +
                           "       }\r\n\r\n        /// <summary>\r\n        /// Constructs Amazon");

            #line 126 "C:\Dev\Worktrees\crr\generator\ServiceClientGeneratorLib\Generators\SourceFiles\ServiceClients45.tt"
                this.Write(this.ToStringHelper.ToStringWithCulture(this.Config.ClassName));

            #line default
            #line hidden
                this.Write("Client with AWS Access Key ID and AWS Secret Key\r\n        /// </summary>\r\n       " +
                           " /// <param name=\"awsAccessKeyId\">AWS Access Key ID</param>\r\n        /// <param " +
                           "name=\"awsSecretAccessKey\">AWS Secret Access Key</param>\r\n        public Amazon");

            #line 130 "C:\Dev\Worktrees\crr\generator\ServiceClientGeneratorLib\Generators\SourceFiles\ServiceClients45.tt"
                this.Write(this.ToStringHelper.ToStringWithCulture(this.Config.ClassName));

            #line default
            #line hidden
                this.Write("Client(string awsAccessKeyId, string awsSecretAccessKey)\r\n            : this(awsA" +
                           "ccessKeyId, awsSecretAccessKey, new Amazon");

            #line 131 "C:\Dev\Worktrees\crr\generator\ServiceClientGeneratorLib\Generators\SourceFiles\ServiceClients45.tt"
                this.Write(this.ToStringHelper.ToStringWithCulture(this.Config.ClassName));

            #line default
            #line hidden
                this.Write("Config())\r\n        {\r\n        }\r\n\r\n        /// <summary>\r\n        /// Constructs " +
                           "Amazon");

            #line 136 "C:\Dev\Worktrees\crr\generator\ServiceClientGeneratorLib\Generators\SourceFiles\ServiceClients45.tt"
                this.Write(this.ToStringHelper.ToStringWithCulture(this.Config.ClassName));

            #line default
            #line hidden
                this.Write(@"Client with AWS Access Key ID and AWS Secret Key
        /// </summary>
        /// <param name=""awsAccessKeyId"">AWS Access Key ID</param>
        /// <param name=""awsSecretAccessKey"">AWS Secret Access Key</param>
        /// <param name=""region"">The region to connect.</param>
        public Amazon");

            #line 141 "C:\Dev\Worktrees\crr\generator\ServiceClientGeneratorLib\Generators\SourceFiles\ServiceClients45.tt"
                this.Write(this.ToStringHelper.ToStringWithCulture(this.Config.ClassName));

            #line default
            #line hidden
                this.Write("Client(string awsAccessKeyId, string awsSecretAccessKey, RegionEndpoint region)\r\n" +
                           "            : this(awsAccessKeyId, awsSecretAccessKey, new Amazon");

            #line 142 "C:\Dev\Worktrees\crr\generator\ServiceClientGeneratorLib\Generators\SourceFiles\ServiceClients45.tt"
                this.Write(this.ToStringHelper.ToStringWithCulture(this.Config.ClassName));

            #line default
            #line hidden
                this.Write("Config() {RegionEndpoint=region})\r\n        {\r\n        }\r\n\r\n        /// <summary>\r" +
                           "\n        /// Constructs Amazon");

            #line 147 "C:\Dev\Worktrees\crr\generator\ServiceClientGeneratorLib\Generators\SourceFiles\ServiceClients45.tt"
                this.Write(this.ToStringHelper.ToStringWithCulture(this.Config.ClassName));

            #line default
            #line hidden
                this.Write("Client with AWS Access Key ID, AWS Secret Key and an\r\n        /// Amazon");

            #line 148 "C:\Dev\Worktrees\crr\generator\ServiceClientGeneratorLib\Generators\SourceFiles\ServiceClients45.tt"
                this.Write(this.ToStringHelper.ToStringWithCulture(this.Config.ClassName));

            #line default
            #line hidden
                this.Write("Client Configuration object. \r\n        /// </summary>\r\n        /// <param name=\"a" +
                           "wsAccessKeyId\">AWS Access Key ID</param>\r\n        /// <param name=\"awsSecretAcce" +
                           "ssKey\">AWS Secret Access Key</param>\r\n        /// <param name=\"clientConfig\">The" +
                           " Amazon");

            #line 152 "C:\Dev\Worktrees\crr\generator\ServiceClientGeneratorLib\Generators\SourceFiles\ServiceClients45.tt"
                this.Write(this.ToStringHelper.ToStringWithCulture(this.Config.ClassName));

            #line default
            #line hidden
                this.Write("Client Configuration Object</param>\r\n        public Amazon");

            #line 153 "C:\Dev\Worktrees\crr\generator\ServiceClientGeneratorLib\Generators\SourceFiles\ServiceClients45.tt"
                this.Write(this.ToStringHelper.ToStringWithCulture(this.Config.ClassName));

            #line default
            #line hidden
                this.Write("Client(string awsAccessKeyId, string awsSecretAccessKey, Amazon");

            #line 153 "C:\Dev\Worktrees\crr\generator\ServiceClientGeneratorLib\Generators\SourceFiles\ServiceClients45.tt"
                this.Write(this.ToStringHelper.ToStringWithCulture(this.Config.ClassName));

            #line default
            #line hidden
                this.Write("Config clientConfig)\r\n            : base(awsAccessKeyId, awsSecretAccessKey, clie" +
                           "ntConfig)\r\n        {\r\n        }\r\n\r\n        /// <summary>\r\n        /// Constructs" +
                           " Amazon");

            #line 159 "C:\Dev\Worktrees\crr\generator\ServiceClientGeneratorLib\Generators\SourceFiles\ServiceClients45.tt"
                this.Write(this.ToStringHelper.ToStringWithCulture(this.Config.ClassName));

            #line default
            #line hidden
                this.Write(@"Client with AWS Access Key ID and AWS Secret Key
        /// </summary>
        /// <param name=""awsAccessKeyId"">AWS Access Key ID</param>
        /// <param name=""awsSecretAccessKey"">AWS Secret Access Key</param>
        /// <param name=""awsSessionToken"">AWS Session Token</param>
        public Amazon");

            #line 164 "C:\Dev\Worktrees\crr\generator\ServiceClientGeneratorLib\Generators\SourceFiles\ServiceClients45.tt"
                this.Write(this.ToStringHelper.ToStringWithCulture(this.Config.ClassName));

            #line default
            #line hidden
                this.Write("Client(string awsAccessKeyId, string awsSecretAccessKey, string awsSessionToken)\r" +
                           "\n            : this(awsAccessKeyId, awsSecretAccessKey, awsSessionToken, new Ama" +
                           "zon");

            #line 165 "C:\Dev\Worktrees\crr\generator\ServiceClientGeneratorLib\Generators\SourceFiles\ServiceClients45.tt"
                this.Write(this.ToStringHelper.ToStringWithCulture(this.Config.ClassName));

            #line default
            #line hidden
                this.Write("Config())\r\n        {\r\n        }\r\n\r\n        /// <summary>\r\n        /// Constructs " +
                           "Amazon");

            #line 170 "C:\Dev\Worktrees\crr\generator\ServiceClientGeneratorLib\Generators\SourceFiles\ServiceClients45.tt"
                this.Write(this.ToStringHelper.ToStringWithCulture(this.Config.ClassName));

            #line default
            #line hidden
                this.Write(@"Client with AWS Access Key ID and AWS Secret Key
        /// </summary>
        /// <param name=""awsAccessKeyId"">AWS Access Key ID</param>
        /// <param name=""awsSecretAccessKey"">AWS Secret Access Key</param>
        /// <param name=""awsSessionToken"">AWS Session Token</param>
        /// <param name=""region"">The region to connect.</param>
        public Amazon");

            #line 176 "C:\Dev\Worktrees\crr\generator\ServiceClientGeneratorLib\Generators\SourceFiles\ServiceClients45.tt"
                this.Write(this.ToStringHelper.ToStringWithCulture(this.Config.ClassName));

            #line default
            #line hidden
                this.Write("Client(string awsAccessKeyId, string awsSecretAccessKey, string awsSessionToken, " +
                           "RegionEndpoint region)\r\n            : this(awsAccessKeyId, awsSecretAccessKey, a" +
                           "wsSessionToken, new Amazon");

            #line 177 "C:\Dev\Worktrees\crr\generator\ServiceClientGeneratorLib\Generators\SourceFiles\ServiceClients45.tt"
                this.Write(this.ToStringHelper.ToStringWithCulture(this.Config.ClassName));

            #line default
            #line hidden
                this.Write("Config{RegionEndpoint = region})\r\n        {\r\n        }\r\n\r\n        /// <summary>\r\n" +
                           "        /// Constructs Amazon");

            #line 182 "C:\Dev\Worktrees\crr\generator\ServiceClientGeneratorLib\Generators\SourceFiles\ServiceClients45.tt"
                this.Write(this.ToStringHelper.ToStringWithCulture(this.Config.ClassName));

            #line default
            #line hidden
                this.Write("Client with AWS Access Key ID, AWS Secret Key and an\r\n        /// Amazon");

            #line 183 "C:\Dev\Worktrees\crr\generator\ServiceClientGeneratorLib\Generators\SourceFiles\ServiceClients45.tt"
                this.Write(this.ToStringHelper.ToStringWithCulture(this.Config.ClassName));

            #line default
            #line hidden
                this.Write(@"Client Configuration object. 
        /// </summary>
        /// <param name=""awsAccessKeyId"">AWS Access Key ID</param>
        /// <param name=""awsSecretAccessKey"">AWS Secret Access Key</param>
        /// <param name=""awsSessionToken"">AWS Session Token</param>
        /// <param name=""clientConfig"">The Amazon");

            #line 188 "C:\Dev\Worktrees\crr\generator\ServiceClientGeneratorLib\Generators\SourceFiles\ServiceClients45.tt"
                this.Write(this.ToStringHelper.ToStringWithCulture(this.Config.ClassName));

            #line default
            #line hidden
                this.Write("Client Configuration Object</param>\r\n        public Amazon");

            #line 189 "C:\Dev\Worktrees\crr\generator\ServiceClientGeneratorLib\Generators\SourceFiles\ServiceClients45.tt"
                this.Write(this.ToStringHelper.ToStringWithCulture(this.Config.ClassName));

            #line default
            #line hidden
                this.Write("Client(string awsAccessKeyId, string awsSecretAccessKey, string awsSessionToken, " +
                           "Amazon");

            #line 189 "C:\Dev\Worktrees\crr\generator\ServiceClientGeneratorLib\Generators\SourceFiles\ServiceClients45.tt"
                this.Write(this.ToStringHelper.ToStringWithCulture(this.Config.ClassName));

            #line default
            #line hidden
                this.Write("Config clientConfig)\r\n            : base(awsAccessKeyId, awsSecretAccessKey, awsS" +
                           "essionToken, clientConfig)\r\n        {\r\n        }\r\n\r\n        #endregion\r\n");

            #line 195 "C:\Dev\Worktrees\crr\generator\ServiceClientGeneratorLib\Generators\SourceFiles\ServiceClients45.tt"
            }


            #line default
            #line hidden
            this.Write("\r\n        #region Overrides\r\n\r\n        /// <summary>\r\n        /// Creates the sig" +
                       "ner for the service.\r\n        /// </summary>\r\n        protected override Abstrac" +
                       "tAWSSigner CreateSigner()\r\n        {\r\n            return new ");

            #line 206 "C:\Dev\Worktrees\crr\generator\ServiceClientGeneratorLib\Generators\SourceFiles\ServiceClients45.tt"
            this.Write(this.ToStringHelper.ToStringWithCulture(GeneratorHelpers.DetermineSigner(this.Config.ServiceModel.SignatureVersion, this.Config.ClassName)));

            #line default
            #line hidden
            this.Write("();\r\n        }    \r\n\r\n");

            #line 209 "C:\Dev\Worktrees\crr\generator\ServiceClientGeneratorLib\Generators\SourceFiles\ServiceClients45.tt"

            // Generates any overrides specified in the customizations file
            if (this.Config.ServiceModel.Customizations.PipelineOverride != null)
            {
            #line default
            #line hidden
                this.Write("        /// <summary>\r\n        /// Customize the pipeline\r\n        /// </summary>" +
                           "\r\n        /// <param name=\"pipeline\"></param>\r\n        protected override void C" +
                           "ustomizeRuntimePipeline(RuntimePipeline pipeline)\r\n        {\r\n");

            #line 220 "C:\Dev\Worktrees\crr\generator\ServiceClientGeneratorLib\Generators\SourceFiles\ServiceClients45.tt"

                var pipelineOverrides = this.Config.ServiceModel.Customizations.PipelineOverride;
                foreach (var o in pipelineOverrides.Overrides)
                {
                    if (o.OverrideMethod == "remove")
                    {
            #line default
            #line hidden
                        this.Write("            pipeline.");

            #line 227 "C:\Dev\Worktrees\crr\generator\ServiceClientGeneratorLib\Generators\SourceFiles\ServiceClients45.tt"
                        this.Write(this.ToStringHelper.ToStringWithCulture(o.FormattedOverrideMethod));

            #line default
            #line hidden
                        this.Write("();\r\n");

            #line 228 "C:\Dev\Worktrees\crr\generator\ServiceClientGeneratorLib\Generators\SourceFiles\ServiceClients45.tt"
                    }
                    else
                    {
            #line default
            #line hidden
                        this.Write("            pipeline.");

            #line 233 "C:\Dev\Worktrees\crr\generator\ServiceClientGeneratorLib\Generators\SourceFiles\ServiceClients45.tt"
                        this.Write(this.ToStringHelper.ToStringWithCulture(o.FormattedOverrideMethod));

            #line default
            #line hidden
                        this.Write("(new ");

            #line 233 "C:\Dev\Worktrees\crr\generator\ServiceClientGeneratorLib\Generators\SourceFiles\ServiceClients45.tt"
                        this.Write(this.ToStringHelper.ToStringWithCulture(o.NewType));

            #line default
            #line hidden
                        this.Write("(");

            #line 233 "C:\Dev\Worktrees\crr\generator\ServiceClientGeneratorLib\Generators\SourceFiles\ServiceClients45.tt"
                        this.Write(this.ToStringHelper.ToStringWithCulture(o.ConstructorInput));

            #line default
            #line hidden
                        this.Write("));\r\n");

            #line 234 "C:\Dev\Worktrees\crr\generator\ServiceClientGeneratorLib\Generators\SourceFiles\ServiceClients45.tt"
                    }
                }


            #line default
            #line hidden
                this.Write("        }\t\r\n");

            #line 239 "C:\Dev\Worktrees\crr\generator\ServiceClientGeneratorLib\Generators\SourceFiles\ServiceClients45.tt"
            }


            #line default
            #line hidden
            this.Write(@"		/// <summary>
        /// Capture metadata for the service.
        /// </summary>
        protected override IServiceMetadata ServiceMetadata
        {
            get
            {
                return serviceMetadata;
            }
        }

        #endregion

        #region Dispose

        /// <summary>
        /// Disposes the service client.
        /// </summary>
        protected override void Dispose(bool disposing)
        {
            base.Dispose(disposing);
        }

        #endregion

");

            #line 267 "C:\Dev\Worktrees\crr\generator\ServiceClientGeneratorLib\Generators\SourceFiles\ServiceClients45.tt"

            var endpointOperation = this.Config.ServiceModel.FindEndpointOperation();
            if (endpointOperation != null)
            {
            #line default
            #line hidden
                this.Write(@"        #region  EndpointOperation Override

        protected override IEnumerable<DiscoveryEndpointBase> EndpointOperation(EndpointOperationContextBase context)
        {
            return EndpointDiscoveryResolver.ResolveEndpoints(context, () =>
            {
				var request = new "                );

            #line 278 "C:\Dev\Worktrees\crr\generator\ServiceClientGeneratorLib\Generators\SourceFiles\ServiceClients45.tt"
                this.Write(this.ToStringHelper.ToStringWithCulture(endpointOperation.Name));

            #line default
            #line hidden
                this.Write("Request\r\n\t\t\t\t{\r\n");

            #line 280 "C:\Dev\Worktrees\crr\generator\ServiceClientGeneratorLib\Generators\SourceFiles\ServiceClients45.tt"

                if (endpointOperation.RequestHasOperationEndpointOperationMember)
                {
            #line default
            #line hidden
                    this.Write("\t\t\t\t\tOperation = context.OperationName,\r\n");

            #line 285 "C:\Dev\Worktrees\crr\generator\ServiceClientGeneratorLib\Generators\SourceFiles\ServiceClients45.tt"
                }
                if (endpointOperation.RequestHasIdentifiersEndpointOperationMember)
                {
            #line default
            #line hidden
                    this.Write("\t\t\t\t\tIdentifiers = new Dictionary<string, string>(context.EndpointDiscoveryData.I" +
                               "dentifiers),\r\n");

            #line 291 "C:\Dev\Worktrees\crr\generator\ServiceClientGeneratorLib\Generators\SourceFiles\ServiceClients45.tt"
                }


            #line default
            #line hidden
                this.Write("\t\t\t\t};\r\n\t\t\t\t\r\n\t\t\t\tvar response = ");

            #line 296 "C:\Dev\Worktrees\crr\generator\ServiceClientGeneratorLib\Generators\SourceFiles\ServiceClients45.tt"
                this.Write(this.ToStringHelper.ToStringWithCulture(endpointOperation.Name));

            #line default
            #line hidden
                this.Write(@"(request);
				if(response.HttpStatusCode != HttpStatusCode.OK || response.Endpoints == null)
				{
					return null;
				}

				var endpoints = new List<DiscoveryEndpointBase>();
				foreach(var endpoint in response.Endpoints)
                {
                    endpoints.Add(new DiscoveryEndpoint(endpoint.Address, endpoint.CachePeriodInMinutes));
                }
            
				return endpoints;
			});
        }

        #endregion
");

            #line 313 "C:\Dev\Worktrees\crr\generator\ServiceClientGeneratorLib\Generators\SourceFiles\ServiceClients45.tt"
            }

            foreach (var operation in this.Config.ServiceModel.Operations)
            {
            #line default
            #line hidden
                this.Write("\r\n        #region  ");

            #line 320 "C:\Dev\Worktrees\crr\generator\ServiceClientGeneratorLib\Generators\SourceFiles\ServiceClients45.tt"
                this.Write(this.ToStringHelper.ToStringWithCulture(operation.Name));

            #line default
            #line hidden
                this.Write("\r\n\r\n");

            #line 322 "C:\Dev\Worktrees\crr\generator\ServiceClientGeneratorLib\Generators\SourceFiles\ServiceClients45.tt"

                // Creates a version of the operation that takes no arguments and passes a request with no set members if specified in the customizations
                if (this.Config.ServiceModel.Customizations.CreateNoArgOverload(operation.Name))
                {
            #line default
            #line hidden

            #line 327 "C:\Dev\Worktrees\crr\generator\ServiceClientGeneratorLib\Generators\SourceFiles\ServiceClients45.tt"

                    this.FormatOperationDocumentationSync(operation, false);
                    if (operation.IsDeprecated)
                    {
            #line default
            #line hidden
                        this.Write("\t\t[Obsolete(\"");

            #line 332 "C:\Dev\Worktrees\crr\generator\ServiceClientGeneratorLib\Generators\SourceFiles\ServiceClients45.tt"
                        this.Write(this.ToStringHelper.ToStringWithCulture(operation.DeprecationMessage));

            #line default
            #line hidden
                        this.Write("\")]\r\n");

            #line 333 "C:\Dev\Worktrees\crr\generator\ServiceClientGeneratorLib\Generators\SourceFiles\ServiceClients45.tt"
                    }


            #line default
            #line hidden
                    this.Write("        public virtual ");

            #line 336 "C:\Dev\Worktrees\crr\generator\ServiceClientGeneratorLib\Generators\SourceFiles\ServiceClients45.tt"
                    this.Write(this.ToStringHelper.ToStringWithCulture(operation.Name));

            #line default
            #line hidden
                    this.Write("Response ");

            #line 336 "C:\Dev\Worktrees\crr\generator\ServiceClientGeneratorLib\Generators\SourceFiles\ServiceClients45.tt"
                    this.Write(this.ToStringHelper.ToStringWithCulture(operation.Name));

            #line default
            #line hidden
                    this.Write("()\r\n        {\r\n            return ");

            #line 338 "C:\Dev\Worktrees\crr\generator\ServiceClientGeneratorLib\Generators\SourceFiles\ServiceClients45.tt"
                    this.Write(this.ToStringHelper.ToStringWithCulture(operation.Name));

            #line default
            #line hidden
                    this.Write("(new ");

            #line 338 "C:\Dev\Worktrees\crr\generator\ServiceClientGeneratorLib\Generators\SourceFiles\ServiceClients45.tt"
                    this.Write(this.ToStringHelper.ToStringWithCulture(operation.Name));

            #line default
            #line hidden
                    this.Write("Request());\r\n        }\r\n\r\n");

            #line 341 "C:\Dev\Worktrees\crr\generator\ServiceClientGeneratorLib\Generators\SourceFiles\ServiceClients45.tt"
                }
                // Adds any simple method forms specified in the customizations file
                AddSimpleClientMethods(operation, true);


            #line default
            #line hidden

            #line 346 "C:\Dev\Worktrees\crr\generator\ServiceClientGeneratorLib\Generators\SourceFiles\ServiceClients45.tt"

                this.FormatOperationDocumentationSync(operation, true);
                if (operation.IsDeprecated)
                {
            #line default
            #line hidden
                    this.Write("\t\t[Obsolete(\"");

            #line 351 "C:\Dev\Worktrees\crr\generator\ServiceClientGeneratorLib\Generators\SourceFiles\ServiceClients45.tt"
                    this.Write(this.ToStringHelper.ToStringWithCulture(operation.DeprecationMessage));

            #line default
            #line hidden
                    this.Write("\")]\r\n");

            #line 352 "C:\Dev\Worktrees\crr\generator\ServiceClientGeneratorLib\Generators\SourceFiles\ServiceClients45.tt"
                }


            #line default
            #line hidden
                this.Write("        ");

            #line 355 "C:\Dev\Worktrees\crr\generator\ServiceClientGeneratorLib\Generators\SourceFiles\ServiceClients45.tt"
                this.Write(this.ToStringHelper.ToStringWithCulture(operation.IsInternal ? "internal" : "public"));

            #line default
            #line hidden
                this.Write(" virtual ");

            #line 355 "C:\Dev\Worktrees\crr\generator\ServiceClientGeneratorLib\Generators\SourceFiles\ServiceClients45.tt"
                this.Write(this.ToStringHelper.ToStringWithCulture(operation.Name));

            #line default
            #line hidden
                this.Write("Response ");

            #line 355 "C:\Dev\Worktrees\crr\generator\ServiceClientGeneratorLib\Generators\SourceFiles\ServiceClients45.tt"
                this.Write(this.ToStringHelper.ToStringWithCulture(operation.Name));

            #line default
            #line hidden
                this.Write("(");

            #line 355 "C:\Dev\Worktrees\crr\generator\ServiceClientGeneratorLib\Generators\SourceFiles\ServiceClients45.tt"
                this.Write(this.ToStringHelper.ToStringWithCulture(operation.Name));

            #line default
            #line hidden
                this.Write("Request request)\r\n        {\r\n            var options = new InvokeOptions();\r\n    " +
                           "        options.RequestMarshaller = ");

            #line 358 "C:\Dev\Worktrees\crr\generator\ServiceClientGeneratorLib\Generators\SourceFiles\ServiceClients45.tt"
                this.Write(this.ToStringHelper.ToStringWithCulture(operation.Name));

            #line default
            #line hidden
                this.Write("RequestMarshaller.Instance;\r\n            options.ResponseUnmarshaller = ");

            #line 359 "C:\Dev\Worktrees\crr\generator\ServiceClientGeneratorLib\Generators\SourceFiles\ServiceClients45.tt"
                this.Write(this.ToStringHelper.ToStringWithCulture(operation.Name));

            #line default
            #line hidden
                this.Write("ResponseUnmarshaller.Instance;\r\n");

            #line 360 "C:\Dev\Worktrees\crr\generator\ServiceClientGeneratorLib\Generators\SourceFiles\ServiceClients45.tt"

                if (!operation.IsEndpointOperation && operation.EndpointDiscoveryEnabled)
                {
            #line default
            #line hidden
                    this.Write("            options.EndpointDiscoveryMarshaller = ");

            #line 364 "C:\Dev\Worktrees\crr\generator\ServiceClientGeneratorLib\Generators\SourceFiles\ServiceClients45.tt"
                    this.Write(this.ToStringHelper.ToStringWithCulture(operation.Name));

            #line default
            #line hidden
                    this.Write("EndpointDiscoveryMarshaller.Instance;\r\n            options.EndpointOperation = En" +
                               "dpointOperation;\r\n");

            #line 366 "C:\Dev\Worktrees\crr\generator\ServiceClientGeneratorLib\Generators\SourceFiles\ServiceClients45.tt"
                }


            #line default
            #line hidden
                this.Write("\r\n            return Invoke<");

            #line 370 "C:\Dev\Worktrees\crr\generator\ServiceClientGeneratorLib\Generators\SourceFiles\ServiceClients45.tt"
                this.Write(this.ToStringHelper.ToStringWithCulture(operation.Name));

            #line default
            #line hidden
                this.Write("Response>(request, options);\r\n        }\r\n\r\n");

            #line 373 "C:\Dev\Worktrees\crr\generator\ServiceClientGeneratorLib\Generators\SourceFiles\ServiceClients45.tt"

                // Creates a version of the operation that takes no arguments and passes a request with no set members if specified in the customizations
                if (this.Config.ServiceModel.Customizations.CreateNoArgOverload(operation.Name))
                {
            #line default
            #line hidden

            #line 378 "C:\Dev\Worktrees\crr\generator\ServiceClientGeneratorLib\Generators\SourceFiles\ServiceClients45.tt"

                    this.FormatOperationDocumentationAsync(operation, false);
                    if (operation.IsDeprecated)
                    {
            #line default
            #line hidden
                        this.Write("\t\t[Obsolete(\"");

            #line 383 "C:\Dev\Worktrees\crr\generator\ServiceClientGeneratorLib\Generators\SourceFiles\ServiceClients45.tt"
                        this.Write(this.ToStringHelper.ToStringWithCulture(operation.DeprecationMessage));

            #line default
            #line hidden
                        this.Write("\")]\r\n");

            #line 384 "C:\Dev\Worktrees\crr\generator\ServiceClientGeneratorLib\Generators\SourceFiles\ServiceClients45.tt"
                    }


            #line default
            #line hidden
                    this.Write("        public virtual Task<");

            #line 387 "C:\Dev\Worktrees\crr\generator\ServiceClientGeneratorLib\Generators\SourceFiles\ServiceClients45.tt"
                    this.Write(this.ToStringHelper.ToStringWithCulture(operation.Name));

            #line default
            #line hidden
                    this.Write("Response> ");

            #line 387 "C:\Dev\Worktrees\crr\generator\ServiceClientGeneratorLib\Generators\SourceFiles\ServiceClients45.tt"
                    this.Write(this.ToStringHelper.ToStringWithCulture(operation.Name));

            #line default
            #line hidden
                    this.Write("Async(System.Threading.CancellationToken cancellationToken = default(Cancellation" +
                               "Token))\r\n        {\r\n            return ");

            #line 389 "C:\Dev\Worktrees\crr\generator\ServiceClientGeneratorLib\Generators\SourceFiles\ServiceClients45.tt"
                    this.Write(this.ToStringHelper.ToStringWithCulture(operation.Name));

            #line default
            #line hidden
                    this.Write("Async(new ");

            #line 389 "C:\Dev\Worktrees\crr\generator\ServiceClientGeneratorLib\Generators\SourceFiles\ServiceClients45.tt"
                    this.Write(this.ToStringHelper.ToStringWithCulture(operation.Name));

            #line default
            #line hidden
                    this.Write("Request(), cancellationToken);\r\n        }\r\n");

            #line 391 "C:\Dev\Worktrees\crr\generator\ServiceClientGeneratorLib\Generators\SourceFiles\ServiceClients45.tt"
                }

                // Add async simple methods
                AddSimpleClientMethods(operation, false);

                AddAsyncDocumentation(operation);
                if (operation.IsDeprecated)
                {
            #line default
            #line hidden
                    this.Write("\t\t[Obsolete(\"");

            #line 401 "C:\Dev\Worktrees\crr\generator\ServiceClientGeneratorLib\Generators\SourceFiles\ServiceClients45.tt"
                    this.Write(this.ToStringHelper.ToStringWithCulture(operation.DeprecationMessage));

            #line default
            #line hidden
                    this.Write("\")]\r\n");

            #line 402 "C:\Dev\Worktrees\crr\generator\ServiceClientGeneratorLib\Generators\SourceFiles\ServiceClients45.tt"
                }


            #line default
            #line hidden
                this.Write("        ");

            #line 405 "C:\Dev\Worktrees\crr\generator\ServiceClientGeneratorLib\Generators\SourceFiles\ServiceClients45.tt"
                this.Write(this.ToStringHelper.ToStringWithCulture(operation.IsInternal ? "internal" : "public"));

            #line default
            #line hidden
                this.Write(" virtual Task<");

            #line 405 "C:\Dev\Worktrees\crr\generator\ServiceClientGeneratorLib\Generators\SourceFiles\ServiceClients45.tt"
                this.Write(this.ToStringHelper.ToStringWithCulture(operation.Name));

            #line default
            #line hidden
                this.Write("Response> ");

            #line 405 "C:\Dev\Worktrees\crr\generator\ServiceClientGeneratorLib\Generators\SourceFiles\ServiceClients45.tt"
                this.Write(this.ToStringHelper.ToStringWithCulture(operation.Name));

            #line default
            #line hidden
                this.Write("Async(");

            #line 405 "C:\Dev\Worktrees\crr\generator\ServiceClientGeneratorLib\Generators\SourceFiles\ServiceClients45.tt"
                this.Write(this.ToStringHelper.ToStringWithCulture(operation.Name));

            #line default
            #line hidden
                this.Write("Request request, System.Threading.CancellationToken cancellationToken = default(C" +
                           "ancellationToken))\r\n        {\r\n            var options = new InvokeOptions();\r\n " +
                           "           options.RequestMarshaller = ");

            #line 408 "C:\Dev\Worktrees\crr\generator\ServiceClientGeneratorLib\Generators\SourceFiles\ServiceClients45.tt"
                this.Write(this.ToStringHelper.ToStringWithCulture(operation.Name));

            #line default
            #line hidden
                this.Write("RequestMarshaller.Instance;\r\n            options.ResponseUnmarshaller = ");

            #line 409 "C:\Dev\Worktrees\crr\generator\ServiceClientGeneratorLib\Generators\SourceFiles\ServiceClients45.tt"
                this.Write(this.ToStringHelper.ToStringWithCulture(operation.Name));

            #line default
            #line hidden
                this.Write("ResponseUnmarshaller.Instance;\r\n");

            #line 410 "C:\Dev\Worktrees\crr\generator\ServiceClientGeneratorLib\Generators\SourceFiles\ServiceClients45.tt"

                if (!operation.IsEndpointOperation && operation.EndpointDiscoveryEnabled)
                {
            #line default
            #line hidden
                    this.Write("            options.EndpointDiscoveryMarshaller = ");

            #line 414 "C:\Dev\Worktrees\crr\generator\ServiceClientGeneratorLib\Generators\SourceFiles\ServiceClients45.tt"
                    this.Write(this.ToStringHelper.ToStringWithCulture(operation.Name));

            #line default
            #line hidden
                    this.Write("EndpointDiscoveryMarshaller.Instance;\r\n            options.EndpointOperation = En" +
                               "dpointOperation;\r\n");

            #line 416 "C:\Dev\Worktrees\crr\generator\ServiceClientGeneratorLib\Generators\SourceFiles\ServiceClients45.tt"
                }


            #line default
            #line hidden
                this.Write("            \r\n            return InvokeAsync<");

            #line 420 "C:\Dev\Worktrees\crr\generator\ServiceClientGeneratorLib\Generators\SourceFiles\ServiceClients45.tt"
                this.Write(this.ToStringHelper.ToStringWithCulture(operation.Name));

            #line default
            #line hidden
                this.Write("Response>(request, options, cancellationToken);\r\n        }\r\n\r\n        #endregion\r" +
                           "\n        ");

            #line 424 "C:\Dev\Worktrees\crr\generator\ServiceClientGeneratorLib\Generators\SourceFiles\ServiceClients45.tt"
            }


            #line default
            #line hidden
            this.Write("\r\n    }\r\n}\r\n");
            return(this.GenerationEnvironment.ToString());
        }
예제 #18
0
        /// <summary>
        /// Create the template output
        /// </summary>
        public override string TransformText()
        {
            #line 6 "D:\workspace\AWSDotNetPublic\generator\ServiceClientGeneratorLib\Generators\SourceFiles\ServiceClientsMobile.tt"

            AddLicenseHeader();


            #line default
            #line hidden
            this.Write("\r\n\r\nusing System;\r\nusing System.Runtime.ExceptionServices;\r\nusing System.Threadin" +
                       "g;\r\nusing System.Threading.Tasks;\r\nusing System.Collections.Generic;\r\n\r\nusing ");

            #line 17 "D:\workspace\AWSDotNetPublic\generator\ServiceClientGeneratorLib\Generators\SourceFiles\ServiceClientsMobile.tt"
            this.Write(this.ToStringHelper.ToStringWithCulture(this.Config.Namespace));

            #line default
            #line hidden
            this.Write(".Model;\r\nusing ");

            #line 18 "D:\workspace\AWSDotNetPublic\generator\ServiceClientGeneratorLib\Generators\SourceFiles\ServiceClientsMobile.tt"
            this.Write(this.ToStringHelper.ToStringWithCulture(this.Config.Namespace));

            #line default
            #line hidden
            this.Write(".Model.Internal.MarshallTransformations;\r\nusing Amazon.Runtime;\r\nusing Amazon.Run" +
                       "time.Internal;\r\nusing Amazon.Runtime.Internal.Auth;\r\nusing Amazon.Runtime.Intern" +
                       "al.Transform;\r\n\r\nnamespace ");

            #line 24 "D:\workspace\AWSDotNetPublic\generator\ServiceClientGeneratorLib\Generators\SourceFiles\ServiceClientsMobile.tt"
            this.Write(this.ToStringHelper.ToStringWithCulture(this.Config.Namespace));

            #line default
            #line hidden
            this.Write("\r\n{\r\n");

            #line 26 "D:\workspace\AWSDotNetPublic\generator\ServiceClientGeneratorLib\Generators\SourceFiles\ServiceClientsMobile.tt"
            this.FormatServiceClientDocumentation(this.Config.ServiceModel.Documentation);

            #line default
            #line hidden
            this.Write("    public partial class Amazon");

            #line 27 "D:\workspace\AWSDotNetPublic\generator\ServiceClientGeneratorLib\Generators\SourceFiles\ServiceClientsMobile.tt"
            this.Write(this.ToStringHelper.ToStringWithCulture(this.Config.BaseName));

            #line default
            #line hidden
            this.Write("Client : AmazonServiceClient, IAmazon");

            #line 27 "D:\workspace\AWSDotNetPublic\generator\ServiceClientGeneratorLib\Generators\SourceFiles\ServiceClientsMobile.tt"
            this.Write(this.ToStringHelper.ToStringWithCulture(this.Config.BaseName));

            #line default
            #line hidden
            this.Write("\r\n    {\r\n        \r\n");

            #line 30 "D:\workspace\AWSDotNetPublic\generator\ServiceClientGeneratorLib\Generators\SourceFiles\ServiceClientsMobile.tt"

            // Generates generic constructors for the service if enabled in the model
            if (this.Config.GenerateConstructors)
            {
            #line default
            #line hidden
                this.Write("        #region Constructors\r\n\r\n#if CORECLR\r\n\t\r\n        /// <summary>\r\n        //" +
                           "/ Constructs Amazon");

            #line 40 "D:\workspace\AWSDotNetPublic\generator\ServiceClientGeneratorLib\Generators\SourceFiles\ServiceClientsMobile.tt"
                this.Write(this.ToStringHelper.ToStringWithCulture(this.Config.BaseName));

            #line default
            #line hidden
                this.Write(@"Client with the credentials loaded from the application's
        /// default configuration, and if unsuccessful from the Instance Profile service on an EC2 instance.
        /// 
        /// Example App.config with credentials set. 
        /// <code>
        /// &lt;?xml version=""1.0"" encoding=""utf-8"" ?&gt;
        /// &lt;configuration&gt;
        ///     &lt;appSettings&gt;
        ///         &lt;add key=""AWSProfileName"" value=""AWS Default""/&gt;
        ///     &lt;/appSettings&gt;
        /// &lt;/configuration&gt;
        /// </code>
        ///
        /// </summary>
        public Amazon");

            #line 54 "D:\workspace\AWSDotNetPublic\generator\ServiceClientGeneratorLib\Generators\SourceFiles\ServiceClientsMobile.tt"
                this.Write(this.ToStringHelper.ToStringWithCulture(this.Config.BaseName));

            #line default
            #line hidden
                this.Write("Client()\r\n            : base(FallbackCredentialsFactory.GetCredentials(), new Ama" +
                           "zon");

            #line 55 "D:\workspace\AWSDotNetPublic\generator\ServiceClientGeneratorLib\Generators\SourceFiles\ServiceClientsMobile.tt"
                this.Write(this.ToStringHelper.ToStringWithCulture(this.Config.BaseName));

            #line default
            #line hidden
                this.Write("Config()) { }\r\n\r\n        /// <summary>\r\n        /// Constructs Amazon");

            #line 58 "D:\workspace\AWSDotNetPublic\generator\ServiceClientGeneratorLib\Generators\SourceFiles\ServiceClientsMobile.tt"
                this.Write(this.ToStringHelper.ToStringWithCulture(this.Config.BaseName));

            #line default
            #line hidden
                this.Write(@"Client with the credentials loaded from the application's
        /// default configuration, and if unsuccessful from the Instance Profile service on an EC2 instance.
        /// 
        /// Example App.config with credentials set. 
        /// <code>
        /// &lt;?xml version=""1.0"" encoding=""utf-8"" ?&gt;
        /// &lt;configuration&gt;
        ///     &lt;appSettings&gt;
        ///         &lt;add key=""AWSProfileName"" value=""AWS Default""/&gt;
        ///     &lt;/appSettings&gt;
        /// &lt;/configuration&gt;
        /// </code>
        ///
        /// </summary>
        /// <param name=""region"">The region to connect.</param>
        public Amazon");

            #line 73 "D:\workspace\AWSDotNetPublic\generator\ServiceClientGeneratorLib\Generators\SourceFiles\ServiceClientsMobile.tt"
                this.Write(this.ToStringHelper.ToStringWithCulture(this.Config.BaseName));

            #line default
            #line hidden
                this.Write("Client(RegionEndpoint region)\r\n            : base(FallbackCredentialsFactory.GetC" +
                           "redentials(), new Amazon");

            #line 74 "D:\workspace\AWSDotNetPublic\generator\ServiceClientGeneratorLib\Generators\SourceFiles\ServiceClientsMobile.tt"
                this.Write(this.ToStringHelper.ToStringWithCulture(this.Config.BaseName));

            #line default
            #line hidden
                this.Write("Config{RegionEndpoint = region}) { }\r\n\r\n        /// <summary>\r\n        /// Constr" +
                           "ucts Amazon");

            #line 77 "D:\workspace\AWSDotNetPublic\generator\ServiceClientGeneratorLib\Generators\SourceFiles\ServiceClientsMobile.tt"
                this.Write(this.ToStringHelper.ToStringWithCulture(this.Config.BaseName));

            #line default
            #line hidden
                this.Write(@"Client with the credentials loaded from the application's
        /// default configuration, and if unsuccessful from the Instance Profile service on an EC2 instance.
        /// 
        /// Example App.config with credentials set. 
        /// <code>
        /// &lt;?xml version=""1.0"" encoding=""utf-8"" ?&gt;
        /// &lt;configuration&gt;
        ///     &lt;appSettings&gt;
        ///         &lt;add key=""AWSProfileName"" value=""AWS Default""/&gt;
        ///     &lt;/appSettings&gt;
        /// &lt;/configuration&gt;
        /// </code>
        ///
        /// </summary>
        /// <param name=""config"">The Amazon");

            #line 91 "D:\workspace\AWSDotNetPublic\generator\ServiceClientGeneratorLib\Generators\SourceFiles\ServiceClientsMobile.tt"
                this.Write(this.ToStringHelper.ToStringWithCulture(this.Config.BaseName));

            #line default
            #line hidden
                this.Write("Client Configuration Object</param>\r\n        public Amazon");

            #line 92 "D:\workspace\AWSDotNetPublic\generator\ServiceClientGeneratorLib\Generators\SourceFiles\ServiceClientsMobile.tt"
                this.Write(this.ToStringHelper.ToStringWithCulture(this.Config.BaseName));

            #line default
            #line hidden
                this.Write("Client(Amazon");

            #line 92 "D:\workspace\AWSDotNetPublic\generator\ServiceClientGeneratorLib\Generators\SourceFiles\ServiceClientsMobile.tt"
                this.Write(this.ToStringHelper.ToStringWithCulture(this.Config.BaseName));

            #line default
            #line hidden
                this.Write("Config config)\r\n            : base(FallbackCredentialsFactory.GetCredentials(), c" +
                           "onfig) { }\r\n\r\n#endif\r\n\r\n        /// <summary>\r\n        /// Constructs Amazon");

            #line 98 "D:\workspace\AWSDotNetPublic\generator\ServiceClientGeneratorLib\Generators\SourceFiles\ServiceClientsMobile.tt"
                this.Write(this.ToStringHelper.ToStringWithCulture(this.Config.BaseName));

            #line default
            #line hidden
                this.Write("Client with AWS Credentials\r\n        /// </summary>\r\n        /// <param name=\"cre" +
                           "dentials\">AWS Credentials</param>\r\n        public Amazon");

            #line 101 "D:\workspace\AWSDotNetPublic\generator\ServiceClientGeneratorLib\Generators\SourceFiles\ServiceClientsMobile.tt"
                this.Write(this.ToStringHelper.ToStringWithCulture(this.Config.BaseName));

            #line default
            #line hidden
                this.Write("Client(AWSCredentials credentials)\r\n            : this(credentials, new Amazon");

            #line 102 "D:\workspace\AWSDotNetPublic\generator\ServiceClientGeneratorLib\Generators\SourceFiles\ServiceClientsMobile.tt"
                this.Write(this.ToStringHelper.ToStringWithCulture(this.Config.BaseName));

            #line default
            #line hidden
                this.Write("Config())\r\n        {\r\n        }\r\n\r\n        /// <summary>\r\n        /// Constructs " +
                           "Amazon");

            #line 107 "D:\workspace\AWSDotNetPublic\generator\ServiceClientGeneratorLib\Generators\SourceFiles\ServiceClientsMobile.tt"
                this.Write(this.ToStringHelper.ToStringWithCulture(this.Config.BaseName));

            #line default
            #line hidden
                this.Write("Client with AWS Credentials\r\n        /// </summary>\r\n        /// <param name=\"cre" +
                           "dentials\">AWS Credentials</param>\r\n        /// <param name=\"region\">The region t" +
                           "o connect.</param>\r\n        public Amazon");

            #line 111 "D:\workspace\AWSDotNetPublic\generator\ServiceClientGeneratorLib\Generators\SourceFiles\ServiceClientsMobile.tt"
                this.Write(this.ToStringHelper.ToStringWithCulture(this.Config.BaseName));

            #line default
            #line hidden
                this.Write("Client(AWSCredentials credentials, RegionEndpoint region)\r\n            : this(cre" +
                           "dentials, new Amazon");

            #line 112 "D:\workspace\AWSDotNetPublic\generator\ServiceClientGeneratorLib\Generators\SourceFiles\ServiceClientsMobile.tt"
                this.Write(this.ToStringHelper.ToStringWithCulture(this.Config.BaseName));

            #line default
            #line hidden
                this.Write("Config{RegionEndpoint = region})\r\n        {\r\n        }\r\n\r\n        /// <summary>\r\n" +
                           "        /// Constructs Amazon");

            #line 117 "D:\workspace\AWSDotNetPublic\generator\ServiceClientGeneratorLib\Generators\SourceFiles\ServiceClientsMobile.tt"
                this.Write(this.ToStringHelper.ToStringWithCulture(this.Config.BaseName));

            #line default
            #line hidden
                this.Write("Client with AWS Credentials and an\r\n        /// Amazon");

            #line 118 "D:\workspace\AWSDotNetPublic\generator\ServiceClientGeneratorLib\Generators\SourceFiles\ServiceClientsMobile.tt"
                this.Write(this.ToStringHelper.ToStringWithCulture(this.Config.BaseName));

            #line default
            #line hidden
                this.Write("Client Configuration object.\r\n        /// </summary>\r\n        /// <param name=\"cr" +
                           "edentials\">AWS Credentials</param>\r\n        /// <param name=\"clientConfig\">The A" +
                           "mazon");

            #line 121 "D:\workspace\AWSDotNetPublic\generator\ServiceClientGeneratorLib\Generators\SourceFiles\ServiceClientsMobile.tt"
                this.Write(this.ToStringHelper.ToStringWithCulture(this.Config.BaseName));

            #line default
            #line hidden
                this.Write("Client Configuration Object</param>\r\n        public Amazon");

            #line 122 "D:\workspace\AWSDotNetPublic\generator\ServiceClientGeneratorLib\Generators\SourceFiles\ServiceClientsMobile.tt"
                this.Write(this.ToStringHelper.ToStringWithCulture(this.Config.BaseName));

            #line default
            #line hidden
                this.Write("Client(AWSCredentials credentials, Amazon");

            #line 122 "D:\workspace\AWSDotNetPublic\generator\ServiceClientGeneratorLib\Generators\SourceFiles\ServiceClientsMobile.tt"
                this.Write(this.ToStringHelper.ToStringWithCulture(this.Config.BaseName));

            #line default
            #line hidden
                this.Write("Config clientConfig)\r\n            : base(credentials, clientConfig)\r\n        {\r\n " +
                           "       }\r\n\r\n        /// <summary>\r\n        /// Constructs Amazon");

            #line 128 "D:\workspace\AWSDotNetPublic\generator\ServiceClientGeneratorLib\Generators\SourceFiles\ServiceClientsMobile.tt"
                this.Write(this.ToStringHelper.ToStringWithCulture(this.Config.BaseName));

            #line default
            #line hidden
                this.Write("Client with AWS Access Key ID and AWS Secret Key\r\n        /// </summary>\r\n       " +
                           " /// <param name=\"awsAccessKeyId\">AWS Access Key ID</param>\r\n        /// <param " +
                           "name=\"awsSecretAccessKey\">AWS Secret Access Key</param>\r\n        public Amazon");

            #line 132 "D:\workspace\AWSDotNetPublic\generator\ServiceClientGeneratorLib\Generators\SourceFiles\ServiceClientsMobile.tt"
                this.Write(this.ToStringHelper.ToStringWithCulture(this.Config.BaseName));

            #line default
            #line hidden
                this.Write("Client(string awsAccessKeyId, string awsSecretAccessKey)\r\n            : this(awsA" +
                           "ccessKeyId, awsSecretAccessKey, new Amazon");

            #line 133 "D:\workspace\AWSDotNetPublic\generator\ServiceClientGeneratorLib\Generators\SourceFiles\ServiceClientsMobile.tt"
                this.Write(this.ToStringHelper.ToStringWithCulture(this.Config.BaseName));

            #line default
            #line hidden
                this.Write("Config())\r\n        {\r\n        }\r\n\r\n        /// <summary>\r\n        /// Constructs " +
                           "Amazon");

            #line 138 "D:\workspace\AWSDotNetPublic\generator\ServiceClientGeneratorLib\Generators\SourceFiles\ServiceClientsMobile.tt"
                this.Write(this.ToStringHelper.ToStringWithCulture(this.Config.BaseName));

            #line default
            #line hidden
                this.Write(@"Client with AWS Access Key ID and AWS Secret Key
        /// </summary>
        /// <param name=""awsAccessKeyId"">AWS Access Key ID</param>
        /// <param name=""awsSecretAccessKey"">AWS Secret Access Key</param>
        /// <param name=""region"">The region to connect.</param>
        public Amazon");

            #line 143 "D:\workspace\AWSDotNetPublic\generator\ServiceClientGeneratorLib\Generators\SourceFiles\ServiceClientsMobile.tt"
                this.Write(this.ToStringHelper.ToStringWithCulture(this.Config.BaseName));

            #line default
            #line hidden
                this.Write("Client(string awsAccessKeyId, string awsSecretAccessKey, RegionEndpoint region)\r\n" +
                           "            : this(awsAccessKeyId, awsSecretAccessKey, new Amazon");

            #line 144 "D:\workspace\AWSDotNetPublic\generator\ServiceClientGeneratorLib\Generators\SourceFiles\ServiceClientsMobile.tt"
                this.Write(this.ToStringHelper.ToStringWithCulture(this.Config.BaseName));

            #line default
            #line hidden
                this.Write("Config() {RegionEndpoint=region})\r\n        {\r\n        }\r\n\r\n        /// <summary>\r" +
                           "\n        /// Constructs Amazon");

            #line 149 "D:\workspace\AWSDotNetPublic\generator\ServiceClientGeneratorLib\Generators\SourceFiles\ServiceClientsMobile.tt"
                this.Write(this.ToStringHelper.ToStringWithCulture(this.Config.BaseName));

            #line default
            #line hidden
                this.Write("Client with AWS Access Key ID, AWS Secret Key and an\r\n        /// Amazon");

            #line 150 "D:\workspace\AWSDotNetPublic\generator\ServiceClientGeneratorLib\Generators\SourceFiles\ServiceClientsMobile.tt"
                this.Write(this.ToStringHelper.ToStringWithCulture(this.Config.BaseName));

            #line default
            #line hidden
                this.Write("Client Configuration object. \r\n        /// </summary>\r\n        /// <param name=\"a" +
                           "wsAccessKeyId\">AWS Access Key ID</param>\r\n        /// <param name=\"awsSecretAcce" +
                           "ssKey\">AWS Secret Access Key</param>\r\n        /// <param name=\"clientConfig\">The" +
                           " Amazon");

            #line 154 "D:\workspace\AWSDotNetPublic\generator\ServiceClientGeneratorLib\Generators\SourceFiles\ServiceClientsMobile.tt"
                this.Write(this.ToStringHelper.ToStringWithCulture(this.Config.BaseName));

            #line default
            #line hidden
                this.Write("Client Configuration Object</param>\r\n        public Amazon");

            #line 155 "D:\workspace\AWSDotNetPublic\generator\ServiceClientGeneratorLib\Generators\SourceFiles\ServiceClientsMobile.tt"
                this.Write(this.ToStringHelper.ToStringWithCulture(this.Config.BaseName));

            #line default
            #line hidden
                this.Write("Client(string awsAccessKeyId, string awsSecretAccessKey, Amazon");

            #line 155 "D:\workspace\AWSDotNetPublic\generator\ServiceClientGeneratorLib\Generators\SourceFiles\ServiceClientsMobile.tt"
                this.Write(this.ToStringHelper.ToStringWithCulture(this.Config.BaseName));

            #line default
            #line hidden
                this.Write("Config clientConfig)\r\n            : base(awsAccessKeyId, awsSecretAccessKey, clie" +
                           "ntConfig)\r\n        {\r\n        }\r\n\r\n        /// <summary>\r\n        /// Constructs" +
                           " Amazon");

            #line 161 "D:\workspace\AWSDotNetPublic\generator\ServiceClientGeneratorLib\Generators\SourceFiles\ServiceClientsMobile.tt"
                this.Write(this.ToStringHelper.ToStringWithCulture(this.Config.BaseName));

            #line default
            #line hidden
                this.Write(@"Client with AWS Access Key ID and AWS Secret Key
        /// </summary>
        /// <param name=""awsAccessKeyId"">AWS Access Key ID</param>
        /// <param name=""awsSecretAccessKey"">AWS Secret Access Key</param>
        /// <param name=""awsSessionToken"">AWS Session Token</param>
        public Amazon");

            #line 166 "D:\workspace\AWSDotNetPublic\generator\ServiceClientGeneratorLib\Generators\SourceFiles\ServiceClientsMobile.tt"
                this.Write(this.ToStringHelper.ToStringWithCulture(this.Config.BaseName));

            #line default
            #line hidden
                this.Write("Client(string awsAccessKeyId, string awsSecretAccessKey, string awsSessionToken)\r" +
                           "\n            : this(awsAccessKeyId, awsSecretAccessKey, awsSessionToken, new Ama" +
                           "zon");

            #line 167 "D:\workspace\AWSDotNetPublic\generator\ServiceClientGeneratorLib\Generators\SourceFiles\ServiceClientsMobile.tt"
                this.Write(this.ToStringHelper.ToStringWithCulture(this.Config.BaseName));

            #line default
            #line hidden
                this.Write("Config())\r\n        {\r\n        }\r\n\r\n        /// <summary>\r\n        /// Constructs " +
                           "Amazon");

            #line 172 "D:\workspace\AWSDotNetPublic\generator\ServiceClientGeneratorLib\Generators\SourceFiles\ServiceClientsMobile.tt"
                this.Write(this.ToStringHelper.ToStringWithCulture(this.Config.BaseName));

            #line default
            #line hidden
                this.Write(@"Client with AWS Access Key ID and AWS Secret Key
        /// </summary>
        /// <param name=""awsAccessKeyId"">AWS Access Key ID</param>
        /// <param name=""awsSecretAccessKey"">AWS Secret Access Key</param>
        /// <param name=""awsSessionToken"">AWS Session Token</param>
        /// <param name=""region"">The region to connect.</param>
        public Amazon");

            #line 178 "D:\workspace\AWSDotNetPublic\generator\ServiceClientGeneratorLib\Generators\SourceFiles\ServiceClientsMobile.tt"
                this.Write(this.ToStringHelper.ToStringWithCulture(this.Config.BaseName));

            #line default
            #line hidden
                this.Write("Client(string awsAccessKeyId, string awsSecretAccessKey, string awsSessionToken, " +
                           "RegionEndpoint region)\r\n            : this(awsAccessKeyId, awsSecretAccessKey, a" +
                           "wsSessionToken, new Amazon");

            #line 179 "D:\workspace\AWSDotNetPublic\generator\ServiceClientGeneratorLib\Generators\SourceFiles\ServiceClientsMobile.tt"
                this.Write(this.ToStringHelper.ToStringWithCulture(this.Config.BaseName));

            #line default
            #line hidden
                this.Write("Config{RegionEndpoint = region})\r\n        {\r\n        }\r\n\r\n        /// <summary>\r\n" +
                           "        /// Constructs Amazon");

            #line 184 "D:\workspace\AWSDotNetPublic\generator\ServiceClientGeneratorLib\Generators\SourceFiles\ServiceClientsMobile.tt"
                this.Write(this.ToStringHelper.ToStringWithCulture(this.Config.BaseName));

            #line default
            #line hidden
                this.Write("Client with AWS Access Key ID, AWS Secret Key and an\r\n        /// Amazon");

            #line 185 "D:\workspace\AWSDotNetPublic\generator\ServiceClientGeneratorLib\Generators\SourceFiles\ServiceClientsMobile.tt"
                this.Write(this.ToStringHelper.ToStringWithCulture(this.Config.BaseName));

            #line default
            #line hidden
                this.Write(@"Client Configuration object. 
        /// </summary>
        /// <param name=""awsAccessKeyId"">AWS Access Key ID</param>
        /// <param name=""awsSecretAccessKey"">AWS Secret Access Key</param>
        /// <param name=""awsSessionToken"">AWS Session Token</param>
        /// <param name=""clientConfig"">The Amazon");

            #line 190 "D:\workspace\AWSDotNetPublic\generator\ServiceClientGeneratorLib\Generators\SourceFiles\ServiceClientsMobile.tt"
                this.Write(this.ToStringHelper.ToStringWithCulture(this.Config.BaseName));

            #line default
            #line hidden
                this.Write("Client Configuration Object</param>\r\n        public Amazon");

            #line 191 "D:\workspace\AWSDotNetPublic\generator\ServiceClientGeneratorLib\Generators\SourceFiles\ServiceClientsMobile.tt"
                this.Write(this.ToStringHelper.ToStringWithCulture(this.Config.BaseName));

            #line default
            #line hidden
                this.Write("Client(string awsAccessKeyId, string awsSecretAccessKey, string awsSessionToken, " +
                           "Amazon");

            #line 191 "D:\workspace\AWSDotNetPublic\generator\ServiceClientGeneratorLib\Generators\SourceFiles\ServiceClientsMobile.tt"
                this.Write(this.ToStringHelper.ToStringWithCulture(this.Config.BaseName));

            #line default
            #line hidden
                this.Write("Config clientConfig)\r\n            : base(awsAccessKeyId, awsSecretAccessKey, awsS" +
                           "essionToken, clientConfig)\r\n        {\r\n        }\r\n\r\n        #endregion\r\n");

            #line 197 "D:\workspace\AWSDotNetPublic\generator\ServiceClientGeneratorLib\Generators\SourceFiles\ServiceClientsMobile.tt"
            }


            #line default
            #line hidden
            this.Write("\r\n        #region Overrides\r\n\r\n\t\t/// <summary>\r\n        /// Creates the signer fo" +
                       "r the service.\r\n        /// </summary>\r\n        protected override AbstractAWSSi" +
                       "gner CreateSigner()\r\n        {\r\n            return new ");

            #line 208 "D:\workspace\AWSDotNetPublic\generator\ServiceClientGeneratorLib\Generators\SourceFiles\ServiceClientsMobile.tt"
            this.Write(this.ToStringHelper.ToStringWithCulture(GeneratorHelpers.DetermineSigner(this.Config.ServiceModel.SignatureVersion, this.Config.BaseName)));

            #line default
            #line hidden
            this.Write("();\r\n        } \r\n\r\n");

            #line 211 "D:\workspace\AWSDotNetPublic\generator\ServiceClientGeneratorLib\Generators\SourceFiles\ServiceClientsMobile.tt"

            // Generates overrides for the pipeline if specified in the customizations file
            if (this.Config.ServiceModel.Customizations.PipelineOverride != null)
            {
            #line default
            #line hidden
                this.Write(@"		/// <summary>
        /// Customizes the runtime pipeline.
        /// </summary>
        /// <param name=""pipeline"">Runtime pipeline for the current client.</param>
        protected override void CustomizeRuntimePipeline(RuntimePipeline pipeline)
        {
");

            #line 222 "D:\workspace\AWSDotNetPublic\generator\ServiceClientGeneratorLib\Generators\SourceFiles\ServiceClientsMobile.tt"

                var pipelineOverrides = this.Config.ServiceModel.Customizations.PipelineOverride;
                foreach (var o in pipelineOverrides.Overrides)
                {
                    if (o.OverrideMethod == "remove")
                    {
            #line default
            #line hidden
                        this.Write("            pipeline.");

            #line 229 "D:\workspace\AWSDotNetPublic\generator\ServiceClientGeneratorLib\Generators\SourceFiles\ServiceClientsMobile.tt"
                        this.Write(this.ToStringHelper.ToStringWithCulture(o.FormattedOverrideMethod));

            #line default
            #line hidden
                        this.Write("();\r\n");

            #line 230 "D:\workspace\AWSDotNetPublic\generator\ServiceClientGeneratorLib\Generators\SourceFiles\ServiceClientsMobile.tt"
                    }
                    else
                    {
            #line default
            #line hidden
                        this.Write("            pipeline.");

            #line 235 "D:\workspace\AWSDotNetPublic\generator\ServiceClientGeneratorLib\Generators\SourceFiles\ServiceClientsMobile.tt"
                        this.Write(this.ToStringHelper.ToStringWithCulture(o.FormattedOverrideMethod));

            #line default
            #line hidden
                        this.Write("(new ");

            #line 235 "D:\workspace\AWSDotNetPublic\generator\ServiceClientGeneratorLib\Generators\SourceFiles\ServiceClientsMobile.tt"
                        this.Write(this.ToStringHelper.ToStringWithCulture(o.NewType));

            #line default
            #line hidden
                        this.Write("(");

            #line 235 "D:\workspace\AWSDotNetPublic\generator\ServiceClientGeneratorLib\Generators\SourceFiles\ServiceClientsMobile.tt"
                        this.Write(this.ToStringHelper.ToStringWithCulture(o.ConstructorInput));

            #line default
            #line hidden
                        this.Write("));\r\n");

            #line 236 "D:\workspace\AWSDotNetPublic\generator\ServiceClientGeneratorLib\Generators\SourceFiles\ServiceClientsMobile.tt"
                    }
                }


            #line default
            #line hidden
                this.Write("        }\r\n");

            #line 241 "D:\workspace\AWSDotNetPublic\generator\ServiceClientGeneratorLib\Generators\SourceFiles\ServiceClientsMobile.tt"
            }


            #line default
            #line hidden
            this.Write(@"
        #endregion

        #region Dispose

		/// <summary>
        /// Disposes the service client.
        /// </summary>
        protected override void Dispose(bool disposing)
        {
            base.Dispose(disposing);
        }

        #endregion

        ");

            #line 259 "D:\workspace\AWSDotNetPublic\generator\ServiceClientGeneratorLib\Generators\SourceFiles\ServiceClientsMobile.tt"

            // Creates the method code for each operation in the model
            foreach (var operation in this.Config.ServiceModel.Operations)
            {
            #line default
            #line hidden
                this.Write("\r\n        #region  ");

            #line 265 "D:\workspace\AWSDotNetPublic\generator\ServiceClientGeneratorLib\Generators\SourceFiles\ServiceClientsMobile.tt"
                this.Write(this.ToStringHelper.ToStringWithCulture(operation.Name));

            #line default
            #line hidden
                this.Write("\r\n\r\n");

            #line 267 "D:\workspace\AWSDotNetPublic\generator\ServiceClientGeneratorLib\Generators\SourceFiles\ServiceClientsMobile.tt"

                if (this.Config.ServiceModel.Customizations.CreateNoArgOverload(operation.Name))
                {
                    if (operation.IsDeprecated)
                    {
            #line default
            #line hidden
                        this.Write("\t\t[Obsolete(\"");

            #line 273 "D:\workspace\AWSDotNetPublic\generator\ServiceClientGeneratorLib\Generators\SourceFiles\ServiceClientsMobile.tt"
                        this.Write(this.ToStringHelper.ToStringWithCulture(operation.DeprecationMessage));

            #line default
            #line hidden
                        this.Write("\")]\r\n");

            #line 274 "D:\workspace\AWSDotNetPublic\generator\ServiceClientGeneratorLib\Generators\SourceFiles\ServiceClientsMobile.tt"
                    }


            #line default
            #line hidden
                    this.Write("        internal ");

            #line 277 "D:\workspace\AWSDotNetPublic\generator\ServiceClientGeneratorLib\Generators\SourceFiles\ServiceClientsMobile.tt"
                    this.Write(this.ToStringHelper.ToStringWithCulture(operation.Name));

            #line default
            #line hidden
                    this.Write("Response ");

            #line 277 "D:\workspace\AWSDotNetPublic\generator\ServiceClientGeneratorLib\Generators\SourceFiles\ServiceClientsMobile.tt"
                    this.Write(this.ToStringHelper.ToStringWithCulture(operation.Name));

            #line default
            #line hidden
                    this.Write("()\r\n        {\r\n            return ");

            #line 279 "D:\workspace\AWSDotNetPublic\generator\ServiceClientGeneratorLib\Generators\SourceFiles\ServiceClientsMobile.tt"
                    this.Write(this.ToStringHelper.ToStringWithCulture(operation.Name));

            #line default
            #line hidden
                    this.Write("(new ");

            #line 279 "D:\workspace\AWSDotNetPublic\generator\ServiceClientGeneratorLib\Generators\SourceFiles\ServiceClientsMobile.tt"
                    this.Write(this.ToStringHelper.ToStringWithCulture(operation.Name));

            #line default
            #line hidden
                    this.Write("Request());\r\n        }\r\n");

            #line 281 "D:\workspace\AWSDotNetPublic\generator\ServiceClientGeneratorLib\Generators\SourceFiles\ServiceClientsMobile.tt"
                }
                if (operation.IsDeprecated)
                {
            #line default
            #line hidden
                    this.Write("\t\t[Obsolete(\"");

            #line 286 "D:\workspace\AWSDotNetPublic\generator\ServiceClientGeneratorLib\Generators\SourceFiles\ServiceClientsMobile.tt"
                    this.Write(this.ToStringHelper.ToStringWithCulture(operation.DeprecationMessage));

            #line default
            #line hidden
                    this.Write("\")]\r\n");

            #line 287 "D:\workspace\AWSDotNetPublic\generator\ServiceClientGeneratorLib\Generators\SourceFiles\ServiceClientsMobile.tt"
                }


            #line default
            #line hidden
                this.Write("        internal ");

            #line 290 "D:\workspace\AWSDotNetPublic\generator\ServiceClientGeneratorLib\Generators\SourceFiles\ServiceClientsMobile.tt"
                this.Write(this.ToStringHelper.ToStringWithCulture(operation.Name));

            #line default
            #line hidden
                this.Write("Response ");

            #line 290 "D:\workspace\AWSDotNetPublic\generator\ServiceClientGeneratorLib\Generators\SourceFiles\ServiceClientsMobile.tt"
                this.Write(this.ToStringHelper.ToStringWithCulture(operation.Name));

            #line default
            #line hidden
                this.Write("(");

            #line 290 "D:\workspace\AWSDotNetPublic\generator\ServiceClientGeneratorLib\Generators\SourceFiles\ServiceClientsMobile.tt"
                this.Write(this.ToStringHelper.ToStringWithCulture(operation.Name));

            #line default
            #line hidden
                this.Write("Request request)\r\n        {\r\n            var marshaller = new ");

            #line 292 "D:\workspace\AWSDotNetPublic\generator\ServiceClientGeneratorLib\Generators\SourceFiles\ServiceClientsMobile.tt"
                this.Write(this.ToStringHelper.ToStringWithCulture(operation.Name));

            #line default
            #line hidden
                this.Write("RequestMarshaller();\r\n            var unmarshaller = ");

            #line 293 "D:\workspace\AWSDotNetPublic\generator\ServiceClientGeneratorLib\Generators\SourceFiles\ServiceClientsMobile.tt"
                this.Write(this.ToStringHelper.ToStringWithCulture(operation.Name));

            #line default
            #line hidden
                this.Write("ResponseUnmarshaller.Instance;\r\n\r\n            return Invoke<");

            #line 295 "D:\workspace\AWSDotNetPublic\generator\ServiceClientGeneratorLib\Generators\SourceFiles\ServiceClientsMobile.tt"
                this.Write(this.ToStringHelper.ToStringWithCulture(operation.Name));

            #line default
            #line hidden
                this.Write("Request,");

            #line 295 "D:\workspace\AWSDotNetPublic\generator\ServiceClientGeneratorLib\Generators\SourceFiles\ServiceClientsMobile.tt"
                this.Write(this.ToStringHelper.ToStringWithCulture(operation.Name));

            #line default
            #line hidden
                this.Write("Response>(request, marshaller, unmarshaller);\r\n        }\r\n\r\n");

            #line 298 "D:\workspace\AWSDotNetPublic\generator\ServiceClientGeneratorLib\Generators\SourceFiles\ServiceClientsMobile.tt"

                // Creates a version of the operation that takes no arguments and passes a request with no set members if specified in the customizations
                if (this.Config.ServiceModel.Customizations.CreateNoArgOverload(operation.Name))
                {
            #line default
            #line hidden

            #line 303 "D:\workspace\AWSDotNetPublic\generator\ServiceClientGeneratorLib\Generators\SourceFiles\ServiceClientsMobile.tt"

                    this.FormatOperationDocumentationAsync(operation, false);
                    if (operation.IsDeprecated)
                    {
            #line default
            #line hidden
                        this.Write("\t\t[Obsolete(\"");

            #line 308 "D:\workspace\AWSDotNetPublic\generator\ServiceClientGeneratorLib\Generators\SourceFiles\ServiceClientsMobile.tt"
                        this.Write(this.ToStringHelper.ToStringWithCulture(operation.DeprecationMessage));

            #line default
            #line hidden
                        this.Write("\")]\r\n");

            #line 309 "D:\workspace\AWSDotNetPublic\generator\ServiceClientGeneratorLib\Generators\SourceFiles\ServiceClientsMobile.tt"
                    }


            #line default
            #line hidden
                    this.Write("        public Task<");

            #line 312 "D:\workspace\AWSDotNetPublic\generator\ServiceClientGeneratorLib\Generators\SourceFiles\ServiceClientsMobile.tt"
                    this.Write(this.ToStringHelper.ToStringWithCulture(operation.Name));

            #line default
            #line hidden
                    this.Write("Response> ");

            #line 312 "D:\workspace\AWSDotNetPublic\generator\ServiceClientGeneratorLib\Generators\SourceFiles\ServiceClientsMobile.tt"
                    this.Write(this.ToStringHelper.ToStringWithCulture(operation.Name));

            #line default
            #line hidden
                    this.Write("Async(System.Threading.CancellationToken cancellationToken = default(Cancellation" +
                               "Token))\r\n        {\r\n            return ");

            #line 314 "D:\workspace\AWSDotNetPublic\generator\ServiceClientGeneratorLib\Generators\SourceFiles\ServiceClientsMobile.tt"
                    this.Write(this.ToStringHelper.ToStringWithCulture(operation.Name));

            #line default
            #line hidden
                    this.Write("Async(new ");

            #line 314 "D:\workspace\AWSDotNetPublic\generator\ServiceClientGeneratorLib\Generators\SourceFiles\ServiceClientsMobile.tt"
                    this.Write(this.ToStringHelper.ToStringWithCulture(operation.Name));

            #line default
            #line hidden
                    this.Write("Request(), cancellationToken);\r\n        }\r\n\r\n");

            #line 317 "D:\workspace\AWSDotNetPublic\generator\ServiceClientGeneratorLib\Generators\SourceFiles\ServiceClientsMobile.tt"
                }
                // Add async simple methods
                AddSimpleClientMethods(operation, false);


            #line default
            #line hidden
                this.Write("\r\n");

            #line 323 "D:\workspace\AWSDotNetPublic\generator\ServiceClientGeneratorLib\Generators\SourceFiles\ServiceClientsMobile.tt"

                AddAsyncDocumentation(operation);
                if (operation.IsDeprecated)
                {
            #line default
            #line hidden
                    this.Write("\t\t[Obsolete(\"");

            #line 328 "D:\workspace\AWSDotNetPublic\generator\ServiceClientGeneratorLib\Generators\SourceFiles\ServiceClientsMobile.tt"
                    this.Write(this.ToStringHelper.ToStringWithCulture(operation.DeprecationMessage));

            #line default
            #line hidden
                    this.Write("\")]\r\n");

            #line 329 "D:\workspace\AWSDotNetPublic\generator\ServiceClientGeneratorLib\Generators\SourceFiles\ServiceClientsMobile.tt"
                }


            #line default
            #line hidden
                this.Write("        ");

            #line 332 "D:\workspace\AWSDotNetPublic\generator\ServiceClientGeneratorLib\Generators\SourceFiles\ServiceClientsMobile.tt"
                this.Write(this.ToStringHelper.ToStringWithCulture(operation.IsInternal ? "internal" : "public"));

            #line default
            #line hidden
                this.Write(" Task<");

            #line 332 "D:\workspace\AWSDotNetPublic\generator\ServiceClientGeneratorLib\Generators\SourceFiles\ServiceClientsMobile.tt"
                this.Write(this.ToStringHelper.ToStringWithCulture(operation.Name));

            #line default
            #line hidden
                this.Write("Response> ");

            #line 332 "D:\workspace\AWSDotNetPublic\generator\ServiceClientGeneratorLib\Generators\SourceFiles\ServiceClientsMobile.tt"
                this.Write(this.ToStringHelper.ToStringWithCulture(operation.Name));

            #line default
            #line hidden
                this.Write("Async(");

            #line 332 "D:\workspace\AWSDotNetPublic\generator\ServiceClientGeneratorLib\Generators\SourceFiles\ServiceClientsMobile.tt"
                this.Write(this.ToStringHelper.ToStringWithCulture(operation.Name));

            #line default
            #line hidden
                this.Write("Request request, System.Threading.CancellationToken cancellationToken = default(C" +
                           "ancellationToken))\r\n        {\r\n            var marshaller = new ");

            #line 334 "D:\workspace\AWSDotNetPublic\generator\ServiceClientGeneratorLib\Generators\SourceFiles\ServiceClientsMobile.tt"
                this.Write(this.ToStringHelper.ToStringWithCulture(operation.Name));

            #line default
            #line hidden
                this.Write("RequestMarshaller();\r\n            var unmarshaller = ");

            #line 335 "D:\workspace\AWSDotNetPublic\generator\ServiceClientGeneratorLib\Generators\SourceFiles\ServiceClientsMobile.tt"
                this.Write(this.ToStringHelper.ToStringWithCulture(operation.Name));

            #line default
            #line hidden
                this.Write("ResponseUnmarshaller.Instance;\r\n\r\n            return InvokeAsync<");

            #line 337 "D:\workspace\AWSDotNetPublic\generator\ServiceClientGeneratorLib\Generators\SourceFiles\ServiceClientsMobile.tt"
                this.Write(this.ToStringHelper.ToStringWithCulture(operation.Name));

            #line default
            #line hidden
                this.Write("Request,");

            #line 337 "D:\workspace\AWSDotNetPublic\generator\ServiceClientGeneratorLib\Generators\SourceFiles\ServiceClientsMobile.tt"
                this.Write(this.ToStringHelper.ToStringWithCulture(operation.Name));

            #line default
            #line hidden
                this.Write("Response>(request, marshaller, \r\n                unmarshaller, cancellationToken)" +
                           ";\r\n        }\r\n\r\n        #endregion\r\n        ");

            #line 342 "D:\workspace\AWSDotNetPublic\generator\ServiceClientGeneratorLib\Generators\SourceFiles\ServiceClientsMobile.tt"
            }


            #line default
            #line hidden
            this.Write("\r\n    }\r\n}\r\n");
            return(this.GenerationEnvironment.ToString());
        }
예제 #19
0
 public ArgumentSyntax GenerateNativeArgument(CsMarshalCallableBase csElement) => Argument(
     csElement.IsOut
         ? PrefixUnaryExpression(SyntaxKind.AddressOfExpression, GetMarshalStorageLocation(csElement))
         : GeneratorHelpers.CastExpression(VoidPtrType, GetMarshalStorageLocation(csElement))
     );
예제 #20
0
        /// <summary>
        /// Create the template output
        /// </summary>
        public override string TransformText()
        {
            #line 6 "C:\projects\aws\AWSDotNetPublic\generator\ServiceClientGeneratorLib\Generators\Marshallers\AWSQueryStructureUnmarshaller.tt"

            AddLicenseHeader();

            AddCommonUsingStatements();


            #line default
            #line hidden
            this.Write("namespace ");

            #line 11 "C:\projects\aws\AWSDotNetPublic\generator\ServiceClientGeneratorLib\Generators\Marshallers\AWSQueryStructureUnmarshaller.tt"
            this.Write(this.ToStringHelper.ToStringWithCulture(this.Config.Namespace));

            #line default
            #line hidden
            this.Write(".Model.Internal.MarshallTransformations\r\n{\r\n    /// <summary>\r\n    /// Response U" +
                       "nmarshaller for ");

            #line 14 "C:\projects\aws\AWSDotNetPublic\generator\ServiceClientGeneratorLib\Generators\Marshallers\AWSQueryStructureUnmarshaller.tt"
            this.Write(this.ToStringHelper.ToStringWithCulture(this.UnmarshallerBaseName));

            #line default
            #line hidden
            this.Write(" Object\r\n    /// </summary>  \r\n    public class ");

            #line 16 "C:\projects\aws\AWSDotNetPublic\generator\ServiceClientGeneratorLib\Generators\Marshallers\AWSQueryStructureUnmarshaller.tt"
            this.Write(this.ToStringHelper.ToStringWithCulture(this.UnmarshallerBaseName));

            #line default
            #line hidden
            this.Write("Unmarshaller : IUnmarshaller<");

            #line 16 "C:\projects\aws\AWSDotNetPublic\generator\ServiceClientGeneratorLib\Generators\Marshallers\AWSQueryStructureUnmarshaller.tt"
            this.Write(this.ToStringHelper.ToStringWithCulture(this.UnmarshallerBaseName));

            #line default
            #line hidden
            this.Write(", XmlUnmarshallerContext>, IUnmarshaller<");

            #line 16 "C:\projects\aws\AWSDotNetPublic\generator\ServiceClientGeneratorLib\Generators\Marshallers\AWSQueryStructureUnmarshaller.tt"
            this.Write(this.ToStringHelper.ToStringWithCulture(this.UnmarshallerBaseName));

            #line default
            #line hidden
            this.Write(", JsonUnmarshallerContext>\r\n    {\r\n        /// <summary>\r\n        /// Unmarshalle" +
                       "r the response from the service to the response class.\r\n        /// </summary>  " +
                       "\r\n        /// <param name=\"context\"></param>\r\n        /// <returns></returns>\r\n " +
                       "       public ");

            #line 23 "C:\projects\aws\AWSDotNetPublic\generator\ServiceClientGeneratorLib\Generators\Marshallers\AWSQueryStructureUnmarshaller.tt"
            this.Write(this.ToStringHelper.ToStringWithCulture(this.UnmarshallerBaseName));

            #line default
            #line hidden
            this.Write(" Unmarshall(XmlUnmarshallerContext context)\r\n        {\r\n            ");

            #line 25 "C:\projects\aws\AWSDotNetPublic\generator\ServiceClientGeneratorLib\Generators\Marshallers\AWSQueryStructureUnmarshaller.tt"
            this.Write(this.ToStringHelper.ToStringWithCulture(this.UnmarshallerBaseName));

            #line default
            #line hidden
            this.Write(" unmarshalledObject = new ");

            #line 25 "C:\projects\aws\AWSDotNetPublic\generator\ServiceClientGeneratorLib\Generators\Marshallers\AWSQueryStructureUnmarshaller.tt"
            this.Write(this.ToStringHelper.ToStringWithCulture(this.UnmarshallerBaseName));

            #line default
            #line hidden
            this.Write(@"();
            int originalDepth = context.CurrentDepth;
            int targetDepth = originalDepth + 1;
            
            if (context.IsStartOfDocument) 
               targetDepth += 2;
            
            while (context.ReadAtDepth(originalDepth))
            {
                if (context.IsStartElement || context.IsAttribute)
                {
");

            #line 36 "C:\projects\aws\AWSDotNetPublic\generator\ServiceClientGeneratorLib\Generators\Marshallers\AWSQueryStructureUnmarshaller.tt"

            if (this.Structure != null)
            {
                foreach (var member in this.Structure.Members)
                {
                    var testExpression = GeneratorHelpers.DetermineAWSQueryTestExpression(member);


            #line default
            #line hidden
                    this.Write("                    if (context.TestExpression(\"");

            #line 43 "C:\projects\aws\AWSDotNetPublic\generator\ServiceClientGeneratorLib\Generators\Marshallers\AWSQueryStructureUnmarshaller.tt"
                    this.Write(this.ToStringHelper.ToStringWithCulture(testExpression));

            #line default
            #line hidden
                    this.Write("\", targetDepth))\r\n                    {\r\n                        var unmarshaller" +
                               " = ");

            #line 45 "C:\projects\aws\AWSDotNetPublic\generator\ServiceClientGeneratorLib\Generators\Marshallers\AWSQueryStructureUnmarshaller.tt"
                    this.Write(this.ToStringHelper.ToStringWithCulture(member.DetermineTypeUnmarshallerInstantiate()));

            #line default
            #line hidden
                    this.Write(";\r\n");

            #line 46 "C:\projects\aws\AWSDotNetPublic\generator\ServiceClientGeneratorLib\Generators\Marshallers\AWSQueryStructureUnmarshaller.tt"

                    if (member.IsMap || member.IsList)
                    {
            #line default
            #line hidden
                        this.Write("                        var item = unmarshaller.Unmarshall(context);\r\n           " +
                                   "             unmarshalledObject.");

            #line 51 "C:\projects\aws\AWSDotNetPublic\generator\ServiceClientGeneratorLib\Generators\Marshallers\AWSQueryStructureUnmarshaller.tt"
                        this.Write(this.ToStringHelper.ToStringWithCulture(member.PropertyName));

            #line default
            #line hidden
                        this.Write(".Add(item);\r\n");

            #line 52 "C:\projects\aws\AWSDotNetPublic\generator\ServiceClientGeneratorLib\Generators\Marshallers\AWSQueryStructureUnmarshaller.tt"
                    }
                    else
                    {
            #line default
            #line hidden
                        this.Write("                        unmarshalledObject.");

            #line 57 "C:\projects\aws\AWSDotNetPublic\generator\ServiceClientGeneratorLib\Generators\Marshallers\AWSQueryStructureUnmarshaller.tt"
                        this.Write(this.ToStringHelper.ToStringWithCulture(member.PropertyName));

            #line default
            #line hidden
                        this.Write(" = unmarshaller.Unmarshall(context);\r\n");

            #line 58 "C:\projects\aws\AWSDotNetPublic\generator\ServiceClientGeneratorLib\Generators\Marshallers\AWSQueryStructureUnmarshaller.tt"
                    }


            #line default
            #line hidden
                    this.Write("                        continue;\r\n                    }\r\n");

            #line 63 "C:\projects\aws\AWSDotNetPublic\generator\ServiceClientGeneratorLib\Generators\Marshallers\AWSQueryStructureUnmarshaller.tt"
                }
            }


            #line default
            #line hidden
            this.Write(@"                }
                else if (context.IsEndElement && context.CurrentDepth < originalDepth)
                {
                    return unmarshalledObject;
                }
            }

            return unmarshalledObject;
        }

        /// <summary>
        /// Unmarshaller error response to exception.
        /// </summary>  
        /// <param name=""context""></param>
        /// <returns></returns>
        public ");

            #line 82 "C:\projects\aws\AWSDotNetPublic\generator\ServiceClientGeneratorLib\Generators\Marshallers\AWSQueryStructureUnmarshaller.tt"
            this.Write(this.ToStringHelper.ToStringWithCulture(this.UnmarshallerBaseName));

            #line default
            #line hidden
            this.Write(" Unmarshall(JsonUnmarshallerContext context)\r\n        {\r\n            return null;" +
                       "\r\n        }\r\n\r\n\r\n");

            #line 88 "C:\projects\aws\AWSDotNetPublic\generator\ServiceClientGeneratorLib\Generators\Marshallers\AWSQueryStructureUnmarshaller.tt"

            this.AddStructureSingletonMethod();


            #line default
            #line hidden
            this.Write("    }\r\n}");
            return(this.GenerationEnvironment.ToString());
        }
예제 #21
0
        private StatementSyntax GenerateAnsiStringToArray(CsMarshalBase marshallable)
        {
            var lengthIdentifier = LengthVariableName(marshallable);

            return(Block(
                       LocalDeclarationStatement(
                           VariableDeclaration(
                               TypeInt32,
                               SingletonSeparatedList(
                                   VariableDeclarator(lengthIdentifier)
                                   .WithInitializer(EqualsValueClause(
                                                        InvocationExpression(MemberAccessExpression(SyntaxKind.SimpleMemberAccessExpression,
                                                                                                    GlobalNamespace.GetTypeNameSyntax(BuiltinType.Math),
                                                                                                    IdentifierName(nameof(Math.Min))),
                                                                             ArgumentList(
                                                                                 SeparatedList(
                                                                                     new[]
            {
                Argument(
                    GeneratorHelpers.OptionalLengthExpression(IdentifierName(marshallable.Name))
                    ),
                Argument(
                    LiteralExpression(SyntaxKind.NumericLiteralExpression,
                                      Literal(marshallable.ArrayDimensionValue - 1))
                    )
            }
                                                                                     )
                                                                                 ))))))),
                       LocalDeclarationStatement(
                           VariableDeclaration(
                               IntPtrType,
                               SingletonSeparatedList(
                                   VariableDeclarator(Identifier(FromIdentifier))
                                   .WithInitializer(EqualsValueClause(
                                                        InvocationExpression(MemberAccessExpression(SyntaxKind.SimpleMemberAccessExpression,
                                                                                                    GlobalNamespace.GetTypeNameSyntax(BuiltinType.Marshal),
                                                                                                    IdentifierName(nameof(Marshal.StringToHGlobalAnsi))))
                                                        .WithArgumentList(
                                                            ArgumentList(SingletonSeparatedList(Argument(IdentifierName(marshallable.Name)))))))))),
                       FixedStatement(
                           VariableDeclaration(
                               PointerType(PredefinedType(Token(SyntaxKind.ByteKeyword))),
                               SingletonSeparatedList(
                                   VariableDeclarator(ToIdentifier)
                                   .WithInitializer(EqualsValueClause(
                                                        PrefixUnaryExpression(SyntaxKind.AddressOfExpression,
                                                                              GetMarshalStorageLocation(marshallable)))))
                               ),
                           Block(
                               GenerateCopyMemoryInvocation(IdentifierName(lengthIdentifier), castFrom: false),
                               ExpressionStatement(
                                   AssignmentExpression(SyntaxKind.SimpleAssignmentExpression,
                                                        ElementAccessExpression(IdentifierName(ToIdentifier),
                                                                                BracketedArgumentList(
                                                                                    SingletonSeparatedList(
                                                                                        Argument(IdentifierName(lengthIdentifier))))),
                                                        ZeroLiteral)))),
                       ExpressionStatement(InvocationExpression(
                                               MemberAccessExpression(SyntaxKind.SimpleMemberAccessExpression,
                                                                      GlobalNamespace.GetTypeNameSyntax(BuiltinType.Marshal),
                                                                      IdentifierName(nameof(Marshal.FreeHGlobal))),
                                               ArgumentList(SingletonSeparatedList(
                                                                Argument(IdentifierName(FromIdentifier))))))
                       ));
        }
예제 #22
0
        /// <summary>
        /// Create the template output
        /// </summary>
        public override string TransformText()
        {
            #line 6 "C:\Codebase\v3\AWSDotNetPublic\generator\ServiceClientGeneratorLib\Generators\SourceFiles\ServiceClientUnity.tt"

            AddLicenseHeader();


            #line default
            #line hidden
            this.Write("\r\n\r\nusing System;\r\nusing System.Collections.Generic;\r\n\r\nusing ");

            #line 14 "C:\Codebase\v3\AWSDotNetPublic\generator\ServiceClientGeneratorLib\Generators\SourceFiles\ServiceClientUnity.tt"
            this.Write(this.ToStringHelper.ToStringWithCulture(this.Config.Namespace));

            #line default
            #line hidden
            this.Write(".Model;\r\nusing ");

            #line 15 "C:\Codebase\v3\AWSDotNetPublic\generator\ServiceClientGeneratorLib\Generators\SourceFiles\ServiceClientUnity.tt"
            this.Write(this.ToStringHelper.ToStringWithCulture(this.Config.Namespace));

            #line default
            #line hidden
            this.Write(".Model.Internal.MarshallTransformations;\r\nusing Amazon.Runtime;\r\nusing Amazon.Run" +
                       "time.Internal;\r\nusing Amazon.Runtime.Internal.Auth;\r\nusing Amazon.Runtime.Intern" +
                       "al.Transform;\r\n\r\nnamespace ");

            #line 21 "C:\Codebase\v3\AWSDotNetPublic\generator\ServiceClientGeneratorLib\Generators\SourceFiles\ServiceClientUnity.tt"
            this.Write(this.ToStringHelper.ToStringWithCulture(this.Config.Namespace));

            #line default
            #line hidden
            this.Write("\r\n{\r\n");

            #line 23 "C:\Codebase\v3\AWSDotNetPublic\generator\ServiceClientGeneratorLib\Generators\SourceFiles\ServiceClientUnity.tt"
            this.FormatServiceClientDocumentation(this.Config.ServiceModel.Documentation);

            #line default
            #line hidden
            this.Write("\tpublic partial class Amazon");

            #line 24 "C:\Codebase\v3\AWSDotNetPublic\generator\ServiceClientGeneratorLib\Generators\SourceFiles\ServiceClientUnity.tt"
            this.Write(this.ToStringHelper.ToStringWithCulture(this.Config.BaseName));

            #line default
            #line hidden
            this.Write("Client : AmazonServiceClient, IAmazon");

            #line 24 "C:\Codebase\v3\AWSDotNetPublic\generator\ServiceClientGeneratorLib\Generators\SourceFiles\ServiceClientUnity.tt"
            this.Write(this.ToStringHelper.ToStringWithCulture(this.Config.BaseName));

            #line default
            #line hidden
            this.Write("\r\n\t{\r\n");

            #line 26 "C:\Codebase\v3\AWSDotNetPublic\generator\ServiceClientGeneratorLib\Generators\SourceFiles\ServiceClientUnity.tt"

            // Creates constructors for the service if the model specifies to do so
            if (this.Config.GenerateConstructors)
            {
            #line default
            #line hidden
                this.Write("        #region Constructors\r\n\r\n        /// <summary>\r\n        /// Constructs Ama" +
                           "zon");

            #line 34 "C:\Codebase\v3\AWSDotNetPublic\generator\ServiceClientGeneratorLib\Generators\SourceFiles\ServiceClientUnity.tt"
                this.Write(this.ToStringHelper.ToStringWithCulture(this.Config.BaseName));

            #line default
            #line hidden
                this.Write("Client with AWS Credentials\r\n        /// </summary>\r\n        /// <param name=\"cre" +
                           "dentials\">AWS Credentials</param>\r\n        public Amazon");

            #line 37 "C:\Codebase\v3\AWSDotNetPublic\generator\ServiceClientGeneratorLib\Generators\SourceFiles\ServiceClientUnity.tt"
                this.Write(this.ToStringHelper.ToStringWithCulture(this.Config.BaseName));

            #line default
            #line hidden
                this.Write("Client(AWSCredentials credentials)\r\n            : this(credentials, new Amazon");

            #line 38 "C:\Codebase\v3\AWSDotNetPublic\generator\ServiceClientGeneratorLib\Generators\SourceFiles\ServiceClientUnity.tt"
                this.Write(this.ToStringHelper.ToStringWithCulture(this.Config.BaseName));

            #line default
            #line hidden
                this.Write("Config())\r\n        {\r\n        }\r\n\r\n        /// <summary>\r\n        /// Constructs " +
                           "Amazon");

            #line 43 "C:\Codebase\v3\AWSDotNetPublic\generator\ServiceClientGeneratorLib\Generators\SourceFiles\ServiceClientUnity.tt"
                this.Write(this.ToStringHelper.ToStringWithCulture(this.Config.BaseName));

            #line default
            #line hidden
                this.Write("Client with AWS Credentials\r\n        /// </summary>\r\n        /// <param name=\"cre" +
                           "dentials\">AWS Credentials</param>\r\n        /// <param name=\"region\">The region t" +
                           "o connect.</param>\r\n        public Amazon");

            #line 47 "C:\Codebase\v3\AWSDotNetPublic\generator\ServiceClientGeneratorLib\Generators\SourceFiles\ServiceClientUnity.tt"
                this.Write(this.ToStringHelper.ToStringWithCulture(this.Config.BaseName));

            #line default
            #line hidden
                this.Write("Client(AWSCredentials credentials, RegionEndpoint region)\r\n            : this(cre" +
                           "dentials, new Amazon");

            #line 48 "C:\Codebase\v3\AWSDotNetPublic\generator\ServiceClientGeneratorLib\Generators\SourceFiles\ServiceClientUnity.tt"
                this.Write(this.ToStringHelper.ToStringWithCulture(this.Config.BaseName));

            #line default
            #line hidden
                this.Write("Config{RegionEndpoint = region})\r\n        {\r\n        }\r\n\r\n        /// <summary>\r\n" +
                           "        /// Constructs Amazon");

            #line 53 "C:\Codebase\v3\AWSDotNetPublic\generator\ServiceClientGeneratorLib\Generators\SourceFiles\ServiceClientUnity.tt"
                this.Write(this.ToStringHelper.ToStringWithCulture(this.Config.BaseName));

            #line default
            #line hidden
                this.Write("Client with AWS Credentials and an\r\n        /// Amazon");

            #line 54 "C:\Codebase\v3\AWSDotNetPublic\generator\ServiceClientGeneratorLib\Generators\SourceFiles\ServiceClientUnity.tt"
                this.Write(this.ToStringHelper.ToStringWithCulture(this.Config.BaseName));

            #line default
            #line hidden
                this.Write("Client Configuration object.\r\n        /// </summary>\r\n        /// <param name=\"cr" +
                           "edentials\">AWS Credentials</param>\r\n        /// <param name=\"clientConfig\">The A" +
                           "mazon");

            #line 57 "C:\Codebase\v3\AWSDotNetPublic\generator\ServiceClientGeneratorLib\Generators\SourceFiles\ServiceClientUnity.tt"
                this.Write(this.ToStringHelper.ToStringWithCulture(this.Config.BaseName));

            #line default
            #line hidden
                this.Write("Client Configuration Object</param>\r\n        public Amazon");

            #line 58 "C:\Codebase\v3\AWSDotNetPublic\generator\ServiceClientGeneratorLib\Generators\SourceFiles\ServiceClientUnity.tt"
                this.Write(this.ToStringHelper.ToStringWithCulture(this.Config.BaseName));

            #line default
            #line hidden
                this.Write("Client(AWSCredentials credentials, Amazon");

            #line 58 "C:\Codebase\v3\AWSDotNetPublic\generator\ServiceClientGeneratorLib\Generators\SourceFiles\ServiceClientUnity.tt"
                this.Write(this.ToStringHelper.ToStringWithCulture(this.Config.BaseName));

            #line default
            #line hidden
                this.Write("Config clientConfig)\r\n            : base(credentials, clientConfig)\r\n        {\r\n " +
                           "       }\r\n\r\n        /// <summary>\r\n        /// Constructs Amazon");

            #line 64 "C:\Codebase\v3\AWSDotNetPublic\generator\ServiceClientGeneratorLib\Generators\SourceFiles\ServiceClientUnity.tt"
                this.Write(this.ToStringHelper.ToStringWithCulture(this.Config.BaseName));

            #line default
            #line hidden
                this.Write("Client with AWS Access Key ID and AWS Secret Key\r\n        /// </summary>\r\n       " +
                           " /// <param name=\"awsAccessKeyId\">AWS Access Key ID</param>\r\n        /// <param " +
                           "name=\"awsSecretAccessKey\">AWS Secret Access Key</param>\r\n        public Amazon");

            #line 68 "C:\Codebase\v3\AWSDotNetPublic\generator\ServiceClientGeneratorLib\Generators\SourceFiles\ServiceClientUnity.tt"
                this.Write(this.ToStringHelper.ToStringWithCulture(this.Config.BaseName));

            #line default
            #line hidden
                this.Write("Client(string awsAccessKeyId, string awsSecretAccessKey)\r\n            : this(awsA" +
                           "ccessKeyId, awsSecretAccessKey, new Amazon");

            #line 69 "C:\Codebase\v3\AWSDotNetPublic\generator\ServiceClientGeneratorLib\Generators\SourceFiles\ServiceClientUnity.tt"
                this.Write(this.ToStringHelper.ToStringWithCulture(this.Config.BaseName));

            #line default
            #line hidden
                this.Write("Config())\r\n        {\r\n        }\r\n\r\n        /// <summary>\r\n        /// Constructs " +
                           "Amazon");

            #line 74 "C:\Codebase\v3\AWSDotNetPublic\generator\ServiceClientGeneratorLib\Generators\SourceFiles\ServiceClientUnity.tt"
                this.Write(this.ToStringHelper.ToStringWithCulture(this.Config.BaseName));

            #line default
            #line hidden
                this.Write(@"Client with AWS Access Key ID and AWS Secret Key
        /// </summary>
        /// <param name=""awsAccessKeyId"">AWS Access Key ID</param>
        /// <param name=""awsSecretAccessKey"">AWS Secret Access Key</param>
        /// <param name=""region"">The region to connect.</param>
        public Amazon");

            #line 79 "C:\Codebase\v3\AWSDotNetPublic\generator\ServiceClientGeneratorLib\Generators\SourceFiles\ServiceClientUnity.tt"
                this.Write(this.ToStringHelper.ToStringWithCulture(this.Config.BaseName));

            #line default
            #line hidden
                this.Write("Client(string awsAccessKeyId, string awsSecretAccessKey, RegionEndpoint region)\r\n" +
                           "            : this(awsAccessKeyId, awsSecretAccessKey, new Amazon");

            #line 80 "C:\Codebase\v3\AWSDotNetPublic\generator\ServiceClientGeneratorLib\Generators\SourceFiles\ServiceClientUnity.tt"
                this.Write(this.ToStringHelper.ToStringWithCulture(this.Config.BaseName));

            #line default
            #line hidden
                this.Write("Config() {RegionEndpoint=region})\r\n        {\r\n        }\r\n\r\n        /// <summary>\r" +
                           "\n        /// Constructs Amazon");

            #line 85 "C:\Codebase\v3\AWSDotNetPublic\generator\ServiceClientGeneratorLib\Generators\SourceFiles\ServiceClientUnity.tt"
                this.Write(this.ToStringHelper.ToStringWithCulture(this.Config.BaseName));

            #line default
            #line hidden
                this.Write("Client with AWS Access Key ID, AWS Secret Key and an\r\n        /// Amazon");

            #line 86 "C:\Codebase\v3\AWSDotNetPublic\generator\ServiceClientGeneratorLib\Generators\SourceFiles\ServiceClientUnity.tt"
                this.Write(this.ToStringHelper.ToStringWithCulture(this.Config.BaseName));

            #line default
            #line hidden
                this.Write("Client Configuration object. \r\n        /// </summary>\r\n        /// <param name=\"a" +
                           "wsAccessKeyId\">AWS Access Key ID</param>\r\n        /// <param name=\"awsSecretAcce" +
                           "ssKey\">AWS Secret Access Key</param>\r\n        /// <param name=\"clientConfig\">The" +
                           " Amazon");

            #line 90 "C:\Codebase\v3\AWSDotNetPublic\generator\ServiceClientGeneratorLib\Generators\SourceFiles\ServiceClientUnity.tt"
                this.Write(this.ToStringHelper.ToStringWithCulture(this.Config.BaseName));

            #line default
            #line hidden
                this.Write("Client Configuration Object</param>\r\n        public Amazon");

            #line 91 "C:\Codebase\v3\AWSDotNetPublic\generator\ServiceClientGeneratorLib\Generators\SourceFiles\ServiceClientUnity.tt"
                this.Write(this.ToStringHelper.ToStringWithCulture(this.Config.BaseName));

            #line default
            #line hidden
                this.Write("Client(string awsAccessKeyId, string awsSecretAccessKey, Amazon");

            #line 91 "C:\Codebase\v3\AWSDotNetPublic\generator\ServiceClientGeneratorLib\Generators\SourceFiles\ServiceClientUnity.tt"
                this.Write(this.ToStringHelper.ToStringWithCulture(this.Config.BaseName));

            #line default
            #line hidden
                this.Write("Config clientConfig)\r\n            : base(awsAccessKeyId, awsSecretAccessKey, clie" +
                           "ntConfig)\r\n        {\r\n        }\r\n\r\n        /// <summary>\r\n        /// Constructs" +
                           " Amazon");

            #line 97 "C:\Codebase\v3\AWSDotNetPublic\generator\ServiceClientGeneratorLib\Generators\SourceFiles\ServiceClientUnity.tt"
                this.Write(this.ToStringHelper.ToStringWithCulture(this.Config.BaseName));

            #line default
            #line hidden
                this.Write(@"Client with AWS Access Key ID and AWS Secret Key
        /// </summary>
        /// <param name=""awsAccessKeyId"">AWS Access Key ID</param>
        /// <param name=""awsSecretAccessKey"">AWS Secret Access Key</param>
        /// <param name=""awsSessionToken"">AWS Session Token</param>
        public Amazon");

            #line 102 "C:\Codebase\v3\AWSDotNetPublic\generator\ServiceClientGeneratorLib\Generators\SourceFiles\ServiceClientUnity.tt"
                this.Write(this.ToStringHelper.ToStringWithCulture(this.Config.BaseName));

            #line default
            #line hidden
                this.Write("Client(string awsAccessKeyId, string awsSecretAccessKey, string awsSessionToken)\r" +
                           "\n            : this(awsAccessKeyId, awsSecretAccessKey, awsSessionToken, new Ama" +
                           "zon");

            #line 103 "C:\Codebase\v3\AWSDotNetPublic\generator\ServiceClientGeneratorLib\Generators\SourceFiles\ServiceClientUnity.tt"
                this.Write(this.ToStringHelper.ToStringWithCulture(this.Config.BaseName));

            #line default
            #line hidden
                this.Write("Config())\r\n        {\r\n        }\r\n\r\n        /// <summary>\r\n        /// Constructs " +
                           "Amazon");

            #line 108 "C:\Codebase\v3\AWSDotNetPublic\generator\ServiceClientGeneratorLib\Generators\SourceFiles\ServiceClientUnity.tt"
                this.Write(this.ToStringHelper.ToStringWithCulture(this.Config.BaseName));

            #line default
            #line hidden
                this.Write(@"Client with AWS Access Key ID and AWS Secret Key
        /// </summary>
        /// <param name=""awsAccessKeyId"">AWS Access Key ID</param>
        /// <param name=""awsSecretAccessKey"">AWS Secret Access Key</param>
        /// <param name=""awsSessionToken"">AWS Session Token</param>
        /// <param name=""region"">The region to connect.</param>
        public Amazon");

            #line 114 "C:\Codebase\v3\AWSDotNetPublic\generator\ServiceClientGeneratorLib\Generators\SourceFiles\ServiceClientUnity.tt"
                this.Write(this.ToStringHelper.ToStringWithCulture(this.Config.BaseName));

            #line default
            #line hidden
                this.Write("Client(string awsAccessKeyId, string awsSecretAccessKey, string awsSessionToken, " +
                           "RegionEndpoint region)\r\n            : this(awsAccessKeyId, awsSecretAccessKey, a" +
                           "wsSessionToken, new Amazon");

            #line 115 "C:\Codebase\v3\AWSDotNetPublic\generator\ServiceClientGeneratorLib\Generators\SourceFiles\ServiceClientUnity.tt"
                this.Write(this.ToStringHelper.ToStringWithCulture(this.Config.BaseName));

            #line default
            #line hidden
                this.Write("Config{RegionEndpoint = region})\r\n        {\r\n        }\r\n\r\n        /// <summary>\r\n" +
                           "        /// Constructs Amazon");

            #line 120 "C:\Codebase\v3\AWSDotNetPublic\generator\ServiceClientGeneratorLib\Generators\SourceFiles\ServiceClientUnity.tt"
                this.Write(this.ToStringHelper.ToStringWithCulture(this.Config.BaseName));

            #line default
            #line hidden
                this.Write("Client with AWS Access Key ID, AWS Secret Key and an\r\n        /// Amazon");

            #line 121 "C:\Codebase\v3\AWSDotNetPublic\generator\ServiceClientGeneratorLib\Generators\SourceFiles\ServiceClientUnity.tt"
                this.Write(this.ToStringHelper.ToStringWithCulture(this.Config.BaseName));

            #line default
            #line hidden
                this.Write(@"Client Configuration object. 
        /// </summary>
        /// <param name=""awsAccessKeyId"">AWS Access Key ID</param>
        /// <param name=""awsSecretAccessKey"">AWS Secret Access Key</param>
        /// <param name=""awsSessionToken"">AWS Session Token</param>
        /// <param name=""clientConfig"">The Amazon");

            #line 126 "C:\Codebase\v3\AWSDotNetPublic\generator\ServiceClientGeneratorLib\Generators\SourceFiles\ServiceClientUnity.tt"
                this.Write(this.ToStringHelper.ToStringWithCulture(this.Config.BaseName));

            #line default
            #line hidden
                this.Write("Client Configuration Object</param>\r\n        public Amazon");

            #line 127 "C:\Codebase\v3\AWSDotNetPublic\generator\ServiceClientGeneratorLib\Generators\SourceFiles\ServiceClientUnity.tt"
                this.Write(this.ToStringHelper.ToStringWithCulture(this.Config.BaseName));

            #line default
            #line hidden
                this.Write("Client(string awsAccessKeyId, string awsSecretAccessKey, string awsSessionToken, " +
                           "Amazon");

            #line 127 "C:\Codebase\v3\AWSDotNetPublic\generator\ServiceClientGeneratorLib\Generators\SourceFiles\ServiceClientUnity.tt"
                this.Write(this.ToStringHelper.ToStringWithCulture(this.Config.BaseName));

            #line default
            #line hidden
                this.Write("Config clientConfig)\r\n            : base(awsAccessKeyId, awsSecretAccessKey, awsS" +
                           "essionToken, clientConfig)\r\n        {\r\n        }\r\n\r\n        #endregion\r\n");

            #line 133 "C:\Codebase\v3\AWSDotNetPublic\generator\ServiceClientGeneratorLib\Generators\SourceFiles\ServiceClientUnity.tt"
            }


            #line default
            #line hidden
            this.Write("\r\n        #region Overrides\r\n\r\n\t\t/// <summary>\r\n        /// Creates the signer fo" +
                       "r the service.\r\n        /// </summary>\r\n        protected override AbstractAWSSi" +
                       "gner CreateSigner()\r\n        {\r\n            return new ");

            #line 144 "C:\Codebase\v3\AWSDotNetPublic\generator\ServiceClientGeneratorLib\Generators\SourceFiles\ServiceClientUnity.tt"
            this.Write(this.ToStringHelper.ToStringWithCulture(GeneratorHelpers.DetermineSigner(this.Config.ServiceModel.SignatureVersion, this.Config.BaseName)));

            #line default
            #line hidden
            this.Write("();\r\n        }\r\n\r\n");

            #line 147 "C:\Codebase\v3\AWSDotNetPublic\generator\ServiceClientGeneratorLib\Generators\SourceFiles\ServiceClientUnity.tt"

            // Generates overrides for the pipeline if specified in the customizations file
            if (this.Config.ServiceModel.Customizations.PipelineOverride != null)
            {
            #line default
            #line hidden
                this.Write(@"		/// <summary>
        /// Customizes the runtime pipeline.
        /// </summary>
        /// <param name=""pipeline"">Runtime pipeline for the current client.</param>
        protected override void CustomizeRuntimePipeline(RuntimePipeline pipeline)
        {
");

            #line 158 "C:\Codebase\v3\AWSDotNetPublic\generator\ServiceClientGeneratorLib\Generators\SourceFiles\ServiceClientUnity.tt"

                var unityPipelineOverride = this.Config.ServiceModel.Customizations.UnityPipelineOverride;
                var pipelineOverrides     = (unityPipelineOverride != null)?unityPipelineOverride: this.Config.ServiceModel.Customizations.PipelineOverride;
                foreach (var o in pipelineOverrides.Overrides)
                {
                    if (o.OverrideMethod == "remove")
                    {
            #line default
            #line hidden
                        this.Write("            pipeline.");

            #line 166 "C:\Codebase\v3\AWSDotNetPublic\generator\ServiceClientGeneratorLib\Generators\SourceFiles\ServiceClientUnity.tt"
                        this.Write(this.ToStringHelper.ToStringWithCulture(o.FormattedOverrideMethod));

            #line default
            #line hidden
                        this.Write("();\r\n");

            #line 167 "C:\Codebase\v3\AWSDotNetPublic\generator\ServiceClientGeneratorLib\Generators\SourceFiles\ServiceClientUnity.tt"
                    }
                    else
                    {
            #line default
            #line hidden
                        this.Write("            pipeline.");

            #line 172 "C:\Codebase\v3\AWSDotNetPublic\generator\ServiceClientGeneratorLib\Generators\SourceFiles\ServiceClientUnity.tt"
                        this.Write(this.ToStringHelper.ToStringWithCulture(o.FormattedOverrideMethod));

            #line default
            #line hidden
                        this.Write("(new ");

            #line 172 "C:\Codebase\v3\AWSDotNetPublic\generator\ServiceClientGeneratorLib\Generators\SourceFiles\ServiceClientUnity.tt"
                        this.Write(this.ToStringHelper.ToStringWithCulture(o.NewType));

            #line default
            #line hidden
                        this.Write("(");

            #line 172 "C:\Codebase\v3\AWSDotNetPublic\generator\ServiceClientGeneratorLib\Generators\SourceFiles\ServiceClientUnity.tt"
                        this.Write(this.ToStringHelper.ToStringWithCulture(o.ConstructorInput));

            #line default
            #line hidden
                        this.Write("));\r\n");

            #line 173 "C:\Codebase\v3\AWSDotNetPublic\generator\ServiceClientGeneratorLib\Generators\SourceFiles\ServiceClientUnity.tt"
                    }
                }


            #line default
            #line hidden
                this.Write("        }\t\r\n");

            #line 178 "C:\Codebase\v3\AWSDotNetPublic\generator\ServiceClientGeneratorLib\Generators\SourceFiles\ServiceClientUnity.tt"
            }


            #line default
            #line hidden
            this.Write(@"        #endregion

        #region Dispose

		/// <summary>
        /// Disposes the service client.
        /// </summary>
        protected override void Dispose(bool disposing)
        {
            base.Dispose(disposing);
        }

        #endregion

        ");

            #line 195 "C:\Codebase\v3\AWSDotNetPublic\generator\ServiceClientGeneratorLib\Generators\SourceFiles\ServiceClientUnity.tt"

            // Generates methods for each operation in the model
            foreach (var operation in this.Config.ServiceModel.Operations)
            {
            #line default
            #line hidden
                this.Write("\r\n        #region  ");

            #line 201 "C:\Codebase\v3\AWSDotNetPublic\generator\ServiceClientGeneratorLib\Generators\SourceFiles\ServiceClientUnity.tt"
                this.Write(this.ToStringHelper.ToStringWithCulture(operation.Name));

            #line default
            #line hidden
                this.Write("\r\n");

            #line 202 "C:\Codebase\v3\AWSDotNetPublic\generator\ServiceClientGeneratorLib\Generators\SourceFiles\ServiceClientUnity.tt"

                if (this.Config.ServiceModel.Customizations.GenerateSyncClientForUnity)
                {
                    if (this.Config.ServiceModel.Customizations.CreateNoArgOverload(operation.Name))
                    {
                        this.FormatUnityOperationDocumentationSync(operation, false, !this.Config.ServiceModel.AvailableInWWW(operation));
                        if (operation.IsDeprecated)
                        {
            #line default
            #line hidden
                            this.Write("\t\t[Obsolete(\"");

            #line 211 "C:\Codebase\v3\AWSDotNetPublic\generator\ServiceClientGeneratorLib\Generators\SourceFiles\ServiceClientUnity.tt"
                            this.Write(this.ToStringHelper.ToStringWithCulture(operation.DeprecationMessage));

            #line default
            #line hidden
                            this.Write("\")]\r\n");

            #line 212 "C:\Codebase\v3\AWSDotNetPublic\generator\ServiceClientGeneratorLib\Generators\SourceFiles\ServiceClientUnity.tt"
                        }


            #line default
            #line hidden
                        this.Write("\t\tinternal ");

            #line 215 "C:\Codebase\v3\AWSDotNetPublic\generator\ServiceClientGeneratorLib\Generators\SourceFiles\ServiceClientUnity.tt"
                        this.Write(this.ToStringHelper.ToStringWithCulture(operation.Name));

            #line default
            #line hidden
                        this.Write("Response ");

            #line 215 "C:\Codebase\v3\AWSDotNetPublic\generator\ServiceClientGeneratorLib\Generators\SourceFiles\ServiceClientUnity.tt"
                        this.Write(this.ToStringHelper.ToStringWithCulture(operation.Name));

            #line default
            #line hidden
                        this.Write("()\r\n        {\r\n\t\t\treturn ");

            #line 217 "C:\Codebase\v3\AWSDotNetPublic\generator\ServiceClientGeneratorLib\Generators\SourceFiles\ServiceClientUnity.tt"
                        this.Write(this.ToStringHelper.ToStringWithCulture(operation.Name));

            #line default
            #line hidden
                        this.Write("(new ");

            #line 217 "C:\Codebase\v3\AWSDotNetPublic\generator\ServiceClientGeneratorLib\Generators\SourceFiles\ServiceClientUnity.tt"
                        this.Write(this.ToStringHelper.ToStringWithCulture(operation.Name));

            #line default
            #line hidden
                        this.Write("Request());\r\n\t\t}\r\n");

            #line 219 "C:\Codebase\v3\AWSDotNetPublic\generator\ServiceClientGeneratorLib\Generators\SourceFiles\ServiceClientUnity.tt"
                    }

                    if (operation.IsDeprecated)
                    {
            #line default
            #line hidden
                        this.Write("\t\t[Obsolete(\"");

            #line 225 "C:\Codebase\v3\AWSDotNetPublic\generator\ServiceClientGeneratorLib\Generators\SourceFiles\ServiceClientUnity.tt"
                        this.Write(this.ToStringHelper.ToStringWithCulture(operation.DeprecationMessage));

            #line default
            #line hidden
                        this.Write("\")]\r\n");

            #line 226 "C:\Codebase\v3\AWSDotNetPublic\generator\ServiceClientGeneratorLib\Generators\SourceFiles\ServiceClientUnity.tt"
                    }


            #line default
            #line hidden
                    this.Write("\t\tinternal ");

            #line 229 "C:\Codebase\v3\AWSDotNetPublic\generator\ServiceClientGeneratorLib\Generators\SourceFiles\ServiceClientUnity.tt"
                    this.Write(this.ToStringHelper.ToStringWithCulture(operation.Name));

            #line default
            #line hidden
                    this.Write("Response ");

            #line 229 "C:\Codebase\v3\AWSDotNetPublic\generator\ServiceClientGeneratorLib\Generators\SourceFiles\ServiceClientUnity.tt"
                    this.Write(this.ToStringHelper.ToStringWithCulture(operation.Name));

            #line default
            #line hidden
                    this.Write("(");

            #line 229 "C:\Codebase\v3\AWSDotNetPublic\generator\ServiceClientGeneratorLib\Generators\SourceFiles\ServiceClientUnity.tt"
                    this.Write(this.ToStringHelper.ToStringWithCulture(operation.Name));

            #line default
            #line hidden
                    this.Write("Request request)\r\n        {\r\n");

            #line 231 "C:\Codebase\v3\AWSDotNetPublic\generator\ServiceClientGeneratorLib\Generators\SourceFiles\ServiceClientUnity.tt"

                    if (!this.Config.ServiceModel.AvailableInWWW(operation))
                    {
            #line default
            #line hidden
                        this.Write("\t\t    if (AWSConfigs.HttpClient == AWSConfigs.HttpClientOption.UnityWWW)\r\n\t\t    {" +
                                   "\r\n\t\t\t\tthrow new InvalidOperationException(\"");

            #line 237 "C:\Codebase\v3\AWSDotNetPublic\generator\ServiceClientGeneratorLib\Generators\SourceFiles\ServiceClientUnity.tt"
                        this.Write(this.ToStringHelper.ToStringWithCulture(operation.Name));

            #line default
            #line hidden
                        this.Write(" is only allowed with AWSConfigs.HttpClientOption.UnityWebRequest API option\");\r\n" +
                                   "\t\t    }\r\n");

            #line 239 "C:\Codebase\v3\AWSDotNetPublic\generator\ServiceClientGeneratorLib\Generators\SourceFiles\ServiceClientUnity.tt"
                    }


            #line default
            #line hidden
                    this.Write("            var marshaller = new ");

            #line 242 "C:\Codebase\v3\AWSDotNetPublic\generator\ServiceClientGeneratorLib\Generators\SourceFiles\ServiceClientUnity.tt"
                    this.Write(this.ToStringHelper.ToStringWithCulture(operation.Name));

            #line default
            #line hidden
                    this.Write("RequestMarshaller();\r\n            var unmarshaller = ");

            #line 243 "C:\Codebase\v3\AWSDotNetPublic\generator\ServiceClientGeneratorLib\Generators\SourceFiles\ServiceClientUnity.tt"
                    this.Write(this.ToStringHelper.ToStringWithCulture(operation.Name));

            #line default
            #line hidden
                    this.Write("ResponseUnmarshaller.Instance;\r\n\r\n            return Invoke<");

            #line 245 "C:\Codebase\v3\AWSDotNetPublic\generator\ServiceClientGeneratorLib\Generators\SourceFiles\ServiceClientUnity.tt"
                    this.Write(this.ToStringHelper.ToStringWithCulture(operation.Name));

            #line default
            #line hidden
                    this.Write("Request,");

            #line 245 "C:\Codebase\v3\AWSDotNetPublic\generator\ServiceClientGeneratorLib\Generators\SourceFiles\ServiceClientUnity.tt"
                    this.Write(this.ToStringHelper.ToStringWithCulture(operation.Name));

            #line default
            #line hidden
                    this.Write("Response>(request, marshaller, unmarshaller);\r\n        }\r\n");

            #line 247 "C:\Codebase\v3\AWSDotNetPublic\generator\ServiceClientGeneratorLib\Generators\SourceFiles\ServiceClientUnity.tt"
                }
                // Creates a version of the operation that takes no arguments and passes a request with no set members if specified in the customizations
                if (this.Config.ServiceModel.Customizations.CreateNoArgOverload(operation.Name))
                {
            #line default
            #line hidden

            #line 253 "C:\Codebase\v3\AWSDotNetPublic\generator\ServiceClientGeneratorLib\Generators\SourceFiles\ServiceClientUnity.tt"

                    this.FormatUnityOperationDocumentationAsync(operation, false, !this.Config.ServiceModel.AvailableInWWW(operation));
                    if (operation.IsDeprecated)
                    {
            #line default
            #line hidden
                        this.Write("\t\t[Obsolete(\"");

            #line 258 "C:\Codebase\v3\AWSDotNetPublic\generator\ServiceClientGeneratorLib\Generators\SourceFiles\ServiceClientUnity.tt"
                        this.Write(this.ToStringHelper.ToStringWithCulture(operation.DeprecationMessage));

            #line default
            #line hidden
                        this.Write("\")]\r\n");

            #line 259 "C:\Codebase\v3\AWSDotNetPublic\generator\ServiceClientGeneratorLib\Generators\SourceFiles\ServiceClientUnity.tt"
                    }


            #line default
            #line hidden
                    this.Write("        public void ");

            #line 262 "C:\Codebase\v3\AWSDotNetPublic\generator\ServiceClientGeneratorLib\Generators\SourceFiles\ServiceClientUnity.tt"
                    this.Write(this.ToStringHelper.ToStringWithCulture(operation.Name));

            #line default
            #line hidden
                    this.Write("Async(AmazonServiceCallback<");

            #line 262 "C:\Codebase\v3\AWSDotNetPublic\generator\ServiceClientGeneratorLib\Generators\SourceFiles\ServiceClientUnity.tt"
                    this.Write(this.ToStringHelper.ToStringWithCulture(operation.Name));

            #line default
            #line hidden
                    this.Write("Request, ");

            #line 262 "C:\Codebase\v3\AWSDotNetPublic\generator\ServiceClientGeneratorLib\Generators\SourceFiles\ServiceClientUnity.tt"
                    this.Write(this.ToStringHelper.ToStringWithCulture(operation.Name));

            #line default
            #line hidden
                    this.Write("Response> callback, AsyncOptions options = null)\r\n        {\r\n            ");

            #line 264 "C:\Codebase\v3\AWSDotNetPublic\generator\ServiceClientGeneratorLib\Generators\SourceFiles\ServiceClientUnity.tt"
                    this.Write(this.ToStringHelper.ToStringWithCulture(operation.Name));

            #line default
            #line hidden
                    this.Write("Async(new ");

            #line 264 "C:\Codebase\v3\AWSDotNetPublic\generator\ServiceClientGeneratorLib\Generators\SourceFiles\ServiceClientUnity.tt"
                    this.Write(this.ToStringHelper.ToStringWithCulture(operation.Name));

            #line default
            #line hidden
                    this.Write("Request(), callback, options);\r\n        }\r\n\r\n");

            #line 267 "C:\Codebase\v3\AWSDotNetPublic\generator\ServiceClientGeneratorLib\Generators\SourceFiles\ServiceClientUnity.tt"
                }
                AddSimpleClientMethodsForUnity(operation, false);


            #line default
            #line hidden
                this.Write("\r\n");

            #line 272 "C:\Codebase\v3\AWSDotNetPublic\generator\ServiceClientGeneratorLib\Generators\SourceFiles\ServiceClientUnity.tt"
                AddUnityAsyncDocumentation(operation.Name, !this.Config.ServiceModel.AvailableInWWW(operation));
                if (operation.IsDeprecated)
                {
            #line default
            #line hidden
                    this.Write("\t\t[Obsolete(\"");

            #line 276 "C:\Codebase\v3\AWSDotNetPublic\generator\ServiceClientGeneratorLib\Generators\SourceFiles\ServiceClientUnity.tt"
                    this.Write(this.ToStringHelper.ToStringWithCulture(operation.DeprecationMessage));

            #line default
            #line hidden
                    this.Write("\")]\r\n");

            #line 277 "C:\Codebase\v3\AWSDotNetPublic\generator\ServiceClientGeneratorLib\Generators\SourceFiles\ServiceClientUnity.tt"
                }


            #line default
            #line hidden
                this.Write("        ");

            #line 280 "C:\Codebase\v3\AWSDotNetPublic\generator\ServiceClientGeneratorLib\Generators\SourceFiles\ServiceClientUnity.tt"
                this.Write(this.ToStringHelper.ToStringWithCulture(operation.IsInternal ? "internal" : "public"));

            #line default
            #line hidden
                this.Write(" void ");

            #line 280 "C:\Codebase\v3\AWSDotNetPublic\generator\ServiceClientGeneratorLib\Generators\SourceFiles\ServiceClientUnity.tt"
                this.Write(this.ToStringHelper.ToStringWithCulture(operation.Name));

            #line default
            #line hidden
                this.Write("Async(");

            #line 280 "C:\Codebase\v3\AWSDotNetPublic\generator\ServiceClientGeneratorLib\Generators\SourceFiles\ServiceClientUnity.tt"
                this.Write(this.ToStringHelper.ToStringWithCulture(operation.Name));

            #line default
            #line hidden
                this.Write("Request request, AmazonServiceCallback<");

            #line 280 "C:\Codebase\v3\AWSDotNetPublic\generator\ServiceClientGeneratorLib\Generators\SourceFiles\ServiceClientUnity.tt"
                this.Write(this.ToStringHelper.ToStringWithCulture(operation.Name));

            #line default
            #line hidden
                this.Write("Request, ");

            #line 280 "C:\Codebase\v3\AWSDotNetPublic\generator\ServiceClientGeneratorLib\Generators\SourceFiles\ServiceClientUnity.tt"
                this.Write(this.ToStringHelper.ToStringWithCulture(operation.Name));

            #line default
            #line hidden
                this.Write("Response> callback, AsyncOptions options = null)\r\n        {\r\n");

            #line 282 "C:\Codebase\v3\AWSDotNetPublic\generator\ServiceClientGeneratorLib\Generators\SourceFiles\ServiceClientUnity.tt"

                if (!this.Config.ServiceModel.AvailableInWWW(operation))
                {
            #line default
            #line hidden
                    this.Write("\t\t    if (AWSConfigs.HttpClient == AWSConfigs.HttpClientOption.UnityWWW)\r\n\t\t    {" +
                               "\r\n\t\t\t\tthrow new InvalidOperationException(\"");

            #line 288 "C:\Codebase\v3\AWSDotNetPublic\generator\ServiceClientGeneratorLib\Generators\SourceFiles\ServiceClientUnity.tt"
                    this.Write(this.ToStringHelper.ToStringWithCulture(operation.Name));

            #line default
            #line hidden
                    this.Write(" is only allowed with AWSConfigs.HttpClientOption.UnityWebRequest API option\");\r\n" +
                               "\t\t    }\r\n");

            #line 290 "C:\Codebase\v3\AWSDotNetPublic\generator\ServiceClientGeneratorLib\Generators\SourceFiles\ServiceClientUnity.tt"
                }


            #line default
            #line hidden
                this.Write("        \toptions = options == null?new AsyncOptions():options;\r\n            var m" +
                           "arshaller = new ");

            #line 294 "C:\Codebase\v3\AWSDotNetPublic\generator\ServiceClientGeneratorLib\Generators\SourceFiles\ServiceClientUnity.tt"
                this.Write(this.ToStringHelper.ToStringWithCulture(operation.Name));

            #line default
            #line hidden
                this.Write("RequestMarshaller();\r\n            var unmarshaller = ");

            #line 295 "C:\Codebase\v3\AWSDotNetPublic\generator\ServiceClientGeneratorLib\Generators\SourceFiles\ServiceClientUnity.tt"
                this.Write(this.ToStringHelper.ToStringWithCulture(operation.Name));

            #line default
            #line hidden
                this.Write(@"ResponseUnmarshaller.Instance;
			Action<AmazonWebServiceRequest, AmazonWebServiceResponse, Exception, AsyncOptions> callbackHelper = null;
			if(callback !=null )
				callbackHelper = (AmazonWebServiceRequest req, AmazonWebServiceResponse res, Exception ex, AsyncOptions ao) => { 
					AmazonServiceResult<"                    );

            #line 299 "C:\Codebase\v3\AWSDotNetPublic\generator\ServiceClientGeneratorLib\Generators\SourceFiles\ServiceClientUnity.tt"
                this.Write(this.ToStringHelper.ToStringWithCulture(operation.Name));

            #line default
            #line hidden
                this.Write("Request,");

            #line 299 "C:\Codebase\v3\AWSDotNetPublic\generator\ServiceClientGeneratorLib\Generators\SourceFiles\ServiceClientUnity.tt"
                this.Write(this.ToStringHelper.ToStringWithCulture(operation.Name));

            #line default
            #line hidden
                this.Write("Response> responseObject \r\n\t\t\t\t\t\t\t= new AmazonServiceResult<");

            #line 300 "C:\Codebase\v3\AWSDotNetPublic\generator\ServiceClientGeneratorLib\Generators\SourceFiles\ServiceClientUnity.tt"
                this.Write(this.ToStringHelper.ToStringWithCulture(operation.Name));

            #line default
            #line hidden
                this.Write("Request,");

            #line 300 "C:\Codebase\v3\AWSDotNetPublic\generator\ServiceClientGeneratorLib\Generators\SourceFiles\ServiceClientUnity.tt"
                this.Write(this.ToStringHelper.ToStringWithCulture(operation.Name));

            #line default
            #line hidden
                this.Write("Response>((");

            #line 300 "C:\Codebase\v3\AWSDotNetPublic\generator\ServiceClientGeneratorLib\Generators\SourceFiles\ServiceClientUnity.tt"
                this.Write(this.ToStringHelper.ToStringWithCulture(operation.Name));

            #line default
            #line hidden
                this.Write("Request)req, (");

            #line 300 "C:\Codebase\v3\AWSDotNetPublic\generator\ServiceClientGeneratorLib\Generators\SourceFiles\ServiceClientUnity.tt"
                this.Write(this.ToStringHelper.ToStringWithCulture(operation.Name));

            #line default
            #line hidden
                this.Write("Response)res, ex , ao.State);\t\r\n\t\t\t\t\t\tcallback(responseObject); \r\n\t\t\t\t};\r\n       " +
                           "     BeginInvoke<");

            #line 303 "C:\Codebase\v3\AWSDotNetPublic\generator\ServiceClientGeneratorLib\Generators\SourceFiles\ServiceClientUnity.tt"
                this.Write(this.ToStringHelper.ToStringWithCulture(operation.Name));

            #line default
            #line hidden
                this.Write("Request>(request, marshaller, unmarshaller, options, callbackHelper);\r\n        }\r" +
                           "\n\r\n        #endregion\r\n        ");

            #line 307 "C:\Codebase\v3\AWSDotNetPublic\generator\ServiceClientGeneratorLib\Generators\SourceFiles\ServiceClientUnity.tt"
            }


            #line default
            #line hidden
            this.Write("\r\n    }\r\n}\r\n");
            return(this.GenerationEnvironment.ToString());
        }
 private StatementSyntax IfValueIsNullThenReturnFalse()
 {
     return(IfStatement(
                GeneratorHelpers.InvokeReferenceEquals(IdentifierName(ParameterName), GeneratorHelpers.NullExpression()),
                GeneratorHelpers.ReturnFalse()
                ));
 }