diff options
author | Eugen Rochko <eugen@zeonfederated.com> | 2017-08-26 16:10:35 +0200 |
---|---|---|
committer | GitHub <noreply@github.com> | 2017-08-26 16:10:35 +0200 |
commit | 884b085f534b02c664bcddd3a2fefcad6d4e5cc4 (patch) | |
tree | 78adcba8be64dd9ca35fd34498c92c6c85af1bc9 /app/serializers/activitypub | |
parent | 2a2698e4501094ca52b8b166c2c51fab26ce7427 (diff) |
Use Tombstone and _:atomUri in Delete activities as fallback (#4704)
Diffstat (limited to 'app/serializers/activitypub')
-rw-r--r-- | app/serializers/activitypub/delete_serializer.rb | 24 |
1 files changed, 19 insertions, 5 deletions
diff --git a/app/serializers/activitypub/delete_serializer.rb b/app/serializers/activitypub/delete_serializer.rb index b49268d72..a041c577b 100644 --- a/app/serializers/activitypub/delete_serializer.rb +++ b/app/serializers/activitypub/delete_serializer.rb @@ -1,8 +1,26 @@ # frozen_string_literal: true class ActivityPub::DeleteSerializer < ActiveModel::Serializer + class TombstoneSerializer < ActiveModel::Serializer + attributes :id, :type + attribute :atom_uri, key: '_:atomUri' + + def id + ActivityPub::TagManager.instance.uri_for(object) + end + + def type + 'Tombstone' + end + + def atom_uri + ::TagManager.instance.uri_for(object) + end + end + attributes :id, :type, :actor - attribute :virtual_object, key: :object + + has_one :object, serializer: TombstoneSerializer def id [ActivityPub::TagManager.instance.uri_for(object), '#delete'].join @@ -15,8 +33,4 @@ class ActivityPub::DeleteSerializer < ActiveModel::Serializer def actor ActivityPub::TagManager.instance.uri_for(object.account) end - - def virtual_object - ActivityPub::TagManager.instance.uri_for(object) - end end |