public IRequest Marshall(CreateAppRequest createAppRequest) { IRequest request = new DefaultRequest(createAppRequest, "AmazonOpsWorks"); string target = "OpsWorks_20130218.CreateApp"; request.Headers["X-Amz-Target"] = target; request.Headers["Content-Type"] = "application/x-amz-json-1.1"; string uriResourcePath = ""; request.ResourcePath = uriResourcePath; using (StringWriter stringWriter = new StringWriter(CultureInfo.InvariantCulture)) { JsonWriter writer = new JsonWriter(stringWriter); writer.WriteObjectStart(); if (createAppRequest != null && createAppRequest.IsSetStackId()) { writer.WritePropertyName("StackId"); writer.Write(createAppRequest.StackId); } if (createAppRequest != null && createAppRequest.IsSetShortname()) { writer.WritePropertyName("Shortname"); writer.Write(createAppRequest.Shortname); } if (createAppRequest != null && createAppRequest.IsSetName()) { writer.WritePropertyName("Name"); writer.Write(createAppRequest.Name); } if (createAppRequest != null && createAppRequest.IsSetDescription()) { writer.WritePropertyName("Description"); writer.Write(createAppRequest.Description); } if (createAppRequest != null && createAppRequest.IsSetType()) { writer.WritePropertyName("Type"); writer.Write(createAppRequest.Type); } if (createAppRequest != null) { Source appSource = createAppRequest.AppSource; if (appSource != null) { writer.WritePropertyName("AppSource"); writer.WriteObjectStart(); if (appSource != null && appSource.IsSetType()) { writer.WritePropertyName("Type"); writer.Write(appSource.Type); } if (appSource != null && appSource.IsSetUrl()) { writer.WritePropertyName("Url"); writer.Write(appSource.Url); } if (appSource != null && appSource.IsSetUsername()) { writer.WritePropertyName("Username"); writer.Write(appSource.Username); } if (appSource != null && appSource.IsSetPassword()) { writer.WritePropertyName("Password"); writer.Write(appSource.Password); } if (appSource != null && appSource.IsSetSshKey()) { writer.WritePropertyName("SshKey"); writer.Write(appSource.SshKey); } if (appSource != null && appSource.IsSetRevision()) { writer.WritePropertyName("Revision"); writer.Write(appSource.Revision); } writer.WriteObjectEnd(); } } if (createAppRequest != null && createAppRequest.Domains != null && createAppRequest.Domains.Count > 0) { List <string> domainsList = createAppRequest.Domains; writer.WritePropertyName("Domains"); writer.WriteArrayStart(); foreach (string domainsListValue in domainsList) { writer.Write(StringUtils.FromString(domainsListValue)); } writer.WriteArrayEnd(); } if (createAppRequest != null && createAppRequest.IsSetEnableSsl()) { writer.WritePropertyName("EnableSsl"); writer.Write(createAppRequest.EnableSsl); } if (createAppRequest != null) { SslConfiguration sslConfiguration = createAppRequest.SslConfiguration; if (sslConfiguration != null) { writer.WritePropertyName("SslConfiguration"); writer.WriteObjectStart(); if (sslConfiguration != null && sslConfiguration.IsSetCertificate()) { writer.WritePropertyName("Certificate"); writer.Write(sslConfiguration.Certificate); } if (sslConfiguration != null && sslConfiguration.IsSetPrivateKey()) { writer.WritePropertyName("PrivateKey"); writer.Write(sslConfiguration.PrivateKey); } if (sslConfiguration != null && sslConfiguration.IsSetChain()) { writer.WritePropertyName("Chain"); writer.Write(sslConfiguration.Chain); } writer.WriteObjectEnd(); } } if (createAppRequest != null) { if (createAppRequest.Attributes != null && createAppRequest.Attributes.Count > 0) { writer.WritePropertyName("Attributes"); writer.WriteObjectStart(); foreach (string createAppRequestAttributesKey in createAppRequest.Attributes.Keys) { string attributesListValue; bool attributesListValueHasValue = createAppRequest.Attributes.TryGetValue(createAppRequestAttributesKey, out attributesListValue); writer.WritePropertyName(createAppRequestAttributesKey); writer.Write(attributesListValue); } writer.WriteObjectEnd(); } } writer.WriteObjectEnd(); string snippet = stringWriter.ToString(); request.Content = System.Text.Encoding.UTF8.GetBytes(snippet); } return(request); }
public IRequest Marshall(UpdateAppRequest updateAppRequest) { IRequest request = new DefaultRequest(updateAppRequest, "AmazonOpsWorks"); string target = "OpsWorks_20130218.UpdateApp"; request.Headers["X-Amz-Target"] = target; request.Headers["Content-Type"] = "application/x-amz-json-1.1"; string uriResourcePath = ""; if (uriResourcePath.Contains("?")) { int queryPosition = uriResourcePath.IndexOf("?", StringComparison.OrdinalIgnoreCase); string queryString = uriResourcePath.Substring(queryPosition + 1); uriResourcePath = uriResourcePath.Substring(0, queryPosition); foreach (string s in queryString.Split('&', ';')) { string[] nameValuePair = s.Split('='); if (nameValuePair.Length == 2 && nameValuePair[1].Length > 0) { request.Parameters.Add(nameValuePair[0], nameValuePair[1]); } else { request.Parameters.Add(nameValuePair[0], null); } } } request.ResourcePath = uriResourcePath; using (StringWriter stringWriter = new StringWriter(CultureInfo.InvariantCulture)) { JsonWriter writer = new JsonWriter(stringWriter); writer.WriteObjectStart(); if (updateAppRequest != null && updateAppRequest.IsSetAppId()) { writer.WritePropertyName("AppId"); writer.Write(updateAppRequest.AppId); } if (updateAppRequest != null && updateAppRequest.IsSetName()) { writer.WritePropertyName("Name"); writer.Write(updateAppRequest.Name); } if (updateAppRequest != null && updateAppRequest.IsSetDescription()) { writer.WritePropertyName("Description"); writer.Write(updateAppRequest.Description); } if (updateAppRequest != null && updateAppRequest.IsSetType()) { writer.WritePropertyName("Type"); writer.Write(updateAppRequest.Type); } if (updateAppRequest != null) { Source appSource = updateAppRequest.AppSource; if (appSource != null) { writer.WritePropertyName("AppSource"); writer.WriteObjectStart(); if (appSource != null && appSource.IsSetType()) { writer.WritePropertyName("Type"); writer.Write(appSource.Type); } if (appSource != null && appSource.IsSetUrl()) { writer.WritePropertyName("Url"); writer.Write(appSource.Url); } if (appSource != null && appSource.IsSetUsername()) { writer.WritePropertyName("Username"); writer.Write(appSource.Username); } if (appSource != null && appSource.IsSetPassword()) { writer.WritePropertyName("Password"); writer.Write(appSource.Password); } if (appSource != null && appSource.IsSetSshKey()) { writer.WritePropertyName("SshKey"); writer.Write(appSource.SshKey); } if (appSource != null && appSource.IsSetRevision()) { writer.WritePropertyName("Revision"); writer.Write(appSource.Revision); } writer.WriteObjectEnd(); } } if (updateAppRequest != null && updateAppRequest.Domains != null && updateAppRequest.Domains.Count > 0) { List <string> domainsList = updateAppRequest.Domains; writer.WritePropertyName("Domains"); writer.WriteArrayStart(); foreach (string domainsListValue in domainsList) { writer.Write(StringUtils.FromString(domainsListValue)); } writer.WriteArrayEnd(); } if (updateAppRequest != null && updateAppRequest.IsSetEnableSsl()) { writer.WritePropertyName("EnableSsl"); writer.Write(updateAppRequest.EnableSsl); } if (updateAppRequest != null) { SslConfiguration sslConfiguration = updateAppRequest.SslConfiguration; if (sslConfiguration != null) { writer.WritePropertyName("SslConfiguration"); writer.WriteObjectStart(); if (sslConfiguration != null && sslConfiguration.IsSetCertificate()) { writer.WritePropertyName("Certificate"); writer.Write(sslConfiguration.Certificate); } if (sslConfiguration != null && sslConfiguration.IsSetPrivateKey()) { writer.WritePropertyName("PrivateKey"); writer.Write(sslConfiguration.PrivateKey); } if (sslConfiguration != null && sslConfiguration.IsSetChain()) { writer.WritePropertyName("Chain"); writer.Write(sslConfiguration.Chain); } writer.WriteObjectEnd(); } } if (updateAppRequest != null) { if (updateAppRequest.Attributes != null && updateAppRequest.Attributes.Count > 0) { writer.WritePropertyName("Attributes"); writer.WriteObjectStart(); foreach (string updateAppRequestAttributesKey in updateAppRequest.Attributes.Keys) { string attributesListValue; bool attributesListValueHasValue = updateAppRequest.Attributes.TryGetValue(updateAppRequestAttributesKey, out attributesListValue); writer.WritePropertyName(updateAppRequestAttributesKey); writer.Write(attributesListValue); } writer.WriteObjectEnd(); } } writer.WriteObjectEnd(); string snippet = stringWriter.ToString(); request.Content = System.Text.Encoding.UTF8.GetBytes(snippet); } return(request); }
//[Test] //[Ignore("Only for creating the certificate bytes from the file")] //public void CreateCertificate() //{ // // to recreate the cert, you want something like the following, run with root/admin level access (with common name = localhost): // // openssl req -newkey rsa:2048 -nodes -keyout localhost.key -x509 -days 3650 -out localhost.crt // // openssl pkcs12 -inkey localhost.key -in localhost.crt -export -out localhost.pfx // var path = @"C:\Code\KafkaClient\src\KafkaClient.Tests\localhost.pfx"; // var cert = new X509Certificate2(); // cert.Import(path, CertPassword, X509KeyStorageFlags.Exportable); // var buffer = new StringBuilder("private static readonly byte[] CertRawBytes = { "); // foreach (var b in cert.Export(X509ContentType.Pfx, CertPassword)) // { // buffer.AppendFormat("0x{0:X}, ", b); // } // buffer.Remove(buffer.Length - 2, 2); // buffer.Append(" };"); // Console.WriteLine(buffer.ToString()); //} protected override SslTransport CreateTransport(Endpoint endpoint, IConnectionConfiguration configuration, ILog log) { var sslConfiguration = new SslConfiguration((sender, certificate, chain, errors) => (errors | SslPolicyErrors.RemoteCertificateChainErrors) == SslPolicyErrors.RemoteCertificateChainErrors); return(new SslTransport(endpoint, configuration.CopyWith(sslConfiguration: sslConfiguration), log)); }