summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorDouwe Maan <douwe@selenight.nl>2017-08-23 13:43:44 +0200
committerDouwe Maan <douwe@selenight.nl>2017-08-23 13:43:44 +0200
commit57ec26f0f824fb9b461f62bfe4984b81335268a4 (patch)
treebebe605647f259830fa6ebf54c3f9cfcbb062ea6
parent101d52b360a6a43f1633c5dd60b78e37bc8c4339 (diff)
downloadgitlab-ce-dm-last-commit-json.tar.gz
Use Commit entity for tree and blob last_commit, adding commit_pathdm-last-commit-json
-rw-r--r--app/controllers/projects/tree_controller.rb2
-rw-r--r--app/serializers/blob_entity.rb4
-rw-r--r--app/serializers/tree_entity.rb4
-rw-r--r--app/serializers/tree_root_entity.rb4
4 files changed, 9 insertions, 5 deletions
diff --git a/app/controllers/projects/tree_controller.rb b/app/controllers/projects/tree_controller.rb
index 1fc276b8c03..5245f1a81fd 100644
--- a/app/controllers/projects/tree_controller.rb
+++ b/app/controllers/projects/tree_controller.rb
@@ -35,7 +35,7 @@ class Projects::TreeController < Projects::ApplicationController
end
format.json do
- render json: TreeSerializer.new(project: @project, repository: @repository, ref: @ref).represent(@tree)
+ render json: TreeSerializer.new(project: @project, repository: @repository, ref: @ref, commit: @commit).represent(@tree)
end
end
end
diff --git a/app/serializers/blob_entity.rb b/app/serializers/blob_entity.rb
index 56f173e5a27..e894a003a2c 100644
--- a/app/serializers/blob_entity.rb
+++ b/app/serializers/blob_entity.rb
@@ -3,8 +3,8 @@ class BlobEntity < Grape::Entity
expose :id, :path, :name, :mode
- expose :last_commit do |blob|
- request.project.repository.last_commit_for_path(blob.commit_id, blob.path)
+ expose :last_commit, using: CommitEntity do |blob|
+ request.project.repository.last_commit_for_path(request.commit.id, blob.path)
end
expose :icon do |blob|
diff --git a/app/serializers/tree_entity.rb b/app/serializers/tree_entity.rb
index 555e5cf83bd..5cda5997642 100644
--- a/app/serializers/tree_entity.rb
+++ b/app/serializers/tree_entity.rb
@@ -3,8 +3,8 @@ class TreeEntity < Grape::Entity
expose :id, :path, :name, :mode
- expose :last_commit do |tree|
- request.project.repository.last_commit_for_path(tree.commit_id, tree.path)
+ expose :last_commit, using: CommitEntity do |tree|
+ request.project.repository.last_commit_for_path(request.commit.id, tree.path)
end
expose :icon do |tree|
diff --git a/app/serializers/tree_root_entity.rb b/app/serializers/tree_root_entity.rb
index 69702ae1493..f42205ecb1d 100644
--- a/app/serializers/tree_root_entity.rb
+++ b/app/serializers/tree_root_entity.rb
@@ -2,6 +2,10 @@
class TreeRootEntity < Grape::Entity
include RequestAwareEntity
+ expose :last_commit, using: CommitEntity do |tree|
+ request.project.repository.last_commit_for_path(request.commit.id, tree.path) || request.commit
+ end
+
expose :path
expose :trees, using: TreeEntity