class ServiceRecord::Base
Attributes
result[RW]
Public Class Methods
perform(args = {})
click to toggle source
# File lib/service_record/base.rb, line 13 def self.perform(args = {}) new.tap do |service| service.attributes = args break service unless service.valid? service.run_callbacks :perform do service.result = service.perform end end end
perform!(args = {})
click to toggle source
# File lib/service_record/base.rb, line 24 def self.perform!(args = {}) service = perform(args) return service if service.success? raise Failure, service end
Public Instance Methods
failure?()
click to toggle source
# File lib/service_record/base.rb, line 35 def failure? !success? end
perform()
click to toggle source
# File lib/service_record/base.rb, line 39 def perform raise NotImplementedError end
success?()
click to toggle source
# File lib/service_record/base.rb, line 31 def success? errors.empty? end