class Hbci::Connector

Attributes

credentials[R]
message_number[RW]

Public Class Methods

new(credentials) click to toggle source
# File lib/hbci/connector.rb, line 14
def initialize(credentials)
  self.credentials = credentials
  reset_message_number
end
open(credentials) { |connector| ... } click to toggle source
# File lib/hbci/connector.rb, line 8
def self.open(credentials)
  connector = new(credentials)
  yield connector
  connector.reset_message_number
end

Public Instance Methods

credentials=(credentials) click to toggle source
# File lib/hbci/connector.rb, line 19
def credentials=(credentials)
  raise ArgumentError, "#{self.class.name}#initialize expects a BankCredentials::Hbci object" unless credentials.is_a?(BankCredentials::Hbci)

  credentials.validate!
  @credentials = credentials
end
post(request_message) click to toggle source
# File lib/hbci/connector.rb, line 30
def post(request_message)
  req = HTTParty.post(@credentials.url, body: request_message.to_base64)
  @message_number += 1
  raise "Error in https communication with bank: #{req.response.inspect}" unless req.success?

  Base64.decode64(req.response.body)
end
reset_message_number() click to toggle source
# File lib/hbci/connector.rb, line 26
def reset_message_number
  @message_number = 1
end