# frozen_string_literal: true # Almacena objetos de ActivityPub, como Note, Article, etc. class ActivityPub class Object < ApplicationRecord include ActivityPub::Concerns::JsonLdConcern # Los objetos son únicos a toda la base de datos validates :uri, presence: true, url: true, uniqueness: true has_many :activity_pubs, as: :object # Encontrar le Actor por su relación con el objeto # # @return [ActivityPub::Actor,nil] def actor ActivityPub::Actor.find_by(uri: actor_uri) end # @return [String] def actor_uri content['attributedTo'] end def actor_type? false end def object_type? true end end end