class Hbci::Message
Attributes
connector[R]
dialog[R]
next_position[RW]
sec_ref[R]
segments[R]
Public Class Methods
new(connector, dialog = nil)
click to toggle source
# File lib/hbci/message.rb, line 8 def initialize(connector, dialog = nil) @connector = connector @dialog = dialog @sec_ref = generate_security_reference @segments = [] @next_position = 1 end
Public Instance Methods
add_segment(segment)
click to toggle source
# File lib/hbci/message.rb, line 16 def add_segment(segment) segment.build(self) @segments.push(segment) end
compile()
click to toggle source
# File lib/hbci/message.rb, line 21 def compile @segments.each_with_index do |segment, _index| segment.compile unless segment.head.position segment.head.position = @next_position @next_position += 1 end end @segments.each do |segment| segment.after_compile if segment.respond_to?(:after_compile) end end
to_base64()
click to toggle source
# File lib/hbci/message.rb, line 38 def to_base64 Base64.encode64(to_s) end
to_s()
click to toggle source
# File lib/hbci/message.rb, line 34 def to_s segments.join('') end
Private Instance Methods
generate_security_reference()
click to toggle source
# File lib/hbci/message.rb, line 44 def generate_security_reference rand(1..23) * 999_999 + 1_000_000 end