5
0
Fork 0
mirror of https://0xacab.org/sutty/sutty synced 2024-11-23 01:06:22 +00:00
panel/app/jobs/activity_pub/fetch_job.rb

23 lines
723 B
Ruby
Raw Normal View History

# frozen_string_literal: true
# Obtiene o actualiza el contenido de un objeto, usando las credenciales
# del sitio.
#
# XXX: Esto usa las credenciales del sitio para volver el objeto
# disponible para todo el CMS. Asumimos que el objeto devuelto es el
# mismo para todo el mundo y las credenciales solo son para
# autenticación.
class ActivityPub::FetchJob < ApplicationJob
def perform(site:, object:)
ActivityPub::Object.transaction do
response = site.social_inbox.dereferencer.get(uri: object.uri)
# @todo Fallar cuando la respuesta no funcione?
return unless response.ok?
return unless response.miss?
object.update(content: FastJsonparser.parse(response.body))
end
end
end