summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authortiagonbotelho <tiagonbotelho@hotmail.com>2016-02-29 16:50:59 +0000
committerYorick Peterse <yorickpeterse@gmail.com>2016-03-07 21:59:39 +0100
commitd9e646a796795de43b23a27b74289f44255810e3 (patch)
tree3f4ee0da5c8573b8e2234eca72c725cd87a12d30
parent85de3f69558af88ad0af8716ee6fb7197b2d28df (diff)
downloadgitlab-ce-d9e646a796795de43b23a27b74289f44255810e3.tar.gz
moves method to repository model
-rw-r--r--app/models/project.rb8
-rw-r--r--app/models/repository.rb12
2 files changed, 13 insertions, 7 deletions
diff --git a/app/models/project.rb b/app/models/project.rb
index 92aef8a60f4..3b565ef809a 100644
--- a/app/models/project.rb
+++ b/app/models/project.rb
@@ -947,12 +947,6 @@ class Project < ActiveRecord::Base
end
def main_language
- unless empty_repo?
- Rails.cache.fetch([self, "language"]) do
- Linguist::Repository.new(
- @repository.rugged,
- @repository.rugged.head.target_id).language
- end
- end
+ @main_language = repository.main_language
end
end
diff --git a/app/models/repository.rb b/app/models/repository.rb
index c135ab61f6a..f911611acab 100644
--- a/app/models/repository.rb
+++ b/app/models/repository.rb
@@ -812,6 +812,18 @@ class Repository
raw_repository.ls_files(actual_ref)
end
+ def main_language
+ return @main_language unless @main_language.nil?
+
+ unless empty?
+ @main_language = cache.fetch(:main_language) do
+ Linguist::Repository.new(
+ rugged,
+ rugged.head.target_id).language
+ end
+ end
+ end
+
private
def cache