Welcome to mirror list, hosted at ThFree Co, Russian Federation.

gitlab.com/gitlab-org/gitlab-foss.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
Diffstat (limited to 'app/services/authorized_project_update/project_recalculate_service.rb')
-rw-r--r--app/services/authorized_project_update/project_recalculate_service.rb13
1 files changed, 10 insertions, 3 deletions
diff --git a/app/services/authorized_project_update/project_recalculate_service.rb b/app/services/authorized_project_update/project_recalculate_service.rb
index cbb8efaf99f..d70d0efc2af 100644
--- a/app/services/authorized_project_update/project_recalculate_service.rb
+++ b/app/services/authorized_project_update/project_recalculate_service.rb
@@ -26,7 +26,7 @@ module AuthorizedProjectUpdate
def current_authorizations
strong_memoize(:current_authorizations) do
- project.project_authorizations
+ apply_scopes(project.project_authorizations)
.pluck(:user_id, :access_level) # rubocop: disable CodeReuse/ActiveRecord
end
end
@@ -35,8 +35,7 @@ module AuthorizedProjectUpdate
strong_memoize(:fresh_authorizations) do
result = []
- Projects::Members::EffectiveAccessLevelFinder.new(project)
- .execute
+ effective_access_levels
.each_batch(of: BATCH_SIZE, column: :user_id) do |member_batch|
result += member_batch.pluck(:user_id, 'MAX(access_level)') # rubocop: disable CodeReuse/ActiveRecord
end
@@ -76,5 +75,13 @@ module AuthorizedProjectUpdate
end
end
end
+
+ def apply_scopes(project_authorizations)
+ project_authorizations
+ end
+
+ def effective_access_levels
+ Projects::Members::EffectiveAccessLevelFinder.new(project).execute
+ end
end
end