base_adapter.rb 855 B

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253
  1. module Blazer
  2. module Adapters
  3. class BaseAdapter
  4. attr_reader :data_source
  5. def initialize(data_source)
  6. @data_source = data_source
  7. end
  8. def run_statement(statement, comment)
  9. # the one required method
  10. end
  11. def tables
  12. [] # optional, but nice to have
  13. end
  14. def schema
  15. [] # optional, but nice to have
  16. end
  17. def preview_statement
  18. "" # also optional, but nice to have
  19. end
  20. def reconnect
  21. # optional
  22. end
  23. def cost(statement)
  24. # optional
  25. end
  26. def explain(statement)
  27. # optional
  28. end
  29. def cancel(run_id)
  30. # optional
  31. end
  32. def cachable?(statement)
  33. true # optional
  34. end
  35. protected
  36. def settings
  37. @data_source.settings
  38. end
  39. end
  40. end
  41. end