// #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 ScreenByMachineDto : 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 public long? Id { get; set; } /// The machine_id property public int? MachineId { get; set; } /// The screen property #if NETSTANDARD2_1_OR_GREATER || NETCOREAPP3_1_OR_GREATER #nullable enable public global::Marechai.App.Models.ScreenByMachineDto.ScreenByMachineDto_screen? Screen { get; set; } #nullable restore #else public global::Marechai.App.Models.ScreenByMachineDto.ScreenByMachineDto_screen Screen { get; set; } #endif /// The screen_id property public int? ScreenId { get; set; } /// /// Instantiates a new and sets the default values. /// public ScreenByMachineDto() { 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.ScreenByMachineDto CreateFromDiscriminatorValue(IParseNode parseNode) { if(ReferenceEquals(parseNode, null)) throw new ArgumentNullException(nameof(parseNode)); return new global::Marechai.App.Models.ScreenByMachineDto(); } /// /// The deserialization information for the current model /// /// A IDictionary<string, Action<IParseNode>> public virtual IDictionary> GetFieldDeserializers() { return new Dictionary> { { "id", n => { Id = n.GetLongValue(); } }, { "machine_id", n => { MachineId = n.GetIntValue(); } }, { "screen", n => { Screen = n.GetObjectValue(global::Marechai.App.Models.ScreenByMachineDto.ScreenByMachineDto_screen.CreateFromDiscriminatorValue); } }, { "screen_id", n => { ScreenId = 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.WriteLongValue("id", Id); writer.WriteIntValue("machine_id", MachineId); writer.WriteObjectValue("screen", Screen); writer.WriteIntValue("screen_id", ScreenId); writer.WriteAdditionalData(AdditionalData); } /// /// Composed type wrapper for classes , /// [global::System.CodeDom.Compiler.GeneratedCode("Kiota", "1.0.0")] public partial class ScreenByMachineDto_screen : IComposedTypeWrapper, IParsable { /// Composed type representation for type #if NETSTANDARD2_1_OR_GREATER || NETCOREAPP3_1_OR_GREATER #nullable enable public global::Marechai.App.Models.ScreenByMachineDto_screenMember1? ScreenByMachineDtoScreenMember1 { get; set; } #nullable restore #else public global::Marechai.App.Models.ScreenByMachineDto_screenMember1 ScreenByMachineDtoScreenMember1 { get; set; } #endif /// Composed type representation for type #if NETSTANDARD2_1_OR_GREATER || NETCOREAPP3_1_OR_GREATER #nullable enable public global::Marechai.App.Models.ScreenDto? ScreenDto { get; set; } #nullable restore #else public global::Marechai.App.Models.ScreenDto ScreenDto { 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.ScreenByMachineDto.ScreenByMachineDto_screen CreateFromDiscriminatorValue(IParseNode parseNode) { if(ReferenceEquals(parseNode, null)) throw new ArgumentNullException(nameof(parseNode)); var mappingValue = parseNode.GetChildNode("")?.GetStringValue(); var result = new global::Marechai.App.Models.ScreenByMachineDto.ScreenByMachineDto_screen(); if("".Equals(mappingValue, StringComparison.OrdinalIgnoreCase)) { result.ScreenByMachineDtoScreenMember1 = new global::Marechai.App.Models.ScreenByMachineDto_screenMember1(); } else if("ScreenDto".Equals(mappingValue, StringComparison.OrdinalIgnoreCase)) { result.ScreenDto = new global::Marechai.App.Models.ScreenDto(); } return result; } /// /// The deserialization information for the current model /// /// A IDictionary<string, Action<IParseNode>> public virtual IDictionary> GetFieldDeserializers() { if(ScreenByMachineDtoScreenMember1 != null) { return ScreenByMachineDtoScreenMember1.GetFieldDeserializers(); } else if(ScreenDto != null) { return ScreenDto.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(ScreenByMachineDtoScreenMember1 != null) { writer.WriteObjectValue(null, ScreenByMachineDtoScreenMember1); } else if(ScreenDto != null) { writer.WriteObjectValue(null, ScreenDto); } } } } } #pragma warning restore CS0618