Class: Monban::Generators::GoogleOauth2Generator

Inherits:
Rails::Generators::Base
  • Object
show all
Includes:
Rails::Generators::Migration
Defined in:
lib/generators/monban/google_oauth2/google_oauth2_generator.rb

Class Method Summary collapse

Instance Method Summary collapse

Class Method Details

.next_migration_number(dir) ⇒ Object



29
30
31
# File 'lib/generators/monban/google_oauth2/google_oauth2_generator.rb', line 29

def self.next_migration_number(dir)
  ActiveRecord::Generators::Base.next_migration_number(dir)
end

Instance Method Details

#add_controllersObject



25
26
27
# File 'lib/generators/monban/google_oauth2/google_oauth2_generator.rb', line 25

def add_controllers
  template 'app/controllers/external_credentials_controller.rb', 'app/controllers/external_credentials_controller.rb'
end

#add_gemsObject



9
10
11
# File 'lib/generators/monban/google_oauth2/google_oauth2_generator.rb', line 9

def add_gems
  gem "omniauth-google-oauth2"
end

#add_initializerObject



17
18
19
# File 'lib/generators/monban/google_oauth2/google_oauth2_generator.rb', line 17

def add_initializer
  template 'config/initializers/omniauth.rb', 'config/initializers/omniauth.rb'
end

#add_modelObject



33
34
35
36
# File 'lib/generators/monban/google_oauth2/google_oauth2_generator.rb', line 33

def add_model
  template 'app/models/external_credential.rb', 'app/models/external_credential.rb'
  migration_template "db/migrate/create_external_credentials.rb", "db/migrate/create_external_credentials.rb"
end

#add_routesObject



21
22
23
# File 'lib/generators/monban/google_oauth2/google_oauth2_generator.rb', line 21

def add_routes
  route(%{get "auth/:provider/callback" => "external_credentials#create"})
end

#add_servicesObject



13
14
15
# File 'lib/generators/monban/google_oauth2/google_oauth2_generator.rb', line 13

def add_services
  template 'app/services/external_authentication.rb', 'app/services/external_authentication.rb'
end

#display_readmeObject



38
39
40
# File 'lib/generators/monban/google_oauth2/google_oauth2_generator.rb', line 38

def display_readme
  readme 'google_oauth2_readme'
end