# NOTE: This file is auto generated by OpenAPI Generator 6.2.0 (https://openapi-generator.tech).
# Do not edit this file manually.
defmodule NomadClient.Model.Node do
@moduledoc """
"""
@derive [Poison.Encoder]
defstruct [
:Attributes,
:CSIControllerPlugins,
:CSINodePlugins,
:CgroupParent,
:CreateIndex,
:Datacenter,
:Drain,
:DrainStrategy,
:Drivers,
:Events,
:HTTPAddr,
:HostNetworks,
:HostVolumes,
:ID,
:LastDrain,
:Links,
:Meta,
:ModifyIndex,
:Name,
:NodeClass,
:NodeResources,
:Reserved,
:ReservedResources,
:Resources,
:SchedulingEligibility,
:Status,
:StatusDescription,
:StatusUpdatedAt,
:TLSEnabled
]
@type t :: %__MODULE__{
:Attributes => %{optional(String.t()) => String.t()} | nil,
:CSIControllerPlugins => %{optional(String.t()) => NomadClient.Model.CsiInfo.t()} | nil,
:CSINodePlugins => %{optional(String.t()) => NomadClient.Model.CsiInfo.t()} | nil,
:CgroupParent => String.t() | nil,
:CreateIndex => integer() | nil,
:Datacenter => String.t() | nil,
:Drain => boolean() | nil,
:DrainStrategy => NomadClient.Model.DrainStrategy.t() | nil,
:Drivers => %{optional(String.t()) => NomadClient.Model.DriverInfo.t()} | nil,
:Events => [NomadClient.Model.NodeEvent.t()] | nil,
:HTTPAddr => String.t() | nil,
:HostNetworks => %{optional(String.t()) => NomadClient.Model.HostNetworkInfo.t()} | nil,
:HostVolumes => %{optional(String.t()) => NomadClient.Model.HostVolumeInfo.t()} | nil,
:ID => String.t() | nil,
:LastDrain => NomadClient.Model.DrainMetadata.t() | nil,
:Links => %{optional(String.t()) => String.t()} | nil,
:Meta => %{optional(String.t()) => String.t()} | nil,
:ModifyIndex => integer() | nil,
:Name => String.t() | nil,
:NodeClass => String.t() | nil,
:NodeResources => NomadClient.Model.NodeResources.t() | nil,
:Reserved => NomadClient.Model.Resources.t() | nil,
:ReservedResources => NomadClient.Model.NodeReservedResources.t() | nil,
:Resources => NomadClient.Model.Resources.t() | nil,
:SchedulingEligibility => String.t() | nil,
:Status => String.t() | nil,
:StatusDescription => String.t() | nil,
:StatusUpdatedAt => integer() | nil,
:TLSEnabled => boolean() | nil
}
end
defimpl Poison.Decoder, for: NomadClient.Model.Node do
import NomadClient.Deserializer
def decode(value, options) do
value
|> deserialize(:CSIControllerPlugins, :map, NomadClient.Model.CsiInfo, options)
|> deserialize(:CSINodePlugins, :map, NomadClient.Model.CsiInfo, options)
|> deserialize(:DrainStrategy, :struct, NomadClient.Model.DrainStrategy, options)
|> deserialize(:Drivers, :map, NomadClient.Model.DriverInfo, options)
|> deserialize(:Events, :list, NomadClient.Model.NodeEvent, options)
|> deserialize(:HostNetworks, :map, NomadClient.Model.HostNetworkInfo, options)
|> deserialize(:HostVolumes, :map, NomadClient.Model.HostVolumeInfo, options)
|> deserialize(:LastDrain, :struct, NomadClient.Model.DrainMetadata, options)
|> deserialize(:NodeResources, :struct, NomadClient.Model.NodeResources, options)
|> deserialize(:Reserved, :struct, NomadClient.Model.Resources, options)
|> deserialize(:ReservedResources, :struct, NomadClient.Model.NodeReservedResources, options)
|> deserialize(:Resources, :struct, NomadClient.Model.Resources, options)
end
end