Skip to content

Commit 3f6e3f3

Browse files
committed
feat: from_params/1 function
1 parent 231bd3d commit 3f6e3f3

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

51 files changed

+457
-127
lines changed

modules/openapi-generator/src/main/resources/elixir/model.mustache

Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -21,6 +21,13 @@
2121
{{/ectoEmbeds}}
2222
end
2323

24+
@spec from_params(map()) :: {:ok, t()} | {:error, Ecto.Changeset.t()}
25+
def from_params(params) do
26+
%__MODULE__{}
27+
|> changeset(params)
28+
|> Ecto.Changeset.apply_action(:insert)
29+
end
30+
2431
@spec changeset(t(), map()) :: Ecto.Changeset.t()
2532
def changeset(%__MODULE__{} = struct, params) do
2633
struct

samples/client/petstore/elixir/lib/openapi_petstore/model/_foo_get_default_response.ex

Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -17,6 +17,13 @@ defmodule OpenapiPetstore.Model.FooGetDefaultResponse do
1717
embeds_one :string, OpenapiPetstore.Model.Foo
1818
end
1919

20+
@spec from_params(map()) :: {:ok, t()} | {:error, Ecto.Changeset.t()}
21+
def from_params(params) do
22+
%__MODULE__{}
23+
|> changeset(params)
24+
|> Ecto.Changeset.apply_action(:insert)
25+
end
26+
2027
@spec changeset(t(), map()) :: Ecto.Changeset.t()
2128
def changeset(%__MODULE__{} = struct, params) do
2229
struct

samples/client/petstore/elixir/lib/openapi_petstore/model/_special_model_name_.ex

Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -17,6 +17,13 @@ defmodule OpenapiPetstore.Model.SpecialModelName do
1717
field :"$special[property.name]", :integer
1818
end
1919

20+
@spec from_params(map()) :: {:ok, t()} | {:error, Ecto.Changeset.t()}
21+
def from_params(params) do
22+
%__MODULE__{}
23+
|> changeset(params)
24+
|> Ecto.Changeset.apply_action(:insert)
25+
end
26+
2027
@spec changeset(t(), map()) :: Ecto.Changeset.t()
2128
def changeset(%__MODULE__{} = struct, params) do
2229
struct

samples/client/petstore/elixir/lib/openapi_petstore/model/additional_properties_class.ex

Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -19,6 +19,13 @@ defmodule OpenapiPetstore.Model.AdditionalPropertiesClass do
1919
field :map_of_map_property, {:map, {:map, :string}}
2020
end
2121

22+
@spec from_params(map()) :: {:ok, t()} | {:error, Ecto.Changeset.t()}
23+
def from_params(params) do
24+
%__MODULE__{}
25+
|> changeset(params)
26+
|> Ecto.Changeset.apply_action(:insert)
27+
end
28+
2229
@spec changeset(t(), map()) :: Ecto.Changeset.t()
2330
def changeset(%__MODULE__{} = struct, params) do
2431
struct

samples/client/petstore/elixir/lib/openapi_petstore/model/all_of_with_single_ref.ex

Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -19,6 +19,13 @@ defmodule OpenapiPetstore.Model.AllOfWithSingleRef do
1919
field :SingleRefType, :string
2020
end
2121

22+
@spec from_params(map()) :: {:ok, t()} | {:error, Ecto.Changeset.t()}
23+
def from_params(params) do
24+
%__MODULE__{}
25+
|> changeset(params)
26+
|> Ecto.Changeset.apply_action(:insert)
27+
end
28+
2229
@spec changeset(t(), map()) :: Ecto.Changeset.t()
2330
def changeset(%__MODULE__{} = struct, params) do
2431
struct

samples/client/petstore/elixir/lib/openapi_petstore/model/animal.ex

Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -19,6 +19,13 @@ defmodule OpenapiPetstore.Model.Animal do
1919
field :color, :string
2020
end
2121

22+
@spec from_params(map()) :: {:ok, t()} | {:error, Ecto.Changeset.t()}
23+
def from_params(params) do
24+
%__MODULE__{}
25+
|> changeset(params)
26+
|> Ecto.Changeset.apply_action(:insert)
27+
end
28+
2229
@spec changeset(t(), map()) :: Ecto.Changeset.t()
2330
def changeset(%__MODULE__{} = struct, params) do
2431
struct

samples/client/petstore/elixir/lib/openapi_petstore/model/any.ex

Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -17,6 +17,13 @@ defmodule OpenapiPetstore.Model.Any do
1717
field :"@type", :string
1818
end
1919

20+
@spec from_params(map()) :: {:ok, t()} | {:error, Ecto.Changeset.t()}
21+
def from_params(params) do
22+
%__MODULE__{}
23+
|> changeset(params)
24+
|> Ecto.Changeset.apply_action(:insert)
25+
end
26+
2027
@spec changeset(t(), map()) :: Ecto.Changeset.t()
2128
def changeset(%__MODULE__{} = struct, params) do
2229
struct

samples/client/petstore/elixir/lib/openapi_petstore/model/api_response.ex

Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -21,6 +21,13 @@ defmodule OpenapiPetstore.Model.ApiResponse do
2121
field :message, :string
2222
end
2323

24+
@spec from_params(map()) :: {:ok, t()} | {:error, Ecto.Changeset.t()}
25+
def from_params(params) do
26+
%__MODULE__{}
27+
|> changeset(params)
28+
|> Ecto.Changeset.apply_action(:insert)
29+
end
30+
2431
@spec changeset(t(), map()) :: Ecto.Changeset.t()
2532
def changeset(%__MODULE__{} = struct, params) do
2633
struct

samples/client/petstore/elixir/lib/openapi_petstore/model/array_of_array_of_number_only.ex

Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -17,6 +17,13 @@ defmodule OpenapiPetstore.Model.ArrayOfArrayOfNumberOnly do
1717
field :ArrayArrayNumber, {:array, {:array, :float}}
1818
end
1919

20+
@spec from_params(map()) :: {:ok, t()} | {:error, Ecto.Changeset.t()}
21+
def from_params(params) do
22+
%__MODULE__{}
23+
|> changeset(params)
24+
|> Ecto.Changeset.apply_action(:insert)
25+
end
26+
2027
@spec changeset(t(), map()) :: Ecto.Changeset.t()
2128
def changeset(%__MODULE__{} = struct, params) do
2229
struct

samples/client/petstore/elixir/lib/openapi_petstore/model/array_of_number_only.ex

Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -17,6 +17,13 @@ defmodule OpenapiPetstore.Model.ArrayOfNumberOnly do
1717
field :ArrayNumber, {:array, :float}
1818
end
1919

20+
@spec from_params(map()) :: {:ok, t()} | {:error, Ecto.Changeset.t()}
21+
def from_params(params) do
22+
%__MODULE__{}
23+
|> changeset(params)
24+
|> Ecto.Changeset.apply_action(:insert)
25+
end
26+
2027
@spec changeset(t(), map()) :: Ecto.Changeset.t()
2128
def changeset(%__MODULE__{} = struct, params) do
2229
struct

0 commit comments

Comments
 (0)