Class: Oath::Generators::GoogleOauth2Generator

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

Class Method Summary collapse

Instance Method Summary collapse

Methods included from Migration

#migration_version

Class Method Details

.next_migration_number(dir) ⇒ Object



32
33
34
# File 'lib/generators/oath/google_oauth2/google_oauth2_generator.rb', line 32

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

Instance Method Details

#add_controllersObject



28
29
30
# File 'lib/generators/oath/google_oauth2/google_oauth2_generator.rb', line 28

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

#add_gemsObject



12
13
14
# File 'lib/generators/oath/google_oauth2/google_oauth2_generator.rb', line 12

def add_gems
  gem "omniauth-google-oauth2"
end

#add_initializerObject



20
21
22
# File 'lib/generators/oath/google_oauth2/google_oauth2_generator.rb', line 20

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

#add_modelObject



36
37
38
39
# File 'lib/generators/oath/google_oauth2/google_oauth2_generator.rb', line 36

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", migration_version: migration_version
end

#add_routesObject



24
25
26
# File 'lib/generators/oath/google_oauth2/google_oauth2_generator.rb', line 24

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

#add_servicesObject



16
17
18
# File 'lib/generators/oath/google_oauth2/google_oauth2_generator.rb', line 16

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

#display_readmeObject



41
42
43
# File 'lib/generators/oath/google_oauth2/google_oauth2_generator.rb', line 41

def display_readme
  readme 'google_oauth2_readme'
end