class Hbci4jruby::HBCICallback

Public Instance Methods

build_answer(banking_passport) click to toggle source
# File lib/hbci4jruby/hbci_callback.rb, line 6
def build_answer banking_passport
  answer = {}
  answer[NEED_PT_PIN]     = banking_passport.pin
  answer[NEED_CUSTOMERID] = banking_passport.customer_id
  answer[NEED_USERID]     = banking_passport.user_id
  answer[NEED_COUNTRY]    = banking_passport.country_code
  answer[NEED_BLZ]        = banking_passport.bank_number
  answer[NEED_FILTER]     = banking_passport.filter
  answer[NEED_HOST]       = banking_passport.host
  answer[NEED_PORT]       = banking_passport.port
  answer
end
callback(passport, reason, msg, dataType, retData) click to toggle source
# File lib/hbci4jruby/hbci_callback.rb, line 19
def callback(passport, reason, msg, dataType, retData)
  banking_passport = passport.getClientData('init')

  # for reason enum definitions see HBCICallback.java in hbci4java
  answer = build_answer(banking_passport)[reason]
  if answer
    retData.replace(0, retData.length, answer)
  else
    case reason
      when NEED_PASSPHRASE_LOAD then retData.replace(0, retData.length, "foo")
      when NEED_PASSPHRASE_SAVE then retData.replace(0, retData.length, "foo")
      when NEED_PT_PIN then retData.replace(0, retData.length, pin)
      when NEED_PT_TAN then retData.replace(0, retData.length, tan)
      when NEED_CONNECTION, CLOSE_CONNECTION then nil
      else puts "not implemented #{reason}"
    end
  end
end
log(msg, level, date, trace) click to toggle source
# File lib/hbci4jruby/hbci_callback.rb, line 38
def log(msg, level, date, trace)
  #puts msg
end
status(passport, statusTag, o) click to toggle source
# File lib/hbci4jruby/hbci_callback.rb, line 42
def status(passport, statusTag, o)
  #puts @@status_names[statusTag]
end