diff options
Diffstat (limited to 'app/graphql/resolvers/namespace_projects_resolver.rb')
-rw-r--r-- | app/graphql/resolvers/namespace_projects_resolver.rb | 9 |
1 files changed, 8 insertions, 1 deletions
diff --git a/app/graphql/resolvers/namespace_projects_resolver.rb b/app/graphql/resolvers/namespace_projects_resolver.rb index c221cb9aed6..9f57c8f3405 100644 --- a/app/graphql/resolvers/namespace_projects_resolver.rb +++ b/app/graphql/resolvers/namespace_projects_resolver.rb @@ -23,7 +23,6 @@ module Resolvers # The namespace could have been loaded in batch by `BatchLoader`. # At this point we need the `id` or the `full_path` of the namespace # to query for projects, so make sure it's loaded and not `nil` before continuing. - namespace = object.respond_to?(:sync) ? object.sync : object return Project.none if namespace.nil? query = include_subgroups ? namespace.all_projects.with_route : namespace.projects.with_route @@ -41,6 +40,14 @@ module Resolvers complexity = super complexity + 10 end + + private + + def namespace + strong_memoize(:namespace) do + object.respond_to?(:sync) ? object.sync : object + end + end end end |