Class: Ookkee::Builder
- Inherits:
-
Object
- Object
- Ookkee::Builder
- Defined in:
- lib/ookkee/builder.rb
Instance Attribute Summary collapse
-
#registry ⇒ Object
Returns the value of attribute registry.
Class Method Summary collapse
Instance Method Summary collapse
- #build_activerecord_objects ⇒ Object
- #credit(account, &block) ⇒ Object
- #debit(account, &block) ⇒ Object
-
#initialize ⇒ Builder
constructor
A new instance of Builder.
- #title(value) ⇒ Object
- #transaction_number(value) ⇒ Object
- #user(value) ⇒ Object
Constructor Details
#initialize ⇒ Builder
Returns a new instance of Builder.
5 6 7 8 |
# File 'lib/ookkee/builder.rb', line 5 def initialize @registry = [] @attributes = {} end |
Instance Attribute Details
#registry ⇒ Object
Returns the value of attribute registry.
3 4 5 |
# File 'lib/ookkee/builder.rb', line 3 def registry @registry end |
Class Method Details
.build {|instance| ... } ⇒ Object
10 11 12 13 14 15 |
# File 'lib/ookkee/builder.rb', line 10 def self.build instance = self.new yield instance instance.build_activerecord_objects end |
Instance Method Details
#build_activerecord_objects ⇒ Object
39 40 41 42 43 44 45 46 47 48 49 50 |
# File 'lib/ookkee/builder.rb', line 39 def build_activerecord_objects sheet = Sheet.new( title: @attributes[:title], transaction_number: @attributes[:transaction_number], user: @attributes[:user] ) registry.each do |element| entry_repo.build_from_factory(sheet, element) end sheet end |
#credit(account, &block) ⇒ Object
29 30 31 32 |
# File 'lib/ookkee/builder.rb', line 29 def credit(account, &block) builder_proxy = BuilderProxy.new({builder: self}) builder_proxy.credit(account, &block) end |
#debit(account, &block) ⇒ Object
34 35 36 37 |
# File 'lib/ookkee/builder.rb', line 34 def debit(account, &block) builder_proxy = BuilderProxy.new({builder: self}) builder_proxy.debit(account, &block) end |
#title(value) ⇒ Object
17 18 19 |
# File 'lib/ookkee/builder.rb', line 17 def title(value) @attributes[:title] = value end |
#transaction_number(value) ⇒ Object
21 22 23 |
# File 'lib/ookkee/builder.rb', line 21 def transaction_number(value) @attributes[:transaction_number] = value end |
#user(value) ⇒ Object
25 26 27 |
# File 'lib/ookkee/builder.rb', line 25 def user(value) @attributes[:user] = value end |