class NetSuite::Actions::Get
Public Class Methods
new(klass, options = {})
click to toggle source
# File lib/netsuite/actions/get.rb, line 7 def initialize(klass, options = {}) @klass = klass @options = options end
Private Instance Methods
request(credentials={})
click to toggle source
# File lib/netsuite/actions/get.rb, line 14 def request(credentials={}) NetSuite::Configuration.connection( {namespaces: { 'xmlns:platformMsgs' => "urn:messages_#{NetSuite::Configuration.api_version}.platform.webservices.netsuite.com", 'xmlns:platformCore' => "urn:core_#{NetSuite::Configuration.api_version}.platform.webservices.netsuite.com" }}, credentials ).call :get, message: request_body end
request_body()
click to toggle source
<soap:Body>
<platformMsgs:get> <platformMsgs:baseRef internalId="983" type="customer" xsi:type="platformCore:RecordRef"> <platformCore:name/> </platformMsgs:baseRef> </platformMsgs:get>
</soap:Body>
# File lib/netsuite/actions/get.rb, line 34 def request_body body = { 'platformMsgs:baseRef' => { '@xsi:type' => (@options[:custom] ? 'platformCore:CustomRecordRef' : 'platformCore:RecordRef') } } body['platformMsgs:baseRef']['@externalId'] = @options[:external_id] if @options[:external_id] body['platformMsgs:baseRef']['@internalId'] = @options[:internal_id] if @options[:internal_id] body['platformMsgs:baseRef']['@typeId'] = @options[:type_id] if @options[:type_id] body['platformMsgs:baseRef']['@type'] = soap_type unless @options[:custom] body end
response_body()
click to toggle source
# File lib/netsuite/actions/get.rb, line 51 def response_body @response_body ||= response_hash[:record] end
response_hash()
click to toggle source
# File lib/netsuite/actions/get.rb, line 55 def response_hash @response_hash = @response.body[:get_response][:read_response] end
soap_type()
click to toggle source
# File lib/netsuite/actions/get.rb, line 23 def soap_type @klass.to_s.split('::').last.lower_camelcase end
success?()
click to toggle source
# File lib/netsuite/actions/get.rb, line 47 def success? @success ||= response_hash[:status][:@is_success] == 'true' end