class GemsGenerator::Grape::Generators::InitGenerator
Public Instance Methods
add_gems()
click to toggle source
# File lib/generators/gems_generator/grape/init_generator.rb, line 8 def add_gems gem "grape", '~>0.15.0' gem "grape_logging", git: "git@github.com:aserafin/grape_logging.git" gem "grape_on_rails_routes" gem_group :development, :staging, :test do gem "grape-swagger" gem "grape-swagger-rails", git: "git@github.com:ruby-grape/grape-swagger-rails.git" end gem 'rack-attack' end
cope_api_error_file()
click to toggle source
# File lib/generators/gems_generator/grape/init_generator.rb, line 56 def cope_api_error_file template "lib/api_error.rb", "lib/api_error.rb" template "locales/api_error/en.yml", "config/locales/api_error/en.yml" end
copy_base_api_rb()
click to toggle source
# File lib/generators/gems_generator/grape/init_generator.rb, line 20 def copy_base_api_rb template "base_api.rb.erb", File.join('app/api/',"#{file_name}_api.rb") end
copy_concerns_file()
click to toggle source
# File lib/generators/gems_generator/grape/init_generator.rb, line 25 def copy_concerns_file api_exception_handler_path = "concerns/api_exception_handler.rb" template api_exception_handler_path, File.join('app/api/', api_exception_handler_path) document_handler_path = "concerns/document_handler.rb" template document_handler_path, File.join('app/api/', document_handler_path) ping_pong_path = "concerns/ping_pong.rb" template ping_pong_path, File.join('app/api/', ping_pong_path) request_logger_path = "concerns/request_logger.rb" template request_logger_path, File.join('app/api/', request_logger_path) end
copy_swagger_file()
click to toggle source
# File lib/generators/gems_generator/grape/init_generator.rb, line 50 def copy_swagger_file swagger_path = "config/initializers/swagger.rb" template "initializers/swagger.rb", swagger_path end
create_rack_attack_rb()
click to toggle source
# File lib/generators/gems_generator/grape/init_generator.rb, line 62 def create_rack_attack_rb template "initializers/rack-attack.rb", "config/initializers/rack-attack.rb" end
insert_application_rb()
click to toggle source
# File lib/generators/gems_generator/grape/init_generator.rb, line 67 def insert_application_rb inject_into_file "config/application.rb", after: "Rails::Application\n" do " config.autoload_paths << Rails.root.join('lib')\n" + " config.eager_load_paths << Rails.root.join('lib')\n" end inject_into_file "config/application.rb", after: "Rails::Application\n" do " config.i18n.load_path += Dir[Rails.root.join('config', 'locales', '**/*.{rb,yml}').to_s]\n" + " config.i18n.available_locales = %w(en zh-CN kr ja)\n" + " config.i18n.fallbacks = [:en]\n" end end
insert_grape_routes()
click to toggle source
# File lib/generators/gems_generator/grape/init_generator.rb, line 40 def insert_grape_routes route "mount #{class_name}API => '/'" end
insert_grape_swagger_routes()
click to toggle source
# File lib/generators/gems_generator/grape/init_generator.rb, line 45 def insert_grape_swagger_routes route "mount GrapeSwaggerRails::Engine => '/swagger' unless Rails.env.production?" end