From: Michal Fojtik <[email protected]>

* Thinks like :default_driver and :logger are same
  for all three frontends.

Signed-off-by: Michal fojtik <[email protected]>
---
 server/config.ru              |   32 ++++++++++----------------------
 server/lib/deltacloud_rack.rb |    4 ++--
 2 files changed, 12 insertions(+), 24 deletions(-)

diff --git a/server/config.ru b/server/config.ru
index 26c22d6..a5f1d0a 100644
--- a/server/config.ru
+++ b/server/config.ru
@@ -26,24 +26,18 @@ Deltacloud::configure do |server|
   server.root_url '/api'
   server.version Deltacloud::API_VERSION
   server.klass 'Deltacloud::API'
-  server.logger Rack::DeltacloudLogger.setup(ENV['API_LOG'], 
ENV['API_VERBOSE'])
-  server.default_driver ENV['API_DRIVER']
 end
 
 Deltacloud::configure(:cimi) do |server|
   server.root_url '/cimi'
   server.version Deltacloud::API_VERSION
   server.klass 'CIMI::API'
-  server.logger Rack::DeltacloudLogger.setup(ENV['API_LOG'], 
ENV['API_VERBOSE'])
-  server.default_driver ENV['API_DRIVER']
 end
 
 Deltacloud::configure(:ec2) do |server|
   server.root_url '/ec2'
   server.version '2012-04-01'
   server.klass 'Deltacloud::EC2::API'
-  server.logger Rack::DeltacloudLogger.setup(ENV['API_LOG'], 
ENV['API_VERBOSE'])
-  server.default_driver ENV['API_DRIVER']
 end
 
 routes = {}
@@ -66,25 +60,19 @@ if ENV['API_FRONTEND'].split(',').size > 1
 else
   Deltacloud[ENV['API_FRONTEND'].to_sym].require!
   Deltacloud[ENV['API_FRONTEND'].to_sym].default_frontend!
-  class IndexEntrypoint < Sinatra::Base
-    get "/" do
-      redirect Deltacloud.default_frontend.root_url, 301
-    end
-  end
-  routes['/'] = IndexEntrypoint.new
-  routes[Deltacloud.default_frontend.root_url] = 
Deltacloud.default_frontend.klass
+  routes.merge!({
+    Deltacloud.default_frontend.root_url => Deltacloud.default_frontend.klass
+  })
 end
 
+# Mount static assets directory
+#
+routes.merge!({
+  "/stylesheets" =>  Rack::Directory.new( File.join(File.dirname(__FILE__), 
"public", "stylesheets") ),
+  "/javascripts" =>  Rack::Directory.new( File.join(File.dirname(__FILE__), 
"public", "javascripts") )
+})
 
 run Rack::Builder.new {
   use Rack::MatrixParams
-  use Rack::DriverSelect
-
-  routes.merge!({
-    "/stylesheets" =>  Rack::Directory.new( File.join(File.dirname(__FILE__), 
"public", "stylesheets") ),
-    "/javascripts" =>  Rack::Directory.new( File.join(File.dirname(__FILE__), 
"public", "javascripts") )
-  })
-
   run Rack::URLMap.new(routes)
-
-} if respond_to? :run
+}
diff --git a/server/lib/deltacloud_rack.rb b/server/lib/deltacloud_rack.rb
index fe99be8..4b5898f 100644
--- a/server/lib/deltacloud_rack.rb
+++ b/server/lib/deltacloud_rack.rb
@@ -66,8 +66,8 @@ module Deltacloud
       @root_url = opts[:root_url]
       @version = opts[:version]
       @klass = opts[:klass]
-      @logger = opts[:logger] || Rack::DeltacloudLogger
-      @default_driver = opts[:default_driver] || :mock
+      @logger = opts[:logger] || Rack::DeltacloudLogger.setup(ENV['API_LOG'], 
ENV['API_VERBOSE'])
+      @default_driver = opts[:default_driver] || ENV['API_DRIVER'] || :mock
       instance_eval(&block)
     end
 
-- 
1.7.10.2

Reply via email to