in sdk/sqlmanagement/Azure.ResourceManager.Sql/src/Custom/Models/ElasticPoolDatabaseActivity.Serialization.cs [134:338]
internal static ElasticPoolDatabaseActivity DeserializeElasticPoolDatabaseActivity(JsonElement element, ModelReaderWriterOptions options = null)
{
options ??= ModelSerializationExtensions.WireOptions;
if (element.ValueKind == JsonValueKind.Null)
{
return null;
}
AzureLocation? location = default;
ResourceIdentifier id = default;
string name = default;
ResourceType type = default;
ResourceManager.Models.SystemData systemData = default;
string databaseName = default;
DateTimeOffset? endTime = default;
int? errorCode = default;
string errorMessage = default;
int? errorSeverity = default;
string operation = default;
Guid? operationId = default;
int? percentComplete = default;
string requestedElasticPoolName = default;
string currentElasticPoolName = default;
string currentServiceObjective = default;
string requestedServiceObjective = default;
string serverName = default;
DateTimeOffset? startTime = default;
string state = default;
IDictionary<string, BinaryData> serializedAdditionalRawData = default;
Dictionary<string, BinaryData> rawDataDictionary = new Dictionary<string, BinaryData>();
foreach (var property in element.EnumerateObject())
{
if (property.NameEquals("location"u8))
{
if (property.Value.ValueKind == JsonValueKind.Null)
{
continue;
}
location = new AzureLocation(property.Value.GetString());
continue;
}
if (property.NameEquals("id"u8))
{
id = new ResourceIdentifier(property.Value.GetString());
continue;
}
if (property.NameEquals("name"u8))
{
name = property.Value.GetString();
continue;
}
if (property.NameEquals("type"u8))
{
type = new ResourceType(property.Value.GetString());
continue;
}
if (property.NameEquals("systemData"u8))
{
if (property.Value.ValueKind == JsonValueKind.Null)
{
continue;
}
systemData = JsonSerializer.Deserialize<ResourceManager.Models.SystemData>(property.Value.GetRawText());
continue;
}
if (property.NameEquals("properties"u8))
{
if (property.Value.ValueKind == JsonValueKind.Null)
{
property.ThrowNonNullablePropertyIsNull();
continue;
}
foreach (var property0 in property.Value.EnumerateObject())
{
if (property0.NameEquals("databaseName"u8))
{
databaseName = property0.Value.GetString();
continue;
}
if (property0.NameEquals("endTime"u8))
{
if (property0.Value.ValueKind == JsonValueKind.Null)
{
continue;
}
endTime = property0.Value.GetDateTimeOffset("O");
continue;
}
if (property0.NameEquals("errorCode"u8))
{
if (property0.Value.ValueKind == JsonValueKind.Null)
{
continue;
}
errorCode = property0.Value.GetInt32();
continue;
}
if (property0.NameEquals("errorMessage"u8))
{
errorMessage = property0.Value.GetString();
continue;
}
if (property0.NameEquals("errorSeverity"u8))
{
if (property0.Value.ValueKind == JsonValueKind.Null)
{
continue;
}
errorSeverity = property0.Value.GetInt32();
continue;
}
if (property0.NameEquals("operation"u8))
{
operation = property0.Value.GetString();
continue;
}
if (property0.NameEquals("operationId"u8))
{
if (property0.Value.ValueKind == JsonValueKind.Null)
{
continue;
}
operationId = property0.Value.GetGuid();
continue;
}
if (property0.NameEquals("percentComplete"u8))
{
if (property0.Value.ValueKind == JsonValueKind.Null)
{
continue;
}
percentComplete = property0.Value.GetInt32();
continue;
}
if (property0.NameEquals("requestedElasticPoolName"u8))
{
requestedElasticPoolName = property0.Value.GetString();
continue;
}
if (property0.NameEquals("currentElasticPoolName"u8))
{
currentElasticPoolName = property0.Value.GetString();
continue;
}
if (property0.NameEquals("currentServiceObjective"u8))
{
currentServiceObjective = property0.Value.GetString();
continue;
}
if (property0.NameEquals("requestedServiceObjective"u8))
{
requestedServiceObjective = property0.Value.GetString();
continue;
}
if (property0.NameEquals("serverName"u8))
{
serverName = property0.Value.GetString();
continue;
}
if (property0.NameEquals("startTime"u8))
{
if (property0.Value.ValueKind == JsonValueKind.Null)
{
continue;
}
startTime = property0.Value.GetDateTimeOffset("O");
continue;
}
if (property0.NameEquals("state"u8))
{
state = property0.Value.GetString();
continue;
}
}
continue;
}
if (options.Format != "W")
{
rawDataDictionary.Add(property.Name, BinaryData.FromString(property.Value.GetRawText()));
}
}
serializedAdditionalRawData = rawDataDictionary;
return new ElasticPoolDatabaseActivity(
id,
name,
type,
systemData,
location,
databaseName,
endTime,
errorCode,
errorMessage,
errorSeverity,
operation,
operationId,
percentComplete,
requestedElasticPoolName,
currentElasticPoolName,
currentServiceObjective,
requestedServiceObjective,
serverName,
startTime,
state,
serializedAdditionalRawData);
}