class Sp2db::Config

Constants

DEFAULT
SUPPORTED_EXTENSIONS

Attributes

client_id[RW]
client_secret[RW]
credential[RW]
default_extensions[RW]
default_file_extention[RW]
default_find_columns[RW]
download_before_import[RW]
exception_handler[RW]
export_location[RW]
import_strategy[RW]
non_model_tables[RW]
personal_credential[RW]
spreadsheet_id[RW]

Public Class Methods

new() click to toggle source
# File lib/sp2db/config.rb, line 37
def initialize
  set_default
end

Public Instance Methods

credential=(cr) click to toggle source

File name or json string or hash

# File lib/sp2db/config.rb, line 53
def credential=cr
  if File.exist?(cr) && File.file?(cr)
    cr = File.read cr
  end

  @credential = case cr
    when Hash, ActiveSupport::HashWithIndifferentAccess
      cr
    when String
      JSON.parse cr
    else
      raise "Invalid data type"
  end
end
default_find_columns=(cols) click to toggle source
# File lib/sp2db/config.rb, line 68
def default_find_columns= cols
  @default_find_columns = cols.map &:to_sym
end
export_folder() click to toggle source
# File lib/sp2db/config.rb, line 47
def export_folder
  FileUtils.mkdir_p export_location
  export_location
end
import_strategy=(s) click to toggle source
# File lib/sp2db/config.rb, line 41
def import_strategy=s
  s = s.to_sym
  ImportStrategy.valid! s
  @import_strategy = s
end

Private Instance Methods

set_default() click to toggle source
# File lib/sp2db/config.rb, line 76
def set_default
  DEFAULT.each do |k, v|
    self.send("#{k}=", v)
  end
end