Link - Invalidation

Setup

defmodule Foo do
  use(Mazurka.Resource)

  param(foo)

  mediatype(Hyper) do
    action() do
      %{}
    end
  end
end
defmodule Bar do
  use(Mazurka.Resource)

  param(bar)

  mediatype(Hyper) do
    action() do
      %{}
    end
  end
end
defmodule Baz do
  use(Mazurka.Resource)

  mediatype(Hyper) do
    action() do
      invalidates(Foo, foo: "123")
      invalidates(Bar, bar: "456")
    end
  end
end

Baz.action

{_, _, conn} = Baz.action([], %{}, %{}, %{private: %{}}, Router)
[second, first] = conn.private().mazurka_invalidations()
Foo = first.resource()
%{"foo" => "123"} = first.params()
Bar = second.resource()
%{"bar" => "456"} = second.params()