# NOTE: This file is auto generated by OpenAPI Generator 7.0.1 (https://openapi-generator.tech). # Do not edit this file manually. defmodule DockerEngineAPI.Model.ServiceSpec do @moduledoc """ User modifiable configuration for a service. """ @derive Jason.Encoder defstruct [ :Name, :Labels, :TaskTemplate, :Mode, :UpdateConfig, :RollbackConfig, :Networks, :EndpointSpec ] @type t :: %__MODULE__{ :Name => String.t | nil, :Labels => %{optional(String.t) => String.t} | nil, :TaskTemplate => DockerEngineAPI.Model.TaskSpec.t | nil, :Mode => DockerEngineAPI.Model.ServiceSpecMode.t | nil, :UpdateConfig => DockerEngineAPI.Model.ServiceSpecUpdateConfig.t | nil, :RollbackConfig => DockerEngineAPI.Model.ServiceSpecRollbackConfig.t | nil, :Networks => [DockerEngineAPI.Model.NetworkAttachmentConfig.t] | nil, :EndpointSpec => DockerEngineAPI.Model.EndpointSpec.t | nil } alias DockerEngineAPI.Deserializer def decode(value) do value |> Deserializer.deserialize(:TaskTemplate, :struct, DockerEngineAPI.Model.TaskSpec) |> Deserializer.deserialize(:Mode, :struct, DockerEngineAPI.Model.ServiceSpecMode) |> Deserializer.deserialize(:UpdateConfig, :struct, DockerEngineAPI.Model.ServiceSpecUpdateConfig) |> Deserializer.deserialize(:RollbackConfig, :struct, DockerEngineAPI.Model.ServiceSpecRollbackConfig) |> Deserializer.deserialize(:Networks, :list, DockerEngineAPI.Model.NetworkAttachmentConfig) |> Deserializer.deserialize(:EndpointSpec, :struct, DockerEngineAPI.Model.EndpointSpec) end end