Skip to content

Instantly share code, notes, and snippets.

@johnsinco
Last active August 28, 2020 18:03
Show Gist options
  • Save johnsinco/6ca233519b7aa817067495495d16e674 to your computer and use it in GitHub Desktop.
Save johnsinco/6ca233519b7aa817067495495d16e674 to your computer and use it in GitHub Desktop.
elixir event handler for tradeline validation
defmodule Sample.EventHandler do
alias KaufmannEx.Schemas.Event
def given_event(%Event{name: :"loan.tradeline", payload: payload} = event) do
{state: state} = payload
if Enum.member?(["CO", "CA", "KS", FL"], state) do
{:ok, "loan.tradeline.validation.state", payload.tracking_number}
else
ErrorPublisher.publish(:"loan.tradeline.validation.error", "loan.tradeline.validation.state.invalid", payload.tracking_number, event.meta)
{:error, "loan.tradeline.validation.state", payload.tracking_number}
end
end
end
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment