Module: Quickbooks::Support

Included in:
API, QbxmlBase, QbxmlBase, QbxmlParser
Defined in:
lib/quickbooks/support.rb

Defined Under Namespace

Modules: API, ClassBuilder, QBXML Classes: Logger

Instance Method Summary collapse

Instance Method Details

#inflectorObject

easily convert between CamelCase and under_score



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

def inflector
  ActiveSupport::Inflector
end

#logObject



29
30
31
# File 'lib/quickbooks/support.rb', line 29

def log
  Quickbooks::API.log
end

#simple_class_name(klass) ⇒ Object



20
21
22
# File 'lib/quickbooks/support.rb', line 20

def simple_class_name(klass)
  klass.to_s.split("::").last
end

#to_attribute_name(obj) ⇒ Object



7
8
9
10
11
12
13
14
15
16
17
18
# File 'lib/quickbooks/support.rb', line 7

def to_attribute_name(obj)
  name = \
    case obj
    when Class
      simple_class_name(obj)
    when Nokogiri::XML::Element
      obj.name
    else
      obj.to_s
    end
  inflector.underscore(name)
end