// #pragma warning disable CS0618 using Microsoft.Kiota.Abstractions.Extensions; using Microsoft.Kiota.Abstractions.Serialization; using System.Collections.Generic; using System.IO; using System; namespace Marechai.App.Models { [global::System.CodeDom.Compiler.GeneratedCode("Kiota", "1.0.0")] #pragma warning disable CS1591 public partial class ResolutionByGpuDto : IAdditionalDataHolder, IParsable #pragma warning restore CS1591 { /// Stores additional data not described in the OpenAPI description found when deserializing. Can be used for serialization as well. public IDictionary AdditionalData { get; set; } /// The gpu_id property public int? GpuId { get; set; } /// The id property public long? Id { get; set; } /// The resolution property #if NETSTANDARD2_1_OR_GREATER || NETCOREAPP3_1_OR_GREATER #nullable enable public global::Marechai.App.Models.ResolutionByGpuDto.ResolutionByGpuDto_resolution? Resolution { get; set; } #nullable restore #else public global::Marechai.App.Models.ResolutionByGpuDto.ResolutionByGpuDto_resolution Resolution { get; set; } #endif /// The resolution_id property public int? ResolutionId { get; set; } /// /// Instantiates a new and sets the default values. /// public ResolutionByGpuDto() { AdditionalData = new Dictionary(); } /// /// Creates a new instance of the appropriate class based on discriminator value /// /// A /// The parse node to use to read the discriminator value and create the object public static global::Marechai.App.Models.ResolutionByGpuDto CreateFromDiscriminatorValue(IParseNode parseNode) { if(ReferenceEquals(parseNode, null)) throw new ArgumentNullException(nameof(parseNode)); return new global::Marechai.App.Models.ResolutionByGpuDto(); } /// /// The deserialization information for the current model /// /// A IDictionary<string, Action<IParseNode>> public virtual IDictionary> GetFieldDeserializers() { return new Dictionary> { { "gpu_id", n => { GpuId = n.GetIntValue(); } }, { "id", n => { Id = n.GetLongValue(); } }, { "resolution", n => { Resolution = n.GetObjectValue(global::Marechai.App.Models.ResolutionByGpuDto.ResolutionByGpuDto_resolution.CreateFromDiscriminatorValue); } }, { "resolution_id", n => { ResolutionId = n.GetIntValue(); } }, }; } /// /// Serializes information the current object /// /// Serialization writer to use to serialize this model public virtual void Serialize(ISerializationWriter writer) { if(ReferenceEquals(writer, null)) throw new ArgumentNullException(nameof(writer)); writer.WriteIntValue("gpu_id", GpuId); writer.WriteLongValue("id", Id); writer.WriteObjectValue("resolution", Resolution); writer.WriteIntValue("resolution_id", ResolutionId); writer.WriteAdditionalData(AdditionalData); } /// /// Composed type wrapper for classes , /// [global::System.CodeDom.Compiler.GeneratedCode("Kiota", "1.0.0")] public partial class ResolutionByGpuDto_resolution : IComposedTypeWrapper, IParsable { /// Composed type representation for type #if NETSTANDARD2_1_OR_GREATER || NETCOREAPP3_1_OR_GREATER #nullable enable public global::Marechai.App.Models.ResolutionByGpuDto_resolutionMember1? ResolutionByGpuDtoResolutionMember1 { get; set; } #nullable restore #else public global::Marechai.App.Models.ResolutionByGpuDto_resolutionMember1 ResolutionByGpuDtoResolutionMember1 { get; set; } #endif /// Composed type representation for type #if NETSTANDARD2_1_OR_GREATER || NETCOREAPP3_1_OR_GREATER #nullable enable public global::Marechai.App.Models.ResolutionDto? ResolutionDto { get; set; } #nullable restore #else public global::Marechai.App.Models.ResolutionDto ResolutionDto { get; set; } #endif /// /// Creates a new instance of the appropriate class based on discriminator value /// /// A /// The parse node to use to read the discriminator value and create the object public static global::Marechai.App.Models.ResolutionByGpuDto.ResolutionByGpuDto_resolution CreateFromDiscriminatorValue(IParseNode parseNode) { if(ReferenceEquals(parseNode, null)) throw new ArgumentNullException(nameof(parseNode)); var mappingValue = parseNode.GetChildNode("")?.GetStringValue(); var result = new global::Marechai.App.Models.ResolutionByGpuDto.ResolutionByGpuDto_resolution(); if("".Equals(mappingValue, StringComparison.OrdinalIgnoreCase)) { result.ResolutionByGpuDtoResolutionMember1 = new global::Marechai.App.Models.ResolutionByGpuDto_resolutionMember1(); } else if("ResolutionDto".Equals(mappingValue, StringComparison.OrdinalIgnoreCase)) { result.ResolutionDto = new global::Marechai.App.Models.ResolutionDto(); } return result; } /// /// The deserialization information for the current model /// /// A IDictionary<string, Action<IParseNode>> public virtual IDictionary> GetFieldDeserializers() { if(ResolutionByGpuDtoResolutionMember1 != null) { return ResolutionByGpuDtoResolutionMember1.GetFieldDeserializers(); } else if(ResolutionDto != null) { return ResolutionDto.GetFieldDeserializers(); } return new Dictionary>(); } /// /// Serializes information the current object /// /// Serialization writer to use to serialize this model public virtual void Serialize(ISerializationWriter writer) { if(ReferenceEquals(writer, null)) throw new ArgumentNullException(nameof(writer)); if(ResolutionByGpuDtoResolutionMember1 != null) { writer.WriteObjectValue(null, ResolutionByGpuDtoResolutionMember1); } else if(ResolutionDto != null) { writer.WriteObjectValue(null, ResolutionDto); } } } } } #pragma warning restore CS0618