Class: Databasion::GoogleLoader

Inherits:
Object
  • Object
show all
Defined in:
lib/databasion/google_loader.rb

Constant Summary collapse

@@master_sheet =
'Database'
@@version_sheet =
'Version'
@@table_def =
'table'
@@field_def =
'field'
@@type_def =
'type'
@@index_def =
'index'
@@ignore_def =
'ignore'

Class Method Summary collapse

Class Method Details

.configObject



27
28
29
30
# File 'lib/databasion/google_loader.rb', line 27

def self.config
  config?
  @@config
end

.config=(data) ⇒ Object



23
24
25
# File 'lib/databasion/google_loader.rb', line 23

def self.config=(data)
  @@config = data
end

.config?Boolean

Returns:

  • (Boolean)

Raises:



18
19
20
21
# File 'lib/databasion/google_loader.rb', line 18

def self.config?
  raise GoogleLoaderError, 'GoogleLoader cannot load without a config.' unless defined?(@@config)
  true
end

.loginObject



52
53
54
55
56
57
58
# File 'lib/databasion/google_loader.rb', line 52

def self.
  begin
    @@session = GoogleSpreadsheet.(@@config['login']['username'], @@config['login']['password'])
  rescue
    raise GoogleLoaderError, "Couldn't log into Google."
  end
end

.master_sheetObject



40
41
42
# File 'lib/databasion/google_loader.rb', line 40

def self.master_sheet
  @@master_sheet
end

.master_sheet=(master) ⇒ Object



36
37
38
# File 'lib/databasion/google_loader.rb', line 36

def self.master_sheet=(master)
  @@master_sheet = master
end

.runObject



60
61
62
63
64
65
66
# File 'lib/databasion/google_loader.rb', line 60

def self.run
  config?
  
  process.each do |data_hash|
    Databasion::YamlBuilder.run(data_hash, @@config['output']['yaml_path'])
  end
end

.run_versionObject



68
69
70
71
72
# File 'lib/databasion/google_loader.rb', line 68

def self.run_version
  config?
  
  fetch_version
end

.sessionObject



32
33
34
# File 'lib/databasion/google_loader.rb', line 32

def self.session
  @@session
end

.version_sheetObject



48
49
50
# File 'lib/databasion/google_loader.rb', line 48

def self.version_sheet
  @@version_sheet
end

.version_sheet=(version) ⇒ Object



44
45
46
# File 'lib/databasion/google_loader.rb', line 44

def self.version_sheet=(version)
  @@version_sheet = version
end