Class: Acumatica::Resource

Inherits:
OpenStruct
  • Object
show all
Defined in:
lib/acumatica/resource.rb

Direct Known Subclasses

Customer, SalesOrder, StockItem

Class Method Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(params = {}) ⇒ Resource

Returns a new instance of Resource.



70
71
72
73
# File 'lib/acumatica/resource.rb', line 70

def initialize(params = {})
  super(format_params(params))
  format_attributes!
end

Class Method Details

.create(body = {}, params = {}) ⇒ Object



15
16
17
18
19
20
21
22
23
# File 'lib/acumatica/resource.rb', line 15

def create(body = {}, params = {})
  response = Acumatica::Client.instance.connection.put do |req|
    req.url url
    req.body = format_request_body(body) if body
    req.params = parse_query_params(params) if params
  end

  new(response.body)
end

.find_all(params = {}) ⇒ Object



25
26
27
28
29
30
31
32
# File 'lib/acumatica/resource.rb', line 25

def find_all(params = {})
  response = Acumatica::Client.instance.connection.get do |req|
    req.url url
    req.params = parse_query_params(params) if params
  end

  response.body.map { |attrs| new(attrs) }
end

.urlObject



34
35
36
# File 'lib/acumatica/resource.rb', line 34

def url
  URI.join(Acumatica::Client.instance.base_url, to_s.split("::").last)
end