lib/nomad_client/model/csi_volume_list_stub.ex

# 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.CsiVolumeListStub do
  @moduledoc """

  """

  @derive [Poison.Encoder]
  defstruct [
    :AccessMode,
    :AttachmentMode,
    :ControllerRequired,
    :ControllersExpected,
    :ControllersHealthy,
    :CreateIndex,
    :CurrentReaders,
    :CurrentWriters,
    :ExternalID,
    :ID,
    :ModifyIndex,
    :Name,
    :Namespace,
    :NodesExpected,
    :NodesHealthy,
    :PluginID,
    :Provider,
    :ResourceExhausted,
    :Schedulable,
    :Topologies
  ]

  @type t :: %__MODULE__{
          :AccessMode => String.t() | nil,
          :AttachmentMode => String.t() | nil,
          :ControllerRequired => boolean() | nil,
          :ControllersExpected => integer() | nil,
          :ControllersHealthy => integer() | nil,
          :CreateIndex => integer() | nil,
          :CurrentReaders => integer() | nil,
          :CurrentWriters => integer() | nil,
          :ExternalID => String.t() | nil,
          :ID => String.t() | nil,
          :ModifyIndex => integer() | nil,
          :Name => String.t() | nil,
          :Namespace => String.t() | nil,
          :NodesExpected => integer() | nil,
          :NodesHealthy => integer() | nil,
          :PluginID => String.t() | nil,
          :Provider => String.t() | nil,
          :ResourceExhausted => DateTime.t() | nil,
          :Schedulable => boolean() | nil,
          :Topologies => [NomadClient.Model.CsiTopology.t()] | nil
        }
end

defimpl Poison.Decoder, for: NomadClient.Model.CsiVolumeListStub do
  import NomadClient.Deserializer

  def decode(value, options) do
    value
    |> deserialize(:Topologies, :list, NomadClient.Model.CsiTopology, options)
  end
end