class Bambora::BatchUpload::BeanstreamSendBatch
Constants
- BATCH_PROCESS_SUCCESS
Attributes
file_path[RW]
process_date[RW]
process_now[RW]
Public Class Methods
new(file_path, process_date, process_now)
click to toggle source
# File lib/bambora/batch_upload/beanstream_send_batch.rb, line 12 def initialize(file_path, process_date, process_now) @file_path = file_path @process_date = process_date @process_now = process_now end
Public Instance Methods
send()
click to toggle source
# File lib/bambora/batch_upload/beanstream_send_batch.rb, line 20 def send c = Curl::Easy.new(batch_uploads_api_url) do |curl| curl.headers["Authorization"] = "Passcode #{encoded_pass_code}" end c.multipart_form_post = true c.http_post(criteria_content,file_content) response = JSON.parse(c.body) response_code = c.response_code if response["code"] == BATCH_PROCESS_SUCCESS response["batch_id"] else raise BatchUploadError.new(code: response["code"], category: response["category"], message: response["message"], http_code: response_code) end end
Private Instance Methods
batch_uploads_api_key()
click to toggle source
# File lib/bambora/batch_upload/beanstream_send_batch.rb, line 60 def batch_uploads_api_key Bambora::BatchUpload.batch_upload_api_key end
batch_uploads_api_url()
click to toggle source
# File lib/bambora/batch_upload/beanstream_send_batch.rb, line 64 def batch_uploads_api_url Bambora::BatchUpload.get_batch_upload_api_url end
criteria_content()
click to toggle source
# File lib/bambora/batch_upload/beanstream_send_batch.rb, line 37 def criteria_content criteria_content = Curl::PostField.content("criteria", "{'process_date':#{process_date_formatted},'process_now':#{process_now} }", "application/json") end
encoded_pass_code()
click to toggle source
# File lib/bambora/batch_upload/beanstream_send_batch.rb, line 52 def encoded_pass_code Base64.strict_encode64("#{merchant_id}:#{batch_uploads_api_key}") end
file_content()
click to toggle source
# File lib/bambora/batch_upload/beanstream_send_batch.rb, line 43 def file_content file_content = Curl::PostField.file("file1",file_path) end
merchant_id()
click to toggle source
# File lib/bambora/batch_upload/beanstream_send_batch.rb, line 56 def merchant_id Bambora::BatchUpload.merchant_id end
process_date_formatted()
click to toggle source
# File lib/bambora/batch_upload/beanstream_send_batch.rb, line 48 def process_date_formatted process_date.to_s.gsub("-","") end