diff options
author | Douglas Barbosa Alexandre <dbalexandre@gmail.com> | 2019-02-05 16:15:07 +0000 |
---|---|---|
committer | Douglas Barbosa Alexandre <dbalexandre@gmail.com> | 2019-02-05 16:15:07 +0000 |
commit | a14db4a22441a835758b0d50e37024606662d0e8 (patch) | |
tree | 0edef1d3d2e852c4ab4cd904f6a2e4335a335fec | |
parent | e37abfbb10c302963544b2aaaea286e807a6dd00 (diff) | |
parent | 787cbc89769a6d2f2568187cc987ba9308346c21 (diff) | |
download | gitlab-ce-a14db4a22441a835758b0d50e37024606662d0e8.tar.gz |
Merge branch 'ce-reduce-diff-in-search-global_service' into 'master'
Reduce diff with EE in Search::GlobalService
See merge request gitlab-org/gitlab-ce!24914
-rw-r--r-- | app/services/search/global_service.rb | 14 |
1 files changed, 10 insertions, 4 deletions
diff --git a/app/services/search/global_service.rb b/app/services/search/global_service.rb index cb1bf0a03a5..d6af26d949d 100644 --- a/app/services/search/global_service.rb +++ b/app/services/search/global_service.rb @@ -2,6 +2,8 @@ module Search class GlobalService + include Gitlab::Utils::StrongMemoize + attr_accessor :current_user, :params attr_reader :default_project_filter @@ -19,11 +21,15 @@ module Search @projects ||= ProjectsFinder.new(current_user: current_user).execute end - def scope - @scope ||= begin - allowed_scopes = %w[issues merge_requests milestones] + def allowed_scopes + strong_memoize(:allowed_scopes) do + %w[issues merge_requests milestones] + end + end - allowed_scopes.delete(params[:scope]) { 'projects' } + def scope + strong_memoize(:scope) do + allowed_scopes.include?(params[:scope]) ? params[:scope] : 'projects' end end end |