module Quickbooks

def log(msg)

def log(msg)
  if log?
    logger.info(msg)
    logger.flush if logger.respond_to?(:flush)
  end
end

def log?

Returns whether to log. Defaults to 'false'.
def log?
  @log ||= false
end

def log_xml_pretty_print?

pretty printing the xml in the logs is "on" by default
def log_xml_pretty_print?
  defined?(@log_xml_pretty_print) ? @log_xml_pretty_print : true
end

def logger

def logger
  @@logger ||= ::Logger.new($stdout) # TODO: replace with a real log file
end

def logger=(logger)

def logger=(logger)
  @@logger = logger
end

def sandbox_mode

def sandbox_mode
  @@sandbox_mode
end

def sandbox_mode=(sandbox_mode)

def sandbox_mode=(sandbox_mode)
  @@sandbox_mode = sandbox_mode
end