Class: Cuba::Generator

Inherits:
Object
  • Object
show all
Defined in:
lib/cuba/generator.rb,
lib/cuba/generator/version.rb

Constant Summary collapse

APPROOT =
File.expand_path(File.dirname(__FILE__))
VERSION =
"1.2.2"

Instance Method Summary collapse

Constructor Details

#initialize(name, type) ⇒ Generator

Returns a new instance of Generator.



10
11
12
13
14
15
16
17
18
19
# File 'lib/cuba/generator.rb', line 10

def initialize(name, type)
  @project_name = name.downcase
  @type = type
  create_dir
  create_config_file
  create_cuba_file
  create_gemfile
  create_gitignore
  puts "Created your Cuba #{@type} at /#{@project_name} directory. Rock on!"
end

Instance Method Details

#create_config_fileObject



25
26
27
28
29
# File 'lib/cuba/generator.rb', line 25

def create_config_file
  File.open("./#{@project_name}/config.ru", 'w+') do |file|
    file.write setup_config
  end
end

#create_cuba_fileObject



31
32
33
34
35
# File 'lib/cuba/generator.rb', line 31

def create_cuba_file
  File.open("./#{@project_name}/#{@project_name}.rb", 'w+') do |file|
    file.write setup_cuba
  end
end

#create_dirObject



21
22
23
# File 'lib/cuba/generator.rb', line 21

def create_dir
  Dir.mkdir(@project_name)
end

#create_gemfileObject



37
38
39
40
41
# File 'lib/cuba/generator.rb', line 37

def create_gemfile
  File.open("./#{@project_name}/Gemfile", 'w+') do |file|
    file.write setup_gemfile
  end
end

#create_gitignoreObject



43
44
45
46
47
# File 'lib/cuba/generator.rb', line 43

def create_gitignore
  File.open("./#{@project_name}/.gitignore", 'w+') do |file|
    file.write setup_gitignore
  end
end

#create_postgres_fileObject



49
50
51
52
53
# File 'lib/cuba/generator.rb', line 49

def create_postgres_file
  File.open("./#{@project_name}/postgres.rb", 'w+') do |file|
    file.write setup_postgres
  end
end

#create_sqlite_fileObject



55
56
57
58
59
# File 'lib/cuba/generator.rb', line 55

def create_sqlite_file
  File.open("./#{@project_name}/sqlite.rb", 'w+') do |file|
    file.write setup_sqlite
  end
end