mobilizon/lib/service/activity_pub/converter.ex

17 lines
453 B
Elixir
Raw Normal View History

defmodule Mobilizon.Service.ActivityPub.Converter do
@moduledoc """
Converter behaviour
This module allows to convert from ActivityStream format to our own internal one, and back
"""
@callback as_to_model_data(map()) :: map()
@callback model_to_as(struct()) :: map()
end
defprotocol Mobilizon.Service.ActivityPub.Convertible do
@type activitystreams :: map()
@spec model_to_as(t) :: activitystreams
def model_to_as(convertible)
end