// #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 ResolutionByScreenDto : 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 id property #if NETSTANDARD2_1_OR_GREATER || NETCOREAPP3_1_OR_GREATER #nullable enable public UntypedNode? Id { get; set; } #nullable restore #else public UntypedNode Id { get; set; } #endif /// The resolution property #if NETSTANDARD2_1_OR_GREATER || NETCOREAPP3_1_OR_GREATER #nullable enable public global::Marechai.App.Models.ResolutionByScreenDto.ResolutionByScreenDto_resolution? Resolution { get; set; } #nullable restore #else public global::Marechai.App.Models.ResolutionByScreenDto.ResolutionByScreenDto_resolution Resolution { get; set; } #endif /// The resolution_id property #if NETSTANDARD2_1_OR_GREATER || NETCOREAPP3_1_OR_GREATER #nullable enable public UntypedNode? ResolutionId { get; set; } #nullable restore #else public UntypedNode ResolutionId { get; set; } #endif /// The screen_id property #if NETSTANDARD2_1_OR_GREATER || NETCOREAPP3_1_OR_GREATER #nullable enable public UntypedNode? ScreenId { get; set; } #nullable restore #else public UntypedNode ScreenId { get; set; } #endif /// /// Instantiates a new and sets the default values. /// public ResolutionByScreenDto() { 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.ResolutionByScreenDto CreateFromDiscriminatorValue(IParseNode parseNode) { if(ReferenceEquals(parseNode, null)) throw new ArgumentNullException(nameof(parseNode)); return new global::Marechai.App.Models.ResolutionByScreenDto(); } /// /// The deserialization information for the current model /// /// A IDictionary<string, Action<IParseNode>> public virtual IDictionary> GetFieldDeserializers() { return new Dictionary> { { "id", n => { Id = n.GetObjectValue(UntypedNode.CreateFromDiscriminatorValue); } }, { "resolution", n => { Resolution = n.GetObjectValue(global::Marechai.App.Models.ResolutionByScreenDto.ResolutionByScreenDto_resolution.CreateFromDiscriminatorValue); } }, { "resolution_id", n => { ResolutionId = n.GetObjectValue(UntypedNode.CreateFromDiscriminatorValue); } }, { "screen_id", n => { ScreenId = n.GetObjectValue(UntypedNode.CreateFromDiscriminatorValue); } }, }; } /// /// 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.WriteObjectValue("id", Id); writer.WriteObjectValue("resolution", Resolution); writer.WriteObjectValue("resolution_id", ResolutionId); writer.WriteObjectValue("screen_id", ScreenId); writer.WriteAdditionalData(AdditionalData); } /// /// Composed type wrapper for classes , /// [global::System.CodeDom.Compiler.GeneratedCode("Kiota", "1.0.0")] public partial class ResolutionByScreenDto_resolution : IComposedTypeWrapper, IParsable { /// Composed type representation for type #if NETSTANDARD2_1_OR_GREATER || NETCOREAPP3_1_OR_GREATER #nullable enable public global::Marechai.App.Models.ResolutionByScreenDto_resolutionMember1? ResolutionByScreenDtoResolutionMember1 { get; set; } #nullable restore #else public global::Marechai.App.Models.ResolutionByScreenDto_resolutionMember1 ResolutionByScreenDtoResolutionMember1 { 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.ResolutionByScreenDto.ResolutionByScreenDto_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.ResolutionByScreenDto.ResolutionByScreenDto_resolution(); if("".Equals(mappingValue, StringComparison.OrdinalIgnoreCase)) { result.ResolutionByScreenDtoResolutionMember1 = new global::Marechai.App.Models.ResolutionByScreenDto_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(ResolutionByScreenDtoResolutionMember1 != null) { return ResolutionByScreenDtoResolutionMember1.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(ResolutionByScreenDtoResolutionMember1 != null) { writer.WriteObjectValue(null, ResolutionByScreenDtoResolutionMember1); } else if(ResolutionDto != null) { writer.WriteObjectValue(null, ResolutionDto); } } } } } #pragma warning restore CS0618