@@ -10,16 +10,13 @@ defmodule DiffoExample.Access.Cable do
1010 """
1111
1212 alias Diffo.Provider.BaseInstance
13- alias Diffo.Provider.Instance.Specification
1413 alias Diffo.Provider.Instance.Relationship
15- alias Diffo.Provider.Instance.Feature
1614 alias Diffo.Provider.Instance.Characteristic
17- alias Diffo.Provider.Instance.Place
18- alias Diffo.Provider.Instance.Party
1915 alias Diffo.Provider.Assigner
2016 alias Diffo.Provider.Assignment
2117
2218 alias DiffoExample.Access
19+ alias DiffoExample.Access.ActionHelper
2320
2421 use Ash.Resource ,
2522 fragments: [ BaseInstance ] ,
@@ -56,22 +53,10 @@ defmodule DiffoExample.Access.Cable do
5653
5754 change set_attribute ( :type , :resource )
5855
59- change before_action ( fn changeset , _context ->
60- changeset
61- |> Specification . set_specified_by_argument ( )
62- |> Feature . set_features_argument ( )
63- |> Characteristic . set_characteristics_argument ( )
64- end )
56+ change before_action ( fn changeset , _context -> ActionHelper . build_before ( changeset ) end )
6557
6658 change after_action ( fn changeset , result , _context ->
67- with { :ok , result } <- Specification . relate_instance ( result , changeset ) ,
68- { :ok , result } <- Relationship . relate_instance ( result , changeset ) ,
69- { :ok , result } <- Feature . relate_instance ( result , changeset ) ,
70- { :ok , result } <- Characteristic . relate_instance ( result , changeset ) ,
71- { :ok , result } <- Place . relate_instance ( result , changeset ) ,
72- { :ok , result } <- Party . relate_instance ( result , changeset ) ,
73- { :ok , result } <- Access . get_cable_by_id ( result . id ) ,
74- do: { :ok , result }
59+ ActionHelper . build_after ( changeset , result , :get_cable_by_id )
7560 end )
7661
7762 change load [ :href ]
0 commit comments