# NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
# https://openapi-generator.tech
# Do not edit the class manually.
defmodule NomadClient.Model.NodeResources do
@moduledoc """
"""
@derive [Poison.Encoder]
defstruct [
:CPU,
:Memory,
:Disk,
:Networks,
:Devices
]
@type t :: %__MODULE__{
:CPU => NomadClient.Model.NodeCpuResources.t() | nil,
:Memory => NomadClient.Model.NodeMemoryResources.t() | nil,
:Disk => NomadClient.Model.NodeDiskResources.t() | nil,
:Networks => [NomadClient.Model.NetworkResource.t()] | nil,
:Devices => [NomadClient.Model.NodeDeviceResource.t()] | nil
}
end
defimpl Poison.Decoder, for: NomadClient.Model.NodeResources do
import NomadClient.Deserializer
def decode(value, options) do
value
|> deserialize(:CPU, :struct, NomadClient.Model.NodeCpuResources, options)
|> deserialize(:Memory, :struct, NomadClient.Model.NodeMemoryResources, options)
|> deserialize(:Disk, :struct, NomadClient.Model.NodeDiskResources, options)
|> deserialize(:Networks, :list, NomadClient.Model.NetworkResource, options)
|> deserialize(:Devices, :list, NomadClient.Model.NodeDeviceResource, options)
end
end