class SocMed::Services::Follows::Destroy

Public Instance Methods

call() { |success, NoTrigger| ... } click to toggle source
# File lib/soc_med/services/follows/destroy.rb, line 8
def call(&block)
  followed_object = destroy_followed_object

  yield(Success.new(followed_object), NoTrigger)
rescue ActiveRecord::RecordNotFound, SocMed::Follows::AlreadyExistsError, StandardError => e
  yield(NoTrigger, Failure.new(e))
end

Private Instance Methods

destroy_followed_object() click to toggle source
# File lib/soc_med/services/follows/destroy.rb, line 18
def destroy_followed_object
  return { destroyed: true } if follow.destroy!

  { destroyed: false }
end