class MR::Factory::ReadModelFactory
Attributes
config[R]
read_model_class[R]
Public Class Methods
new(read_model_class, &block)
click to toggle source
# File lib/mr/factory/read_model_factory.rb, line 12 def initialize(read_model_class, &block) unless read_model_class < MR::ReadModelStruct raise ArgumentError, "takes a read model or read model struct" end @read_model_class = read_model_class @config = Config.new(read_model_class) self.instance_eval(&block) if block end
Public Instance Methods
read_model(args = nil)
click to toggle source
# File lib/mr/factory/read_model_factory.rb, line 27 def read_model(args = nil) @read_model_class.new(self.read_model_data(args)) end
Also aliased as: instance
read_model_data(args = nil)
click to toggle source
# File lib/mr/factory/read_model_factory.rb, line 21 def read_model_data(args = nil) Data.new.tap do |read_model_data| self.config.apply_args(read_model_data, args || {}) end end
Private Instance Methods
default_args(&block)
click to toggle source
# File lib/mr/factory/read_model_factory.rb, line 34 def default_args(&block) self.config.set_default_args(&block) end