438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
453
454
455
456
457
458
459
460
461
462
463
464
465
466
467
468
469
470
471
472
473
474
475
476
477
478
479
480
481
482
483
484
485
486
|
# File 'lib/killbill/gen/api/invoice_user_api.rb', line 438
def insert_credit(accountId, amount, effectiveDate, currency, autoCommit, description, itemDetails, properties, context)
accountId = java.util.UUID.fromString(accountId.to_s) unless accountId.nil?
if amount.nil?
amount = java.math.BigDecimal::ZERO
else
amount = java.math.BigDecimal.new(amount.to_s)
end
if !effectiveDate.nil?
effectiveDate = Java::org.joda.time.LocalDate.parse(effectiveDate.to_s)
end
currency = Java::org.killbill.billing.catalog.api.Currency.value_of( currency.to_s ) unless currency.nil?
autoCommit = autoCommit.nil? ? java.lang.Boolean.new(false) : java.lang.Boolean.new(autoCommit)
description = description.to_s unless description.nil?
itemDetails = itemDetails.to_s unless itemDetails.nil?
tmp = java.util.ArrayList.new
(properties || []).each do |m|
m = m.to_java unless m.nil?
tmp.add(m)
end
properties = tmp
context = context.to_java unless context.nil?
begin
res = @real_java_api.insert_credit(accountId, amount, effectiveDate, currency, autoCommit, description, itemDetails, properties, context)
res = Killbill::Plugin::Model::InvoiceItem.new.to_ruby(res) unless res.nil?
return res
rescue Java::org.killbill.billing.invoice.api.InvoiceApiException => e
raise Killbill::Plugin::Model::InvoiceApiException.new.to_ruby(e)
end
end
|