Current section
8 Versions
Jump to
Current section
8 Versions
Compare versions
3
files changed
+15
additions
-9
deletions
| @@ -212,4 +212,4 @@ | |
| 212 212 | {<<"optional">>,true}, |
| 213 213 | {<<"repository">>,<<"hexpm">>}, |
| 214 214 | {<<"requirement">>,<<"~> 1.0">>}]]}. |
| 215 | - {<<"version">>,<<"0.12.3">>}. |
| 215 | + {<<"version">>,<<"0.12.4">>}. |
| @@ -22,13 +22,19 @@ defmodule NomadClient.Deserializer do | |
| 22 22 | end |
| 23 23 | |
| 24 24 | def deserialize(model, field, :map, mod, options) do |
| 25 | - model |
| 26 | - |> Map.update!( |
| 27 | - field, |
| 28 | - &Map.new(&1, fn {key, val} -> |
| 29 | - {key, Poison.Decode.decode(val, Keyword.merge(options, as: struct(mod)))} |
| 30 | - end) |
| 31 | - ) |
| 25 | + case Map.get(model, field) do |
| 26 | + nil -> |
| 27 | + model |
| 28 | + |
| 29 | + _ -> |
| 30 | + model |
| 31 | + |> Map.update!( |
| 32 | + field, |
| 33 | + &Map.new(&1, fn {key, val} -> |
| 34 | + {key, Poison.Decode.decode(val, Keyword.merge(options, as: struct(mod)))} |
| 35 | + end) |
| 36 | + ) |
| 37 | + end |
| 32 38 | end |
| 33 39 | |
| 34 40 | def deserialize(model, field, :date, _, _options) do |
| @@ -2,7 +2,7 @@ defmodule NomadClient.Mixfile do | |
| 2 2 | use Mix.Project |
| 3 3 | |
| 4 4 | @source_url "https://github.com/mrmstn/nomad_client" |
| 5 | - @version "0.12.3" |
| 5 | + @version "0.12.4" |
| 6 6 | |
| 7 7 | def project do |
| 8 8 | [ |