Class: Hbci::Connector

Inherits:
Object
  • Object
show all
Defined in:
lib/hbci/connector.rb

Instance Attribute Summary collapse

Class Method Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(credentials) ⇒ Connector

Returns a new instance of Connector.



14
15
16
17
# File 'lib/hbci/connector.rb', line 14

def initialize(credentials)
  self.credentials = credentials
  reset_message_number
end

Instance Attribute Details

#credentialsObject

Returns the value of attribute credentials.



6
7
8
# File 'lib/hbci/connector.rb', line 6

def credentials
  @credentials
end

#message_numberObject

Returns the value of attribute message_number.



5
6
7
# File 'lib/hbci/connector.rb', line 5

def message_number
  @message_number
end

Class Method Details

.open(credentials) {|connector| ... } ⇒ Object

Yields:

  • (connector)


8
9
10
11
12
# File 'lib/hbci/connector.rb', line 8

def self.open(credentials)
  connector = new(credentials)
  yield connector
  connector.reset_message_number
end

Instance Method Details

#post(request_message) ⇒ Object



30
31
32
33
34
35
36
# 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_numberObject



26
27
28
# File 'lib/hbci/connector.rb', line 26

def reset_message_number
  @message_number = 1
end