Ejemplo n.º 1
0
 void IUtf8JsonSerializable.Write(Utf8JsonWriter writer)
 {
     writer.WriteStartObject();
     writer.WritePropertyName("secretsType");
     writer.WriteStringValue(SecretsType.ToString());
     writer.WriteEndObject();
 }
Ejemplo n.º 2
0
        internal static CertificateDatastoreSecrets DeserializeCertificateDatastoreSecrets(JsonElement element)
        {
            Optional <string> certificate = default;
            SecretsType       secretsType = default;

            foreach (var property in element.EnumerateObject())
            {
                if (property.NameEquals("certificate"))
                {
                    if (property.Value.ValueKind == JsonValueKind.Null)
                    {
                        certificate = null;
                        continue;
                    }
                    certificate = property.Value.GetString();
                    continue;
                }
                if (property.NameEquals("secretsType"))
                {
                    secretsType = new SecretsType(property.Value.GetString());
                    continue;
                }
            }
            return(new CertificateDatastoreSecrets(secretsType, certificate.Value));
        }
Ejemplo n.º 3
0
        internal static DatastoreSecrets DeserializeDatastoreSecrets(JsonElement element)
        {
            if (element.TryGetProperty("secretsType", out JsonElement discriminator))
            {
                switch (discriminator.GetString())
                {
                case "Certificate": return(CertificateDatastoreSecrets.DeserializeCertificateDatastoreSecrets(element));

                case "KerberosKeytab": return(KerberosKeytabSecrets.DeserializeKerberosKeytabSecrets(element));

                case "KerberosPassword": return(KerberosPasswordSecrets.DeserializeKerberosPasswordSecrets(element));

                case "Sas": return(SasDatastoreSecrets.DeserializeSasDatastoreSecrets(element));

                case "ServicePrincipal": return(ServicePrincipalDatastoreSecrets.DeserializeServicePrincipalDatastoreSecrets(element));

                case "AccountKey": return(AccountKeyDatastoreSecrets.DeserializeAccountKeyDatastoreSecrets(element));
                }
            }
            SecretsType secretsType = default;

            foreach (var property in element.EnumerateObject())
            {
                if (property.NameEquals("secretsType"))
                {
                    secretsType = new SecretsType(property.Value.GetString());
                    continue;
                }
            }
            return(new DatastoreSecrets(secretsType));
        }
Ejemplo n.º 4
0
        internal static ServicePrincipalDatastoreSecrets DeserializeServicePrincipalDatastoreSecrets(JsonElement element)
        {
            Optional <string> clientSecret = default;
            SecretsType       secretsType  = default;

            foreach (var property in element.EnumerateObject())
            {
                if (property.NameEquals("clientSecret"))
                {
                    if (property.Value.ValueKind == JsonValueKind.Null)
                    {
                        clientSecret = null;
                        continue;
                    }
                    clientSecret = property.Value.GetString();
                    continue;
                }
                if (property.NameEquals("secretsType"))
                {
                    secretsType = new SecretsType(property.Value.GetString());
                    continue;
                }
            }
            return(new ServicePrincipalDatastoreSecrets(secretsType, clientSecret.Value));
        }
Ejemplo n.º 5
0
        internal static KerberosKeytabSecrets DeserializeKerberosKeytabSecrets(JsonElement element)
        {
            Optional <string> kerberosKeytab = default;
            SecretsType       secretsType    = default;

            foreach (var property in element.EnumerateObject())
            {
                if (property.NameEquals("kerberosKeytab"))
                {
                    if (property.Value.ValueKind == JsonValueKind.Null)
                    {
                        kerberosKeytab = null;
                        continue;
                    }
                    kerberosKeytab = property.Value.GetString();
                    continue;
                }
                if (property.NameEquals("secretsType"))
                {
                    secretsType = new SecretsType(property.Value.GetString());
                    continue;
                }
            }
            return(new KerberosKeytabSecrets(secretsType, kerberosKeytab.Value));
        }
Ejemplo n.º 6
0
        internal static AccountKeyDatastoreSecrets DeserializeAccountKeyDatastoreSecrets(JsonElement element)
        {
            Optional <string> key         = default;
            SecretsType       secretsType = default;

            foreach (var property in element.EnumerateObject())
            {
                if (property.NameEquals("key"))
                {
                    if (property.Value.ValueKind == JsonValueKind.Null)
                    {
                        key = null;
                        continue;
                    }
                    key = property.Value.GetString();
                    continue;
                }
                if (property.NameEquals("secretsType"))
                {
                    secretsType = new SecretsType(property.Value.GetString());
                    continue;
                }
            }
            return(new AccountKeyDatastoreSecrets(secretsType, key.Value));
        }
Ejemplo n.º 7
0
        internal static SasDatastoreSecrets DeserializeSasDatastoreSecrets(JsonElement element)
        {
            Optional <string> sasToken    = default;
            SecretsType       secretsType = default;

            foreach (var property in element.EnumerateObject())
            {
                if (property.NameEquals("sasToken"))
                {
                    if (property.Value.ValueKind == JsonValueKind.Null)
                    {
                        sasToken = null;
                        continue;
                    }
                    sasToken = property.Value.GetString();
                    continue;
                }
                if (property.NameEquals("secretsType"))
                {
                    secretsType = new SecretsType(property.Value.GetString());
                    continue;
                }
            }
            return(new SasDatastoreSecrets(secretsType, sasToken.Value));
        }
Ejemplo n.º 8
0
 void IUtf8JsonSerializable.Write(Utf8JsonWriter writer)
 {
     writer.WriteStartObject();
     if (Optional.IsDefined(Certificate))
     {
         if (Certificate != null)
         {
             writer.WritePropertyName("certificate");
             writer.WriteStringValue(Certificate);
         }
         else
         {
             writer.WriteNull("certificate");
         }
     }
     writer.WritePropertyName("secretsType");
     writer.WriteStringValue(SecretsType.ToString());
     writer.WriteEndObject();
 }
Ejemplo n.º 9
0
 void IUtf8JsonSerializable.Write(Utf8JsonWriter writer)
 {
     writer.WriteStartObject();
     if (Optional.IsDefined(KerberosKeytab))
     {
         if (KerberosKeytab != null)
         {
             writer.WritePropertyName("kerberosKeytab");
             writer.WriteStringValue(KerberosKeytab);
         }
         else
         {
             writer.WriteNull("kerberosKeytab");
         }
     }
     writer.WritePropertyName("secretsType");
     writer.WriteStringValue(SecretsType.ToString());
     writer.WriteEndObject();
 }