lib/nomad_client/model/service_check.ex

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

  """

  @derive [Poison.Encoder]
  defstruct [
    :ID,
    :Name,
    :Type,
    :Command,
    :Args,
    :Path,
    :Protocol,
    :PortLabel,
    :AddressMode,
    :Interval,
    :Timeout,
    :InitialStatus,
    :TlsSkipVerify,
    :Header,
    :Method,
    :CheckRestart,
    :GrpcService,
    :GrpcUseTls,
    :TaskName,
    :OnUpdate
  ]

  @type t :: %__MODULE__{
          :ID => String.t() | nil,
          :Name => String.t() | nil,
          :Type => String.t() | nil,
          :Command => String.t() | nil,
          :Args => [String.t()] | nil,
          :Path => String.t() | nil,
          :Protocol => String.t() | nil,
          :PortLabel => String.t() | nil,
          :AddressMode => String.t() | nil,
          :Interval => integer() | nil,
          :Timeout => integer() | nil,
          :InitialStatus => String.t() | nil,
          :TlsSkipVerify => boolean() | nil,
          :Header => %{optional(String.t()) => [String.t()]} | nil,
          :Method => String.t() | nil,
          :CheckRestart => NomadClient.Model.CheckRestart.t() | nil,
          :GrpcService => String.t() | nil,
          :GrpcUseTls => boolean() | nil,
          :TaskName => String.t() | nil,
          :OnUpdate => String.t() | nil
        }
end

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

  def decode(value, options) do
    value
    |> deserialize(:CheckRestart, :struct, NomadClient.Model.CheckRestart, options)
  end
end