module RuleBox::Getter
Public Class Methods
new(facade)
click to toggle source
# File lib/rule_box/getter.rb, line 4 def initialize(facade) raise 'Must pass an "RFacade"' unless facade.is_a? RuleBox::Facade @facade = facade end
Public Instance Methods
_current_method()
click to toggle source
# File lib/rule_box/getter.rb, line 39 def _current_method @facade._current_method end
as_json(**options)
click to toggle source
# File lib/rule_box/getter.rb, line 51 def as_json(**options) options.key?(:root) ? { self.class.name.to_sym => @facade.attributes } : @facade.attributes end
bucket()
click to toggle source
# File lib/rule_box/getter.rb, line 27 def bucket @facade.bucket.clone end
data()
click to toggle source
# File lib/rule_box/getter.rb, line 23 def data @facade.data.clone end
errors()
click to toggle source
# File lib/rule_box/getter.rb, line 31 def errors @facade.errors.clone end
executed()
click to toggle source
# File lib/rule_box/getter.rb, line 43 def executed @facade.executed end
model()
click to toggle source
# File lib/rule_box/getter.rb, line 10 def model model = @facade.model if model.is_a?(Class) || model.is_a?(Module) model.to_s else model.clone end end
respond_to_missing?(*several_variants)
click to toggle source
Calls superclass method
# File lib/rule_box/getter.rb, line 59 def respond_to_missing?(*several_variants) super unless method.to_s.start_with? 'current_' end
status()
click to toggle source
# File lib/rule_box/getter.rb, line 19 def status @facade.status end
steps()
click to toggle source
# File lib/rule_box/getter.rb, line 35 def steps @facade.steps.clone end
to_json(**args)
click to toggle source
# File lib/rule_box/getter.rb, line 47 def to_json(**args) @facade.to_json(args) end
to_s()
click to toggle source
# File lib/rule_box/getter.rb, line 55 def to_s @facade.as_json(root: true).to_s end
Private Instance Methods
method_missing(method)
click to toggle source
Calls superclass method
# File lib/rule_box/getter.rb, line 65 def method_missing(method) super unless method.to_s.start_with? 'current_' keys = @facade.send :keys keys[method].clone end