Class: ActiveNetsuite::Client

Inherits:
Object
  • Object
show all
Defined in:
lib/activenetsuite/helpers/client.rb

Defined Under Namespace

Classes: ActiveNetsuiteHeader, PassportHeaderHandler, PreferencesHeaderHandler, SearchPreferencesHeaderHandler

Instance Attribute Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(config = {}) ⇒ Client

Returns a new instance of Client.



41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
# File 'lib/activenetsuite/helpers/client.rb', line 41

def initialize(config = {})
  @driver = ActiveNetsuitePortType.new(config[:endpoint_url] ||
                                 ActiveNetsuitePortType::DefaultEndpointUrl)

  if config[:role]
    role = {:xmlattr_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

Instance Attribute Details

#driverObject (readonly)

Returns the value of attribute driver.



9
10
11
# File 'lib/activenetsuite/helpers/client.rb', line 9

def driver
  @driver
end

Instance Method Details

#add(record) ⇒ Object



82
83
84
# File 'lib/activenetsuite/helpers/client.rb', line 82

def add(record)
  @driver.add(AddRequest.new(record))
end

#add_list(list) ⇒ Object



86
87
88
# File 'lib/activenetsuite/helpers/client.rb', line 86

def add_list(list)
  @driver.addList(AddListRequest.new(list))
end

#debug=(debug) ⇒ Object



59
60
61
# File 'lib/activenetsuite/helpers/client.rb', line 59

def debug=(debug)
  @driver.wiredump_dev = ($stderr if debug)
end

#delete(ref) ⇒ Object



106
107
108
# File 'lib/activenetsuite/helpers/client.rb', line 106

def delete(ref)
  @driver.delete(DeleteRequest.new(ref))
end

#delete_list(refs) ⇒ Object



110
111
112
# File 'lib/activenetsuite/helpers/client.rb', line 110

def delete_list(refs)
  @driver.deleteList(DeleteListRequest.new(refs))
end

#get(ref) ⇒ Object

Low level commands



64
65
66
# File 'lib/activenetsuite/helpers/client.rb', line 64

def get(ref)
  @driver.get(GetRequest.new(ref))
end

#get_all(ref) ⇒ Object



68
69
70
# File 'lib/activenetsuite/helpers/client.rb', line 68

def get_all(refs)
  @driver.getList(GetListRequest.new(refs))
end

#get_all_records(record_type) ⇒ Object



72
73
74
75
76
# File 'lib/activenetsuite/helpers/client.rb', line 72

def get_all_records(record_type)
  ref = GetAllRecord.new
  ref.xmlattr_recordType = record_type
  get_all(ref)
end

#get_deleted(get_deleted_filter) ⇒ Object



130
131
132
# File 'lib/activenetsuite/helpers/client.rb', line 130

def get_deleted(get_deleted_filter)
  @driver.getDeleted(GetDeletedRequest.new(get_deleted_filter))
end

#loggerObject



37
38
39
# File 'lib/activenetsuite/helpers/client.rb', line 37

def logger
  @logger ||= Logger.new(STDOUT)
end

#search(search_record) ⇒ Object



114
115
116
# File 'lib/activenetsuite/helpers/client.rb', line 114

def search(search_record)
  @driver.search(SearchRequest.new(search_record))
end

#search_all(search_record) ⇒ Object



125
126
127
128
# File 'lib/activenetsuite/helpers/client.rb', line 125

def search_all(search_record)
  search(search_record) +
    (@res.searchResult.totalPages-1).times.map { |page_index| search_next }
end

#search_next(search_response, page_index = search.page_index + 1) ⇒ Object



118
119
120
121
122
123
# File 'lib/activenetsuite/helpers/client.rb', line 118

def search_next(search_response, page_index = search.page_index + 1)
  @driver.searchMoreWithId(
    searchId: search_response.search_id,
    pageIndex: page_index
  )
end

#update(record) ⇒ Object



90
91
92
# File 'lib/activenetsuite/helpers/client.rb', line 90

def update(record)
  @driver.update(UpdateRequest.new(record))
end

#update_list(recs) ⇒ Object



94
95
96
# File 'lib/activenetsuite/helpers/client.rb', line 94

def update_list(recs)
  @driver.updateList(UpdateListRequest.new(recs))
end

#upsert(record) ⇒ Object



98
99
100
# File 'lib/activenetsuite/helpers/client.rb', line 98

def upsert(record)
  @driver.upsert(UpsertRequest.new(record))
end

#upsert_list(refs) ⇒ Object



102
103
104
# File 'lib/activenetsuite/helpers/client.rb', line 102

def upsert_list(refs)
  @driver.upsertList(UpsertListRequest.new(refs))
end