Sha256: 62d334a30a8273451bf6ebc9393d4ce361621294be5c8f269443e77dd711c9d9
Contents?: true
Size: 1.52 KB
Versions: 2
Compression:
Stored size: 1.52 KB
Contents
# frozen_string_literal: true require 'yaml' require 'rack' require 'rack/session' module MvcOne # Rack friendly launcher for project class Application # Main application config class Config def self.env ENV.fetch('APP_ENV', 'development') end def self.test? env == 'test' end def self.secrets YAML.load_file('config/secrets.yml')[Application::Config.env] end def self.db_config YAML.load_file('config/database.yml')[Application::Config.env] end end def initialize @router = RegexpRouter.new(File.join('app', 'config', 'routes.rb')) end def self.launch Rack::Builder.new do |builder| builder.use Rack::Session::Cookie, domain: 'localhost', path: '/', expire_after: 3600 * 24, secret: Application::Config.secrets['session_cookie'] builder.run Application.new end end def call(env) request = Rack::Request.new(env) result = @router.resolve(request.path, request.request_method) controller = result.controller.new(env, result.params, request) controller.resolve(result.action) end end end require_relative 'regexp_router' require_relative 'contracts/application_contract' require_relative 'controllers/application_controller' require_relative 'models/application_model' require_relative 'repositories/application_relation' require_relative 'repositories/application_repository' require_relative 'serializers/application_serializer'
Version data entries
2 entries across 2 versions & 1 rubygems
Version | Path |
---|---|
mvc_one-0.1.0.pre.rc7 | lib/mvc_one/application.rb |
mvc_one-0.1.0.pre.rc6 | lib/mvc_one/application.rb |