Class: Quickbooks::Service::BaseService

Inherits:
Object
  • Object
show all
Includes:
Util::Logging
Defined in:
lib/quickbooks/service/base_service.rb

Constant Summary collapse

XML_NS =
%{xmlns="http://schema.intuit.com/finance/v3"}
HTTP_CONTENT_TYPE =
'application/xml'
HTTP_ACCEPT =
'application/xml'
HTTP_ACCEPT_ENCODING =
'gzip, deflate'

Instance Attribute Summary collapse

Instance Method Summary collapse

Methods included from Util::Logging

#log

Constructor Details

#initialize ⇒ BaseService

Returns a new instance of BaseService.



35
36
37
# File 'lib/quickbooks/service/base_service.rb', line 35

def initialize()
  @base_uri = 'https://qb.sbfinance.intuit.com/v3/company'
end

Instance Attribute Details

#base_uri ⇒ Object (readonly)

Returns the value of attribute base_uri.



26
27
28
# File 'lib/quickbooks/service/base_service.rb', line 26

def base_uri
  @base_uri
end

#company_id ⇒ Object

Returns the value of attribute company_id.



24
25
26
# File 'lib/quickbooks/service/base_service.rb', line 24

def company_id
  @company_id
end

#last_response_body ⇒ Object (readonly)

Returns the value of attribute last_response_body.



27
28
29
# File 'lib/quickbooks/service/base_service.rb', line 27

def last_response_body
  @last_response_body
end

#last_response_xml ⇒ Object (readonly)

Returns the value of attribute last_response_xml.



28
29
30
# File 'lib/quickbooks/service/base_service.rb', line 28

def last_response_xml
  @last_response_xml
end

#oauth ⇒ Object

Returns the value of attribute oauth.



25
26
27
# File 'lib/quickbooks/service/base_service.rb', line 25

def oauth
  @oauth
end

Instance Method Details

#access_token=(token) ⇒ Object



39
40
41
# File 'lib/quickbooks/service/base_service.rb', line 39

def access_token=(token)
  @oauth = token
end

#realm_id=(company_id) ⇒ Object

realm & company are synonymous



48
49
50
# File 'lib/quickbooks/service/base_service.rb', line 48

def realm_id=(company_id)
  @company_id = company_id
end

#url_for_base ⇒ Object



56
57
58
# File 'lib/quickbooks/service/base_service.rb', line 56

def url_for_base
  "#{@base_uri}/#{@company_id}"
end

#url_for_query(query = nil, start_position = 1, max_results = 20) ⇒ Object



60
61
62
63
64
65
# File 'lib/quickbooks/service/base_service.rb', line 60

def url_for_query(query = nil, start_position = 1, max_results = 20)
  query ||= default_model_query
  query = "#{query} STARTPOSITION #{start_position} MAXRESULTS #{max_results}"

  "#{url_for_base}/query?query=#{URI.encode_www_form_component(query)}"
end

#url_for_resource(resource) ⇒ Object



52
53
54
# File 'lib/quickbooks/service/base_service.rb', line 52

def url_for_resource(resource)
  "#{url_for_base}/#{resource}"
end