OSDN Git Service

Refactor API classes. So api classes like Gitlab::Issues become API::Issues
authorDmitriy Zaporozhets <dmitriy.zaporozhets@gmail.com>
Tue, 14 May 2013 12:33:31 +0000 (15:33 +0300)
committerDmitriy Zaporozhets <dmitriy.zaporozhets@gmail.com>
Tue, 14 May 2013 12:33:31 +0000 (15:33 +0300)
27 files changed:
app/controllers/application_controller.rb
config/routes.rb
lib/api/api.rb [moved from lib/api.rb with 98% similarity]
lib/api/entities.rb
lib/api/groups.rb
lib/api/helpers.rb
lib/api/internal.rb
lib/api/issues.rb
lib/api/merge_requests.rb
lib/api/milestones.rb
lib/api/notes.rb
lib/api/projects.rb
lib/api/session.rb
lib/api/system_hooks.rb
lib/api/users.rb
spec/requests/api/groups_spec.rb
spec/requests/api/internal_spec.rb
spec/requests/api/issues_spec.rb
spec/requests/api/merge_requests_spec.rb
spec/requests/api/milestones_spec.rb
spec/requests/api/notes_spec.rb
spec/requests/api/projects_spec.rb
spec/requests/api/session_spec.rb
spec/requests/api/system_hooks_spec.rb
spec/requests/api/users_spec.rb
spec/routing/routing_spec.rb
spec/support/api_helpers.rb

index a6a887f..dfc1fdc 100644 (file)
@@ -152,7 +152,7 @@ class ApplicationController < ActionController::Base
 
   def add_gon_variables
     gon.default_issues_tracker = Project.issues_tracker.default_value
-    gon.api_version = Gitlab::API.version
+    gon.api_version = API::API.version
     gon.api_token = current_user.private_token if current_user
     gon.gravatar_url = request.ssl? ? Gitlab.config.gravatar.ssl_url : Gitlab.config.gravatar.plain_url
     gon.relative_url_root = Gitlab.config.gitlab.relative_url_root
index 0e60aeb..0b0bd29 100644 (file)
@@ -1,4 +1,5 @@
 require 'sidekiq/web'
+require 'api/api'
 
 Gitlab::Application.routes.draw do
   #
@@ -7,9 +8,8 @@ Gitlab::Application.routes.draw do
   get 'search' => "search#show"
 
   # API
-  require 'api'
-  Gitlab::API.logger Rails.logger
-  mount Gitlab::API => '/api'
+  API::API.logger Rails.logger
+  mount API::API => '/api'
 
   constraint = lambda { |request| request.env["warden"].authenticate? and request.env['warden'].user.admin? }
   constraints constraint do
similarity index 98%
rename from lib/api.rb
rename to lib/api/api.rb
index 082769d..28e6add 100644 (file)
@@ -1,6 +1,6 @@
 Dir["#{Rails.root}/lib/api/*.rb"].each {|file| require file}
 
-module Gitlab
+module API
   class API < Grape::API
     version 'v3', using: :path
 
index 3fe4abc..c3c351e 100644 (file)
@@ -1,4 +1,4 @@
-module Gitlab
+module API
   module Entities
     class User < Grape::Entity
       expose :id, :username, :email, :name, :bio, :skype, :linkedin, :twitter,
index efdbeb1..701f677 100644 (file)
@@ -1,4 +1,4 @@
-module Gitlab
+module API
   # groups API
   class Groups < Grape::API
     before { authenticate! }
index f12fb5f..94cf4f2 100644 (file)
@@ -1,4 +1,4 @@
-module Gitlab
+module API
   module APIHelpers
     def current_user
       @current_user ||= User.find_by_authentication_token(params[:private_token] || env["HTTP_PRIVATE_TOKEN"])
index 3e1173b..a602dc0 100644 (file)
@@ -1,4 +1,4 @@
-module Gitlab
+module API
   # Internal access API
   class Internal < Grape::API
     namespace 'internal' do
@@ -58,7 +58,7 @@ module Gitlab
 
       get "/check" do
         {
-          api_version: Gitlab::API.version,
+          api_version: API.version,
           gitlab_version: Gitlab::VERSION,
           gitlab_rev: Gitlab::REVISION,
         }
index 500a855..53e2e8c 100644 (file)
@@ -1,4 +1,4 @@
-module Gitlab
+module API
   # Issues API
   class Issues < Grape::API
     before { authenticate! }
index d5595d5..23e2f82 100644 (file)
@@ -1,4 +1,4 @@
-module Gitlab
+module API
   # MergeRequest API
   class MergeRequests < Grape::API
     before { authenticate! }
index 1adeefe..a25bbad 100644 (file)
@@ -1,4 +1,4 @@
-module Gitlab
+module API
   # Milestones API
   class Milestones < Grape::API
     before { authenticate! }
index 450faae..cb2bc76 100644 (file)
@@ -1,4 +1,4 @@
-module Gitlab
+module API
   # Notes API
   class Notes < Grape::API
     before { authenticate! }
index 18e912f..d9743b4 100644 (file)
@@ -1,4 +1,4 @@
-module Gitlab
+module API
   # Projects API
   class Projects < Grape::API
     before { authenticate! }
index b405016..509acde 100644 (file)
@@ -1,4 +1,4 @@
-module Gitlab
+module API
   # Users API
   class Session < Grape::API
     # Login to get token
index 9e3574e..3e239c5 100644 (file)
@@ -1,4 +1,4 @@
-module Gitlab
+module API
   # Hooks API
   class SystemHooks < Grape::API
     before {
index cda5434..84256b5 100644 (file)
@@ -1,4 +1,4 @@
-module Gitlab
+module API
   # Users API
   class Users < Grape::API
     before { authenticate! }
index cf284b6..d2e25fb 100644 (file)
@@ -1,6 +1,6 @@
 require 'spec_helper'
 
-describe Gitlab::API do
+describe API::API do
   include ApiHelpers
 
   let(:user1)  { create(:user) }
index ba11a41..5a43953 100644 (file)
@@ -1,6 +1,6 @@
 require 'spec_helper'
 
-describe Gitlab::API do
+describe API::API do
   include ApiHelpers
 
   let(:user) { create(:user) }
@@ -12,7 +12,7 @@ describe Gitlab::API do
       get api("/internal/check")
 
       response.status.should == 200
-      json_response['api_version'].should == Gitlab::API.version
+      json_response['api_version'].should == API::API.version
     end
   end
 
index ecf0bdb..d5f7536 100644 (file)
@@ -1,6 +1,6 @@
 require 'spec_helper'
 
-describe Gitlab::API do
+describe API::API do
   include ApiHelpers
 
   let(:user) { create(:user) }
index 25bbd98..5bf228a 100644 (file)
@@ -1,6 +1,6 @@
 require "spec_helper"
 
-describe Gitlab::API do
+describe API::API do
   include ApiHelpers
 
   let(:user) { create(:user ) }
index c9a1041..af12c08 100644 (file)
@@ -1,6 +1,6 @@
 require 'spec_helper'
 
-describe Gitlab::API do
+describe API::API do
   include ApiHelpers
   before(:each) { enable_observers }
 
index 9016408..78d55a7 100644 (file)
@@ -1,6 +1,6 @@
 require 'spec_helper'
 
-describe Gitlab::API do
+describe API::API do
   include ApiHelpers
 
   let(:user) { create(:user) }
index 7aeee35..4346bfe 100644 (file)
@@ -1,6 +1,6 @@
 require 'spec_helper'
 
-describe Gitlab::API do
+describe API::API do
   include ApiHelpers
   before(:each) { enable_observers }
 
index 4a37312..88c17f2 100644 (file)
@@ -1,6 +1,6 @@
 require 'spec_helper'
 
-describe Gitlab::API do
+describe API::API do
   include ApiHelpers
 
   let(:user) { create(:user) }
index 647e31c..b1df3cb 100644 (file)
@@ -1,6 +1,6 @@
 require 'spec_helper'
 
-describe Gitlab::API do
+describe API::API do
   include ApiHelpers
 
   let(:user) { create(:user) }
index b4688dd..33df9f7 100644 (file)
@@ -1,6 +1,6 @@
 require 'spec_helper'
 
-describe Gitlab::API do
+describe API::API do
   include ApiHelpers
 
   let(:user)  { create(:user) }
index 5ad8165..049cfea 100644 (file)
@@ -7,7 +7,7 @@ describe SearchController, "routing" do
   end
 end
 
-# gitlab_api /api         Gitlab::API
+# gitlab_api /api         API::API
 #     resque /info/resque Resque::Server
 #            /:path       Grack
 describe "Mounted Apps", "routing" do
index c4514bf..ec9a326 100644 (file)
@@ -18,7 +18,7 @@ module ApiHelpers
   #
   # Returns the relative path to the requested API resource
   def api(path, user = nil)
-    "/api/#{Gitlab::API.version}#{path}" +
+    "/api/#{API::API.version}#{path}" +
 
       # Normalize query string
       (path.index('?') ? '' : '?') +