diff options
author | ThibG <thib@sitedethib.com> | 2019-01-02 20:03:32 +0100 |
---|---|---|
committer | GitHub <noreply@github.com> | 2019-01-02 20:03:32 +0100 |
commit | 0acd51acdc1e670bf57f58671cb8e30743782c63 (patch) | |
tree | f5ff0b5c3b1e8fd94691264f2bc147e5fa233ecb /app/workers/activitypub/reply_distribution_worker.rb | |
parent | b300948526d967aaf5608c93546ee0d54940c0ef (diff) | |
parent | e77ceb1b29547ed89b4110b3cc3edc9ac325b620 (diff) |
Merge pull request #878 from ThibG/glitch-soc/merge-upstream
Merge upstream changes
Diffstat (limited to 'app/workers/activitypub/reply_distribution_worker.rb')
-rw-r--r-- | app/workers/activitypub/reply_distribution_worker.rb | 15 |
1 files changed, 11 insertions, 4 deletions
diff --git a/app/workers/activitypub/reply_distribution_worker.rb b/app/workers/activitypub/reply_distribution_worker.rb index c0ed3a1f4..d8fea6c4e 100644 --- a/app/workers/activitypub/reply_distribution_worker.rb +++ b/app/workers/activitypub/reply_distribution_worker.rb @@ -1,5 +1,8 @@ # frozen_string_literal: true +# Obsolete but kept around to make sure existing jobs do not fail after upgrade. +# Should be removed in a subsequent release. + class ActivityPub::ReplyDistributionWorker include Sidekiq::Worker @@ -12,7 +15,7 @@ class ActivityPub::ReplyDistributionWorker return unless @account.present? && @status.distributable? ActivityPub::DeliveryWorker.push_bulk(inboxes) do |inbox_url| - [signed_payload, @status.account_id, inbox_url] + [payload, @status.account_id, inbox_url] end rescue ActiveRecord::RecordNotFound true @@ -25,14 +28,18 @@ class ActivityPub::ReplyDistributionWorker end def signed_payload - @signed_payload ||= Oj.dump(ActivityPub::LinkedDataSignature.new(payload).sign!(@status.account)) + Oj.dump(ActivityPub::LinkedDataSignature.new(unsigned_payload).sign!(@status.account)) end - def payload - @payload ||= ActiveModelSerializers::SerializableResource.new( + def unsigned_payload + ActiveModelSerializers::SerializableResource.new( @status, serializer: ActivityPub::ActivitySerializer, adapter: ActivityPub::Adapter ).as_json end + + def payload + @payload ||= @status.distributable? ? signed_payload : Oj.dump(unsigned_payload) + end end |