/* Ċ Ġ* ĠCopyright ĠAmazon . com , ĠInc . Ġor Ġits Ġaffiliates . ĠAll ĠRights ĠReserved . Ċ Ġ* ĠSPDX - License - Identifier : ĠApache - 2 . 0 . Ċ Ġ*/ Ċ Ċ package Ġsoftware . amazon . smithy . kotlin . codegen . core Ċ Ċ import Ġsoftware . amazon . smithy . codegen . core . Symbol Ċ import Ġsoftware . amazon . smithy . kotlin . codegen . model . build Symbol Ċ import Ġsoftware . amazon . smithy . kotlin . codegen . model . namespace Ċ Ċ /** Ċ Ġ* ĠCommon ly Ġused Ġruntime Ġtypes . ĠProvides Ġa Ġsingle Ġdefinition Ġof Ġa Ġruntime Ġsymbol Ġsuch Ġthat Ġcodegen Ġisn 't Ġl itter ed Ċ Ġ* Ġwith Ġinline Ġsymbol Ġcreation Ġwhich Ġmakes Ġrefactoring Ġof Ġthe Ġruntime Ġmore Ġdifficult Ġand Ġerror Ġpr one . Ċ Ġ* Ċ Ġ* ĠNOTE : ĠNot Ġall Ġsymbols Ġneed Ġbe Ġadded Ġhere Ġbut Ġit Ġdoesn 't Ġh urt Ġto Ġdefine Ġruntime Ġsymbols Ġonce . Ċ Ġ*/ Ċ object ĠRuntime Types Ġ{ ĊĠĠĠ Ġobject ĠHttp Ġ{ ĊĠĠĠĠĠĠĠ Ġval ĠHttp Body Ġ= Ġruntime Symbol (" Http Body ", ĠKotlin Dependency . HTTP ) ĊĠĠĠĠĠĠĠ Ġval ĠHttpMethod Ġ= Ġruntime Symbol (" HttpMethod ", ĠKotlin Dependency . HTTP ) ĊĠĠĠĠĠĠĠ Ġval ĠS dk HttpClient Ġ= Ġruntime Symbol (" Sdk HttpClient ", ĠKotlin Dependency . HTTP ) ĊĠĠĠĠĠĠĠ Ġval ĠS dk HttpClient Fn Ġ= Ġruntime Symbol (" sdk HttpClient ", ĠKotlin Dependency . HTTP ) ĊĠĠĠĠĠĠĠ Ġval ĠByteArray Content Ġ= Ġruntime Symbol (" ByteArray Content ", ĠKotlin Dependency . HTTP , Ġ" content ") ĊĠĠĠĠĠĠĠ Ġval ĠQuery Parameters Ġ= Ġruntime Symbol (" Query Parameters ", ĠKotlin Dependency . HTTP ) ĊĠĠĠĠĠĠĠ Ġval ĠQuery Parameters Builder Ġ= Ġruntime Symbol (" Query Parameters Builder ", ĠKotlin Dependency . HTTP ) ĊĠĠĠĠĠĠĠ Ġval Ġto Query Parameters Ġ= Ġruntime Symbol (" to Query Parameters ", ĠKotlin Dependency . HTTP ) ĊĠĠĠĠĠĠĠ Ġval Ġencode Label Ġ= Ġruntime Symbol (" encode Label ", ĠKotlin Dependency . HTTP , Ġ" util ") ĊĠĠĠĠĠĠĠ Ġval Ġread All Ġ= Ġruntime Symbol (" read All ", ĠKotlin Dependency . HTTP ) ĊĠĠĠĠĠĠĠ Ġval Ġparameters Ġ= Ġruntime Symbol (" parameters ", ĠKotlin Dependency . HTTP ) ĊĠĠĠĠĠĠĠ Ġval Ġto Byte Stream Ġ= Ġruntime Symbol (" to Byte Stream ", ĠKotlin Dependency . HTTP ) ĊĠĠĠĠĠĠĠ Ġval Ġto Http Body Ġ= Ġruntime Symbol (" to Http Body ", ĠKotlin Dependency . HTTP ) ĊĠĠĠĠĠĠĠ Ġval Ġis Success Ġ= Ġruntime Symbol (" is Success ", ĠKotlin Dependency . HTTP ) ĊĠĠĠĠĠĠĠ Ġval ĠStatusCode Ġ= Ġruntime Symbol (" HttpStatusCode ", ĠKotlin Dependency . HTTP ) ĊĠĠĠĠĠĠĠ Ġval Ġsplit As Query Parameters Ġ= Ġruntime Symbol (" split As Query Parameters ", ĠKotlin Dependency . HTTP , Ġ" util ") ĊĊĠĠĠĠĠĠĠ Ġobject ĠRequest Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġval ĠHttpRequest Ġ= Ġruntime Symbol (" HttpRequest ", ĠKotlin Dependency . HTTP , Ġ" request ") ĊĠĠĠĠĠĠĠĠĠĠĠ Ġval ĠHttpRequest Builder Ġ= Ġruntime Symbol (" HttpRequest Builder ", ĠKotlin Dependency . HTTP , Ġ" request ") ĊĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġurl Ġ= Ġruntime Symbol (" url ", ĠKotlin Dependency . HTTP , Ġ" request ") ĊĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġheaders Ġ= Ġruntime Symbol (" headers ", ĠKotlin Dependency . HTTP , Ġ" request ") ĊĠĠĠĠĠĠĠ Ġ} ĊĊĠĠĠĠĠĠĠ Ġobject ĠResponse Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġval ĠHttp Call Ġ= Ġruntime Symbol (" Http Call ", ĠKotlin Dependency . HTTP , Ġ" response ") ĊĠĠĠĠĠĠĠĠĠĠĠ Ġval ĠHttpResponse Ġ= Ġruntime Symbol (" HttpResponse ", ĠKotlin Dependency . HTTP , Ġ" response ") ĊĠĠĠĠĠĠĠ Ġ} ĊĊĠĠĠĠĠĠĠ Ġobject ĠM idd l ware Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġval ĠMd 5 Checksum Middleware Ġ= Ġruntime Symbol (" Md 5 Checksum ", ĠKotlin Dependency . HTTP , Ġ" middleware ") ĊĠĠĠĠĠĠĠĠĠĠĠ Ġval ĠMut ate Headers Middleware Ġ= Ġruntime Symbol (" Mutate Headers ", ĠKotlin Dependency . HTTP , Ġ" middleware ") ĊĠĠĠĠĠĠĠĠĠĠĠ Ġval ĠRetry Feature Ġ= Ġruntime Symbol (" Retry Feature ", ĠKotlin Dependency . HTTP , Ġ" middleware ") ĊĠĠĠĠĠĠĠĠĠĠĠ Ġval ĠResolve Endpoint Ġ= Ġruntime Symbol (" Resolve Endpoint ", ĠKotlin Dependency . HTTP , Ġ" middleware ") ĊĠĠĠĠĠĠĠ Ġ} ĊĊĠĠĠĠĠĠĠ Ġobject ĠOperation Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġval ĠHttp Deserialize Ġ= Ġruntime Symbol (" Http Deserialize ", ĠKotlin Dependency . HTTP , Ġ" operation ") ĊĠĠĠĠĠĠĠĠĠĠĠ Ġval ĠHttp Serialize Ġ= Ġruntime Symbol (" Http Serialize ", ĠKotlin Dependency . HTTP , Ġ" operation ") ĊĠĠĠĠĠĠĠĠĠĠĠ Ġval ĠS dk Http Operation Ġ= Ġruntime Symbol (" Sdk Http Operation ", ĠKotlin Dependency . HTTP , Ġ" operation ") ĊĠĠĠĠĠĠĠĠĠĠĠ Ġval ĠOperation Request Ġ= Ġruntime Symbol (" Operation Request ", ĠKotlin Dependency . HTTP , Ġ" operation ") ĊĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġcontext Ġ= Ġruntime Symbol (" context ", ĠKotlin Dependency . HTTP , Ġ" operation ") ĊĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġround Trip Ġ= Ġruntime Symbol (" round Trip ", ĠKotlin Dependency . HTTP , Ġ" operation ") ĊĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġexecute Ġ= Ġruntime Symbol (" execute ", ĠKotlin Dependency . HTTP , Ġ" operation ") ĊĠĠĠĠĠĠĠĠĠĠĠ Ġval ĠEndpoint Resolver Ġ= Ġruntime Symbol (" Endpoint Resolver ", ĠKotlin Dependency . HTTP , Ġ" operation ") ĊĠĠĠĠĠĠĠ Ġ} ĊĊĠĠĠĠĠĠĠ Ġobject ĠEngine Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġval ĠHttpClient Engine Ġ= Ġruntime Symbol (" HttpClient Engine ", ĠKotlin Dependency . HTTP , Ġ" engine ") ĊĠĠĠĠĠĠĠĠĠĠĠ Ġval ĠHttpClient Engine Config Ġ= Ġruntime Symbol (" HttpClient Engine Config ", ĠKotlin Dependency . HTTP , Ġ" engine ") ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġobject ĠCore Ġ{ ĊĠĠĠĠĠĠĠ Ġval ĠIde mpot ency Token Provider Ext Ġ= Ġruntime Symbol (" ide mpot ency Token Provider ", ĠKotlin Dependency . CORE , Ġ" client ") ĊĠĠĠĠĠĠĠ Ġval ĠExecutionContext Ġ= Ġruntime Symbol (" ExecutionContext ", ĠKotlin Dependency . CORE , Ġ" client ") ĊĠĠĠĠĠĠĠ Ġval ĠError Metadata Ġ= Ġruntime Symbol (" Error Metadata ", ĠKotlin Dependency . CORE ) ĊĠĠĠĠĠĠĠ Ġval ĠService Error Metadata Ġ= Ġruntime Symbol (" Service Error Metadata ", ĠKotlin Dependency . CORE ) ĊĠĠĠĠĠĠĠ Ġval ĠInstant Ġ= Ġruntime Symbol (" Instant ", ĠKotlin Dependency . CORE , Ġ" time ") ĊĠĠĠĠĠĠĠ Ġval ĠTimestamp Format Ġ= Ġruntime Symbol (" Timestamp Format ", ĠKotlin Dependency . CORE , Ġ" time ") ĊĠĠĠĠĠĠĠ Ġval ĠClient Exception Ġ= Ġruntime Symbol (" ClientException ", ĠKotlin Dependency . CORE ) ĊĊĠĠĠĠĠĠĠ Ġobject ĠContent Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġval ĠByteArray Content Ġ= Ġruntime Symbol (" ByteArray Content ", ĠKotlin Dependency . CORE , Ġ" content ") ĊĠĠĠĠĠĠĠĠĠĠĠ Ġval ĠByte Stream Ġ= Ġruntime Symbol (" Byte Stream ", ĠKotlin Dependency . CORE , Ġ" content ") ĊĠĠĠĠĠĠĠĠĠĠĠ Ġval ĠString Content Ġ= Ġruntime Symbol (" String Content ", ĠKotlin Dependency . CORE , Ġ" content ") ĊĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġto ByteArray Ġ= Ġruntime Symbol (" toByteArray ", ĠKotlin Dependency . CORE , Ġ" content ") ĊĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġdecode ToString Ġ= Ġruntime Symbol (" decode ToString ", ĠKotlin Dependency . CORE , Ġ" content ") ĊĠĠĠĠĠĠĠ Ġ} ĊĊĠĠĠĠĠĠĠ Ġobject ĠRet ries Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġval ĠRetry Strategy Ġ= Ġruntime Symbol (" Retry Strategy ", ĠKotlin Dependency . CORE , Ġ" retries ") ĊĠĠĠĠĠĠĠĠĠĠĠ Ġobject ĠImp l Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġval ĠExp onent ial Backoff With J itter Ġ= Ġruntime Symbol (" Exponent ial Backoff With J itter ", ĠKotlin Dependency . CORE , Ġ" retries . impl ") ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġval ĠExp onent ial Backoff With J itter Options Ġ= Ġruntime Symbol (" Exponent ial Backoff With J itter Options ", ĠKotlin Dependency . CORE , Ġ" retries . impl ") ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġval ĠStandard Retry Policy Ġ= Ġruntime Symbol (" Standard Retry Policy ", ĠKotlin Dependency . CORE , Ġ" retries . impl ") ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġval ĠStandard Retry Strategy Ġ= Ġruntime Symbol (" Standard Retry Strategy ", ĠKotlin Dependency . CORE , Ġ" retries . impl ") ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġval ĠStandard Retry Strategy Options Ġ= Ġruntime Symbol (" Standard Retry Strategy Options ", ĠKotlin Dependency . CORE , Ġ" retries . impl ") ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġval ĠStandard Retry Token Bucket Ġ= Ġruntime Symbol (" Standard Retry Token Bucket ", ĠKotlin Dependency . CORE , Ġ" retries . impl ") ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġval ĠStandard Retry Token Bucket Options Ġ= Ġruntime Symbol (" Standard Retry Token Bucket Options ", ĠKotlin Dependency . CORE , Ġ" retries . impl ") ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġobject ĠUtils Ġ{ ĊĠĠĠĠĠĠĠ Ġval ĠAttribute Key Ġ= Ġruntime Symbol (" Attribute Key ", ĠKotlin Dependency . UTILS ) ĊĠĠĠĠĠĠĠ Ġval ĠSh a 2 5 6 Ġ= Ġruntime Symbol (" Sha 2 5 6 ", ĠKotlin Dependency . UTILS ) ĊĠĠĠĠĠĠĠ Ġval Ġurl Encode Component Ġ= Ġruntime Symbol (" url Encode Component ", ĠKotlin Dependency . UTILS , Ġ" text ") ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġobject ĠSer de Ġ{ ĊĠĠĠĠĠĠĠ Ġval ĠSerializer Ġ= Ġruntime Symbol (" Serializer ", ĠKotlin Dependency . SER DE ) ĊĠĠĠĠĠĠĠ Ġval ĠDeserial izer Ġ= Ġruntime Symbol (" Deserializer ", ĠKotlin Dependency . SER DE ) ĊĠĠĠĠĠĠĠ Ġval ĠS dk FieldDescriptor Ġ= Ġruntime Symbol (" Sdk FieldDescriptor ", ĠKotlin Dependency . SER DE ) ĊĠĠĠĠĠĠĠ Ġval ĠS dk Object Descriptor Ġ= Ġruntime Symbol (" Sdk Object Descriptor ", ĠKotlin Dependency . SER DE ) ĊĠĠĠĠĠĠĠ Ġval ĠSerial Kind Ġ= Ġruntime Symbol (" Serial Kind ", ĠKotlin Dependency . SER DE ) ĊĠĠĠĠĠĠĠ Ġval ĠSerialization Exception Ġ= Ġruntime Symbol (" Serialization Exception ", ĠKotlin Dependency . SER DE ) ĊĠĠĠĠĠĠĠ Ġval ĠDeserial ization Exception Ġ= Ġruntime Symbol (" Deserialization Exception ", ĠKotlin Dependency . SER DE ) ĊĊĠĠĠĠĠĠĠ Ġval Ġserialize Struct Ġ= Ġruntime Symbol (" serialize Struct ", ĠKotlin Dependency . SER DE ) ĊĠĠĠĠĠĠĠ Ġval Ġserialize List Ġ= Ġruntime Symbol (" serialize List ", ĠKotlin Dependency . SER DE ) ĊĠĠĠĠĠĠĠ Ġval Ġserialize Map Ġ= Ġruntime Symbol (" serialize Map ", ĠKotlin Dependency . SER DE ) ĊĊĠĠĠĠĠĠĠ Ġval Ġdeserialize Struct Ġ= Ġruntime Symbol (" deserialize Struct ", ĠKotlin Dependency . SER DE ) ĊĠĠĠĠĠĠĠ Ġval Ġdeserialize List Ġ= Ġruntime Symbol (" deserialize List ", ĠKotlin Dependency . SER DE ) ĊĠĠĠĠĠĠĠ Ġval Ġdeserialize Map Ġ= Ġruntime Symbol (" deserialize Map ", ĠKotlin Dependency . SER DE ) ĊĠĠĠĠĠĠĠ Ġval Ġas Sdk Serializable Ġ= Ġruntime Symbol (" as Sdk Serializable ", ĠKotlin Dependency . SER DE ) ĊĠĠĠĠĠĠĠ Ġval Ġfield Ġ= Ġruntime Symbol (" field ", ĠKotlin Dependency . SER DE ) ĊĊĠĠĠĠĠĠĠ Ġobject ĠSer de Json Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġval ĠJson Serial Name Ġ= Ġruntime Symbol (" Json Serial Name ", ĠKotlin Dependency . SER DE _ JSON ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġval ĠJsonSerializer Ġ= Ġruntime Symbol (" Json Serializer ", ĠKotlin Dependency . SER DE _ JSON ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġval ĠJson Deserializer Ġ= Ġruntime Symbol (" Json Deserializer ", ĠKotlin Dependency . SER DE _ JSON ) ĊĠĠĠĠĠĠĠ Ġ} ĊĊĠĠĠĠĠĠĠ Ġobject ĠSer de Xml Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġval ĠXml Serial Name Ġ= Ġruntime Symbol (" Xml Serial Name ", ĠKotlin Dependency . SER DE _ XML ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġval ĠXml Alias Name Ġ= Ġruntime Symbol (" Xml Alias Name ", ĠKotlin Dependency . SER DE _ XML ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġval ĠXml Collection Name Ġ= Ġruntime Symbol (" Xml Collection Name ", ĠKotlin Dependency . SER DE _ XML ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġval ĠXml Namespace Ġ= Ġruntime Symbol (" Xml Namespace ", ĠKotlin Dependency . SER DE _ XML ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġval ĠXml Collection Value Namespace Ġ= Ġruntime Symbol (" Xml Collection Value Namespace ", ĠKotlin Dependency . SER DE _ XML ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġval ĠXml Map Key Namespace Ġ= Ġruntime Symbol (" Xml Map Key Namespace ", ĠKotlin Dependency . SER DE _ XML ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġval ĠFlat ten ed Ġ= Ġruntime Symbol (" Flatten ed ", ĠKotlin Dependency . SER DE _ XML ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġval ĠXml Attribute Ġ= Ġruntime Symbol (" XmlAttribute ", ĠKotlin Dependency . SER DE _ XML ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġval ĠXml Map Name Ġ= Ġruntime Symbol (" Xml Map Name ", ĠKotlin Dependency . SER DE _ XML ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġval ĠXml Error Ġ= Ġruntime Symbol (" Xml Error ", ĠKotlin Dependency . SER DE _ XML ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġval ĠXml Serializer Ġ= Ġruntime Symbol (" Xml Serializer ", ĠKotlin Dependency . SER DE _ XML ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġval ĠXml Deserializer Ġ= Ġruntime Symbol (" Xml Deserializer ", ĠKotlin Dependency . SER DE _ XML ) ĊĠĠĠĠĠĠĠ Ġ} ĊĊĠĠĠĠĠĠĠ Ġobject ĠSer de Form Url Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġval ĠForm Url Serial Name Ġ= Ġruntime Symbol (" Form Url Serial Name ", ĠKotlin Dependency . SER DE _ FORM _ URL ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġval ĠForm Url Collection Name Ġ= Ġruntime Symbol (" Form Url Collection Name ", ĠKotlin Dependency . SER DE _ FORM _ URL ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġval ĠFlat ten ed Ġ= Ġruntime Symbol (" Form Url Flatten ed ", ĠKotlin Dependency . SER DE _ FORM _ URL ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġval ĠForm Url Map Name Ġ= Ġruntime Symbol (" Form Url Map Name ", ĠKotlin Dependency . SER DE _ FORM _ URL ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġval ĠQuery Literal Ġ= Ġruntime Symbol (" Query Literal ", ĠKotlin Dependency . SER DE _ FORM _ URL ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġval ĠForm Url Serializer Ġ= Ġruntime Symbol (" Form Url Serializer ", ĠKotlin Dependency . SER DE _ FORM _ URL ) ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ} Ċ } Ċ Ċ private Ġfun Ġruntime Symbol ( name : ĠString , Ġdependency : ĠKotlin Dependency , Ġsub package : ĠString Ġ= Ġ"") : ĠSymbol Ġ= Ġbuild Symbol Ġ{ ĊĠĠĠ Ġthis . name Ġ= Ġname ĊĠĠĠ Ġnamespace ( dependency , Ġsub package ) Ċ } Ċ