2025-11-14 13:33:27 +00:00
// <auto-generated/>
#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 MachineDto : IAdditionalDataHolder , IParsable
#pragma warning restore CS1591
{
/// <summary>Stores additional data not described in the OpenAPI description found when deserializing. Can be used for serialization as well.</summary>
public IDictionary < string , object > AdditionalData { get ; set ; }
/// <summary>The company property</summary>
#if NETSTANDARD2_1_OR_GREATER | | NETCOREAPP3_1_OR_GREATER
#nullable enable
public string? Company { get ; set ; }
#nullable restore
#else
public string Company { get ; set ; }
#endif
/// <summary>The company_id property</summary>
#if NETSTANDARD2_1_OR_GREATER | | NETCOREAPP3_1_OR_GREATER
#nullable enable
public UntypedNode ? CompanyId { get ; set ; }
#nullable restore
#else
public UntypedNode CompanyId { get ; set ; }
#endif
/// <summary>The company_logo property</summary>
public Guid ? CompanyLogo { get ; set ; }
/// <summary>The family property</summary>
#if NETSTANDARD2_1_OR_GREATER | | NETCOREAPP3_1_OR_GREATER
#nullable enable
public string? Family { get ; set ; }
#nullable restore
#else
public string Family { get ; set ; }
#endif
/// <summary>The family_id property</summary>
#if NETSTANDARD2_1_OR_GREATER | | NETCOREAPP3_1_OR_GREATER
#nullable enable
public UntypedNode ? FamilyId { get ; set ; }
#nullable restore
#else
public UntypedNode FamilyId { get ; set ; }
#endif
/// <summary>The family_name property</summary>
#if NETSTANDARD2_1_OR_GREATER | | NETCOREAPP3_1_OR_GREATER
#nullable enable
public string? FamilyName { get ; set ; }
#nullable restore
#else
public string FamilyName { get ; set ; }
2025-11-15 02:38:47 +00:00
#endif
/// <summary>The gpus property</summary>
#if NETSTANDARD2_1_OR_GREATER | | NETCOREAPP3_1_OR_GREATER
#nullable enable
public List < global :: Marechai . App . Models . GpuDto > ? Gpus { get ; set ; }
#nullable restore
#else
public List < global :: Marechai . App . Models . GpuDto > Gpus { get ; set ; }
2025-11-14 13:33:27 +00:00
#endif
/// <summary>The id property</summary>
#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
/// <summary>The introduced property</summary>
public DateTimeOffset ? Introduced { get ; set ; }
2025-11-15 02:38:47 +00:00
/// <summary>The memory property</summary>
#if NETSTANDARD2_1_OR_GREATER | | NETCOREAPP3_1_OR_GREATER
#nullable enable
public List < global :: Marechai . App . Models . MemoryDto > ? Memory { get ; set ; }
#nullable restore
#else
public List < global :: Marechai . App . Models . MemoryDto > Memory { get ; set ; }
#endif
2025-11-14 13:33:27 +00:00
/// <summary>The model property</summary>
#if NETSTANDARD2_1_OR_GREATER | | NETCOREAPP3_1_OR_GREATER
#nullable enable
public string? Model { get ; set ; }
#nullable restore
#else
public string Model { get ; set ; }
#endif
/// <summary>The name property</summary>
#if NETSTANDARD2_1_OR_GREATER | | NETCOREAPP3_1_OR_GREATER
#nullable enable
public string? Name { get ; set ; }
#nullable restore
#else
public string Name { get ; set ; }
2025-11-15 02:38:47 +00:00
#endif
/// <summary>The processors property</summary>
#if NETSTANDARD2_1_OR_GREATER | | NETCOREAPP3_1_OR_GREATER
#nullable enable
public List < global :: Marechai . App . Models . ProcessorDto > ? Processors { get ; set ; }
#nullable restore
#else
public List < global :: Marechai . App . Models . ProcessorDto > Processors { get ; set ; }
#endif
/// <summary>The soundSynthesizers property</summary>
#if NETSTANDARD2_1_OR_GREATER | | NETCOREAPP3_1_OR_GREATER
#nullable enable
public List < global :: Marechai . App . Models . SoundSynthDto > ? SoundSynthesizers { get ; set ; }
#nullable restore
#else
public List < global :: Marechai . App . Models . SoundSynthDto > SoundSynthesizers { get ; set ; }
#endif
/// <summary>The storage property</summary>
#if NETSTANDARD2_1_OR_GREATER | | NETCOREAPP3_1_OR_GREATER
#nullable enable
public List < global :: Marechai . App . Models . StorageDto > ? Storage { get ; set ; }
#nullable restore
#else
public List < global :: Marechai . App . Models . StorageDto > Storage { get ; set ; }
2025-11-14 13:33:27 +00:00
#endif
/// <summary>The type property</summary>
public int? Type { get ; set ; }
/// <summary>
/// Instantiates a new <see cref="global::Marechai.App.Models.MachineDto"/> and sets the default values.
/// </summary>
public MachineDto ( )
{
AdditionalData = new Dictionary < string , object > ( ) ;
}
/// <summary>
/// Creates a new instance of the appropriate class based on discriminator value
/// </summary>
/// <returns>A <see cref="global::Marechai.App.Models.MachineDto"/></returns>
/// <param name="parseNode">The parse node to use to read the discriminator value and create the object</param>
public static global :: Marechai . App . Models . MachineDto CreateFromDiscriminatorValue ( IParseNode parseNode )
{
if ( ReferenceEquals ( parseNode , null ) ) throw new ArgumentNullException ( nameof ( parseNode ) ) ;
return new global :: Marechai . App . Models . MachineDto ( ) ;
}
/// <summary>
/// The deserialization information for the current model
/// </summary>
/// <returns>A IDictionary<string, Action<IParseNode>></returns>
public virtual IDictionary < string , Action < IParseNode > > GetFieldDeserializers ( )
{
return new Dictionary < string , Action < IParseNode > >
{
{ "company" , n = > { Company = n . GetStringValue ( ) ; } } ,
{ "company_id" , n = > { CompanyId = n . GetObjectValue < UntypedNode > ( UntypedNode . CreateFromDiscriminatorValue ) ; } } ,
{ "company_logo" , n = > { CompanyLogo = n . GetGuidValue ( ) ; } } ,
{ "family" , n = > { Family = n . GetStringValue ( ) ; } } ,
{ "family_id" , n = > { FamilyId = n . GetObjectValue < UntypedNode > ( UntypedNode . CreateFromDiscriminatorValue ) ; } } ,
{ "family_name" , n = > { FamilyName = n . GetStringValue ( ) ; } } ,
2025-11-15 02:38:47 +00:00
{ "gpus" , n = > { Gpus = n . GetCollectionOfObjectValues < global :: Marechai . App . Models . GpuDto > ( global :: Marechai . App . Models . GpuDto . CreateFromDiscriminatorValue ) ? . AsList ( ) ; } } ,
2025-11-14 13:33:27 +00:00
{ "id" , n = > { Id = n . GetObjectValue < UntypedNode > ( UntypedNode . CreateFromDiscriminatorValue ) ; } } ,
{ "introduced" , n = > { Introduced = n . GetDateTimeOffsetValue ( ) ; } } ,
2025-11-15 02:38:47 +00:00
{ "memory" , n = > { Memory = n . GetCollectionOfObjectValues < global :: Marechai . App . Models . MemoryDto > ( global :: Marechai . App . Models . MemoryDto . CreateFromDiscriminatorValue ) ? . AsList ( ) ; } } ,
2025-11-14 13:33:27 +00:00
{ "model" , n = > { Model = n . GetStringValue ( ) ; } } ,
{ "name" , n = > { Name = n . GetStringValue ( ) ; } } ,
2025-11-15 02:38:47 +00:00
{ "processors" , n = > { Processors = n . GetCollectionOfObjectValues < global :: Marechai . App . Models . ProcessorDto > ( global :: Marechai . App . Models . ProcessorDto . CreateFromDiscriminatorValue ) ? . AsList ( ) ; } } ,
{ "soundSynthesizers" , n = > { SoundSynthesizers = n . GetCollectionOfObjectValues < global :: Marechai . App . Models . SoundSynthDto > ( global :: Marechai . App . Models . SoundSynthDto . CreateFromDiscriminatorValue ) ? . AsList ( ) ; } } ,
{ "storage" , n = > { Storage = n . GetCollectionOfObjectValues < global :: Marechai . App . Models . StorageDto > ( global :: Marechai . App . Models . StorageDto . CreateFromDiscriminatorValue ) ? . AsList ( ) ; } } ,
2025-11-14 13:33:27 +00:00
{ "type" , n = > { Type = n . GetIntValue ( ) ; } } ,
} ;
}
/// <summary>
/// Serializes information the current object
/// </summary>
/// <param name="writer">Serialization writer to use to serialize this model</param>
public virtual void Serialize ( ISerializationWriter writer )
{
if ( ReferenceEquals ( writer , null ) ) throw new ArgumentNullException ( nameof ( writer ) ) ;
writer . WriteStringValue ( "company" , Company ) ;
writer . WriteObjectValue < UntypedNode > ( "company_id" , CompanyId ) ;
writer . WriteGuidValue ( "company_logo" , CompanyLogo ) ;
writer . WriteStringValue ( "family" , Family ) ;
writer . WriteObjectValue < UntypedNode > ( "family_id" , FamilyId ) ;
writer . WriteStringValue ( "family_name" , FamilyName ) ;
2025-11-15 02:38:47 +00:00
writer . WriteCollectionOfObjectValues < global :: Marechai . App . Models . GpuDto > ( "gpus" , Gpus ) ;
2025-11-14 13:33:27 +00:00
writer . WriteObjectValue < UntypedNode > ( "id" , Id ) ;
writer . WriteDateTimeOffsetValue ( "introduced" , Introduced ) ;
2025-11-15 02:38:47 +00:00
writer . WriteCollectionOfObjectValues < global :: Marechai . App . Models . MemoryDto > ( "memory" , Memory ) ;
2025-11-14 13:33:27 +00:00
writer . WriteStringValue ( "model" , Model ) ;
writer . WriteStringValue ( "name" , Name ) ;
2025-11-15 02:38:47 +00:00
writer . WriteCollectionOfObjectValues < global :: Marechai . App . Models . ProcessorDto > ( "processors" , Processors ) ;
writer . WriteCollectionOfObjectValues < global :: Marechai . App . Models . SoundSynthDto > ( "soundSynthesizers" , SoundSynthesizers ) ;
writer . WriteCollectionOfObjectValues < global :: Marechai . App . Models . StorageDto > ( "storage" , Storage ) ;
2025-11-14 13:33:27 +00:00
writer . WriteIntValue ( "type" , Type ) ;
writer . WriteAdditionalData ( AdditionalData ) ;
}
}
}
#pragma warning restore CS0618