Commit f19cdee8cc1e85066154d008ee2653d845c9f3cd

Authored by Dmitriy Zaporozhets
1 parent 8bfc62fb

Remove commit_load_context.rb

Signed-off-by: Dmitriy Zaporozhets <dmitriy.zaporozhets@gmail.com>
app/contexts/commit_load_context.rb
@@ -1,34 +0,0 @@ @@ -1,34 +0,0 @@
1 -class CommitLoadContext < BaseContext  
2 - def execute  
3 - result = {  
4 - commit: nil,  
5 - suppress_diff: false,  
6 - line_notes: [],  
7 - notes_count: 0,  
8 - note: nil,  
9 - status: :ok  
10 - }  
11 -  
12 - commit = project.repository.commit(params[:id])  
13 -  
14 - if commit  
15 - line_notes = project.notes.for_commit_id(commit.id).inline  
16 -  
17 - result[:commit] = commit  
18 - result[:note] = project.build_commit_note(commit)  
19 - result[:line_notes] = line_notes  
20 - result[:notes_count] = project.notes.for_commit_id(commit.id).count  
21 - result[:branches] = project.repository.branch_names_contains(commit.id)  
22 -  
23 - begin  
24 - result[:suppress_diff] = true if commit.diff_suppress? && !params[:force_show_diff]  
25 - result[:force_suppress_diff] = commit.diff_force_suppress?  
26 - rescue Grit::Git::GitTimeout  
27 - result[:suppress_diff] = true  
28 - result[:status] = :huge_commit  
29 - end  
30 - end  
31 -  
32 - result  
33 - end  
34 -end  
app/controllers/projects/commit_controller.rb
@@ -6,30 +6,31 @@ class Projects::CommitController &lt; Projects::ApplicationController @@ -6,30 +6,31 @@ class Projects::CommitController &lt; Projects::ApplicationController
6 before_filter :authorize_read_project! 6 before_filter :authorize_read_project!
7 before_filter :authorize_code_access! 7 before_filter :authorize_code_access!
8 before_filter :require_non_empty_project 8 before_filter :require_non_empty_project
  9 + before_filter :commit
9 10
10 def show 11 def show
11 - result = CommitLoadContext.new(project, current_user, params).execute 12 + return git_not_found! unless @commit
12 13
13 - @commit = result[:commit] 14 + @line_notes = project.notes.for_commit_id(commit.id).inline
  15 + @branches = project.repository.branch_names_contains(commit.id)
14 16
15 - if @commit.nil?  
16 - git_not_found!  
17 - return 17 + begin
  18 + @suppress_diff = true if commit.diff_suppress? && !params[:force_show_diff]
  19 + @force_suppress_diff = commit.diff_force_suppress?
  20 + rescue Grit::Git::GitTimeout
  21 + @suppress_diff = true
  22 + @status = :huge_commit
18 end 23 end
19 24
20 - @suppress_diff = result[:suppress_diff]  
21 - @force_suppress_diff = result[:force_suppress_diff]  
22 -  
23 - @note = result[:note]  
24 - @line_notes = result[:line_notes]  
25 - @branches = result[:branches]  
26 - @notes_count = result[:notes_count] 25 + @note = project.build_commit_note(commit)
  26 + @notes_count = project.notes.for_commit_id(commit.id).count
27 @notes = project.notes.for_commit_id(@commit.id).not_inline.fresh 27 @notes = project.notes.for_commit_id(@commit.id).not_inline.fresh
28 @noteable = @commit 28 @noteable = @commit
29 -  
30 @comments_allowed = @reply_allowed = true 29 @comments_allowed = @reply_allowed = true
31 - @comments_target = { noteable_type: 'Commit',  
32 - commit_id: @commit.id } 30 + @comments_target = {
  31 + noteable_type: 'Commit',
  32 + commit_id: @commit.id
  33 + }
33 34
34 respond_to do |format| 35 respond_to do |format|
35 format.html do 36 format.html do
@@ -42,4 +43,8 @@ class Projects::CommitController &lt; Projects::ApplicationController @@ -42,4 +43,8 @@ class Projects::CommitController &lt; Projects::ApplicationController
42 format.patch { render text: @commit.to_patch } 43 format.patch { render text: @commit.to_patch }
43 end 44 end
44 end 45 end
  46 +
  47 + def commit
  48 + @commit ||= project.repository.commit(params[:id])
  49 + end
45 end 50 end
lib/api/repositories.rb
@@ -124,9 +124,9 @@ module API @@ -124,9 +124,9 @@ module API
124 # GET /projects/:id/repository/commits/:sha/diff 124 # GET /projects/:id/repository/commits/:sha/diff
125 get ":id/repository/commits/:sha/diff" do 125 get ":id/repository/commits/:sha/diff" do
126 sha = params[:sha] 126 sha = params[:sha]
127 - result = CommitLoadContext.new(user_project, current_user, {id: sha}).execute  
128 - not_found! "Commit" unless result[:commit]  
129 - result[:commit].diffs 127 + commit = user_project.repository.commit(sha)
  128 + not_found! "Commit" unless commit
  129 + commit.diffs
130 end 130 end
131 131
132 # Get a project repository tree 132 # Get a project repository tree