Class: Aai::SetupGenerator

Inherits:
Rails::Generators::Base
  • Object
show all
Includes:
Rails::Generators::Migration
Defined in:
lib/generators/aai/setup_generator.rb

Class Method Summary collapse

Instance Method Summary collapse

Class Method Details

.next_migration_number(path) ⇒ Object



35
36
37
38
39
40
41
42
# File 'lib/generators/aai/setup_generator.rb', line 35

def self.next_migration_number(path)
  unless @prev_migration_nr
    @prev_migration_nr = Time.now.utc.strftime("%Y%m%d%H%M%S").to_i
  else
    @prev_migration_nr += 1
  end
  @prev_migration_nr.to_s
end

Instance Method Details

#copy_initializer_fileObject

def self.source_root

@source_root ||= File.join(File.dirname(__FILE__), 'templates')

end



15
16
17
# File 'lib/generators/aai/setup_generator.rb', line 15

def copy_initializer_file
  copy_file "omniauth.rb", "config/initializers/omniauth.rb"
end

#copy_session_controller_fileObject



19
20
21
22
23
24
25
26
27
# File 'lib/generators/aai/setup_generator.rb', line 19

def copy_session_controller_file
  if true
    copy_file "session_controller.rb", "app/controllers/session_controller.rb"
    inject_into_class "app/controllers/application_controller.rb", ApplicationController, "  has_current_user\n"
    route("post '/auth/:provider/callback', to: 'session#create', as: 'auth_callback'")
    route("get '/auth/failure', to: 'session#failure', as: 'auth_failure'")
    route("get '/auth/logout',  to: 'session#destroy', as: 'logout'")
  end
end

#copy_user_fileObject



29
30
31
32
33
# File 'lib/generators/aai/setup_generator.rb', line 29

def copy_user_file
  template "user.rb", "app/models/user.rb"
  migration_template "migration.rb", "db/migrate/create_aai_user.rb" if options[:persist]
  rake "db:migrate"
end