class Fedex::Request::Document
Public Class Methods
new(credentials, options={})
click to toggle source
Calls superclass method
# File lib/fedex/request/document.rb, line 8 def initialize(credentials, options={}) super(credentials, options) @shipping_document = options[:shipping_document] @filenames = options.fetch(:filenames) { {} } end
Public Instance Methods
add_custom_components(xml)
click to toggle source
Calls superclass method
# File lib/fedex/request/document.rb, line 15 def add_custom_components(xml) super add_shipping_document(xml) if @shipping_document end
Private Instance Methods
add_shipping_document(xml)
click to toggle source
Add shipping document specification
# File lib/fedex/request/document.rb, line 24 def add_shipping_document(xml) xml.ShippingDocumentSpecification{ Array(@shipping_document[:shipping_document_types]).each do |type| xml.ShippingDocumentTypes type end hash_to_xml(xml, @shipping_document.reject{ |k| k == :shipping_document_types}) } end
success_response(api_response, response)
click to toggle source
Calls superclass method
# File lib/fedex/request/document.rb, line 33 def success_response(api_response, response) super shipment_documents = response.merge!({ :filenames => @filenames }) Fedex::Document.new shipment_documents end