class RubyApiGenerators::Generators::Roda

Public Class Methods

source_root() click to toggle source
# File lib/roda_api_generator/generators/roda.rb, line 11
def self.source_root
  File.join(File.dirname(__FILE__), '..', 'templates', 'roda')
end

Public Instance Methods

build_test_suite_folder() click to toggle source
# File lib/roda_api_generator/generators/roda.rb, line 15
def build_test_suite_folder
  empty_directory "#{name}/spec"
  copy_file 'spec/rspec.options', "#{name}/.rspec"
  template 'spec/spec_helper.rb.erb', "#{name}/spec/spec_helper.rb"
  copy_file 'spec/root_view_spec.rb', "#{name}/spec/root_view_spec.rb"
end
copy_config_ru() click to toggle source
# File lib/roda_api_generator/generators/roda.rb, line 34
def copy_config_ru
  copy_file 'config.ru', "#{name}/config.ru"
end
copy_env_file() click to toggle source
# File lib/roda_api_generator/generators/roda.rb, line 42
def copy_env_file
  copy_file '.env', "#{name}/.env"
end
copy_gemfile() click to toggle source
# File lib/roda_api_generator/generators/roda.rb, line 22
def copy_gemfile
  copy_file 'Gemfile', "#{name}/Gemfile"
end
copy_licence() click to toggle source
# File lib/roda_api_generator/generators/roda.rb, line 26
def copy_licence
  copy_file 'LICENSE', "#{name}/LICENSE"
end
copy_rakefile() click to toggle source
# File lib/roda_api_generator/generators/roda.rb, line 38
def copy_rakefile
  copy_file 'Rakefile', "#{name}/Rakefile"
end
copy_readme() click to toggle source
# File lib/roda_api_generator/generators/roda.rb, line 30
def copy_readme
  copy_file 'README.md', "#{name}/README.md"
end
set_up_application_folder() click to toggle source
# File lib/roda_api_generator/generators/roda.rb, line 46
def set_up_application_folder
  build_application_folder
  build_models_folder
  build_routes_folder
  build_operations_folder
  build_tasks_folder
  build_config_folder
  build_db_folder
end

Private Instance Methods

build_application_folder() click to toggle source
# File lib/roda_api_generator/generators/roda.rb, line 58
def build_application_folder
  empty_directory "#{name}/application"
  copy_file 'application/api.rb', "#{name}/application/api.rb"
  copy_file 'application/api/api_support.rb', "#{name}/application/api/api_support.rb"
end
build_config_folder() click to toggle source
# File lib/roda_api_generator/generators/roda.rb, line 64
def build_config_folder
  empty_directory "#{name}/application/config"
  copy_file 'application/config/database.rb', "#{name}/application/config/database.rb"
  copy_file 'application/config/sequel.rb', "#{name}/application/config/sequel.rb"
end
build_db_folder() click to toggle source
# File lib/roda_api_generator/generators/roda.rb, line 70
def build_db_folder
  empty_directory "#{name}/application/db"
  copy_file 'application/db/migrations/20180930152809_add_user_table.rb',
            "#{name}/application/db/migrations/20180930152809_add_user_table.rb"
  copy_file 'application/db/migrations/migration_template.rb',
            "#{name}/application/db/migrations/migration_template.rb"
end
build_models_folder() click to toggle source
# File lib/roda_api_generator/generators/roda.rb, line 78
def build_models_folder
  empty_directory "#{name}/application/api/models"
  copy_file 'application/api/models/user.rb', "#{name}/application/api/models/user.rb"
end
build_operations_folder() click to toggle source
# File lib/roda_api_generator/generators/roda.rb, line 83
def build_operations_folder
  empty_directory "#{name}/application/api/operations"
  copy_file 'application/api/operations/user_service.rb',
            "#{name}/application/api/operations/user_service.rb"
end
build_routes_folder() click to toggle source
# File lib/roda_api_generator/generators/roda.rb, line 95
def build_routes_folder
  empty_directory "#{name}/application/api/routes"
  copy_file 'application/api/routes/main.rb', "#{name}/application/api/routes/main.rb"
end
build_tasks_folder() click to toggle source
# File lib/roda_api_generator/generators/roda.rb, line 89
def build_tasks_folder
  empty_directory "#{name}/application/tasks"
  copy_file 'application/tasks/db.rake',
            "#{name}/application/tasks/db.rake"
end