From 1bd1bb0fbaf7486a7b6c0106e5e528b771a3986a Mon Sep 17 00:00:00 2001 From: Tony Mann Date: Fri, 22 Jun 2012 18:25:58 -0700 Subject: [PATCH] Add support for role in SOAP header --- lib/netsuite_client/client.rb | 7 ++++++- test/netsuite_client_test.rb | 4 ++-- 2 files changed, 8 insertions(+), 3 deletions(-) diff --git a/lib/netsuite_client/client.rb b/lib/netsuite_client/client.rb index 225000f..f469428 100644 --- a/lib/netsuite_client/client.rb +++ b/lib/netsuite_client/client.rb @@ -37,7 +37,12 @@ def initialize(config = {}) @config = config @driver = NetSuitePortType.new(@config[:endpoint_url] || NetSuitePortType::DefaultEndpointUrl) - @driver.headerhandler.add(PassportHeaderHandler.new(:email => @config[:email], :password => @config[:password], :account => @config[:account_id])) + + if @config[:role] + role = {:internalID => config[:role]} + end + + @driver.headerhandler.add(PassportHeaderHandler.new(:email => @config[:email], :password => @config[:password], :account => @config[:account_id], :role => role)) @driver.headerhandler.add(PreferencesHeaderHandler.new) @driver.headerhandler.add(SearchPreferencesHeaderHandler.new) end diff --git a/test/netsuite_client_test.rb b/test/netsuite_client_test.rb index 546aab3..aa40f75 100644 --- a/test/netsuite_client_test.rb +++ b/test/netsuite_client_test.rb @@ -11,8 +11,8 @@ def setup exit(-1) end - @client = NetsuiteClient.new(:account_id => ENV['NS_ACCOUNT_ID'], :email => ENV['NS_EMAIL'], :password => ENV['NS_PASSWORD'], :endpoint_url => ENV['NS_ENDPOINT_URL']) - #@client.debug = true + @client = NetsuiteClient.new(:account_id => ENV['NS_ACCOUNT_ID'], :email => ENV['NS_EMAIL'], :password => ENV['NS_PASSWORD'], :role => ENV['NS_ROLE'], :endpoint_url => ENV['NS_ENDPOINT_URL']) + @client.debug = true end def test_init