Class: Resolvers::UserMergeRequestsResolverBase

Inherits:
MergeRequestsResolver show all
Includes:
ResolvesProject
Defined in:
app/graphql/resolvers/user_merge_requests_resolver_base.rb

Instance Attribute Summary collapse

Instance Method Summary collapse

Methods included from ResolvesProject

#resolve_project

Methods inherited from MergeRequestsResolver

accept_assignee, accept_author, accept_reviewer, single, #some_argument_is_empty?

Methods included from Gitlab::Graphql::NegatableArguments

#negated

Methods included from ResolvesMergeRequests

#early_return, #resolve_with_lookahead

Methods included from LooksAhead

#apply_lookahead

Methods inherited from BaseResolver

as_single, authorization, authorized?, before_connection_authorization, before_connection_authorization_block, calculate_ext_conn_complexity, calls_gitaly!, complexity, complexity_multiplier, #current_user, field_options, last, #object, #offset_pagination, requires_argument!, resolver_complexity, #select_result, single, #single?, single_definition_blocks, singular_type, when_single

Methods included from Gitlab::Utils::Override

#extended, extensions, #included, #method_added, #override, #prepended, #queue_verification, verify!

Instance Attribute Details

#projectObject (readonly)

Returns the value of attribute project.



31
32
33
# File 'app/graphql/resolvers/user_merge_requests_resolver_base.rb', line 31

def project
  @project
end

Instance Method Details

#ready?(project_id: nil, project_path: nil, **args) ⇒ Boolean

Returns:

  • (Boolean)


34
35
36
37
38
39
40
41
42
43
44
45
# File 'app/graphql/resolvers/user_merge_requests_resolver_base.rb', line 34

def ready?(project_id: nil, project_path: nil, **args)
  return early_return unless can_read_profile?

  if project_id || project_path
    load_project(project_path, project_id)
    return early_return unless can_read_project?
  elsif args[:iids].present?
    raise ::Gitlab::Graphql::Errors::ArgumentError, 'iids requires projectPath or projectId'
  end

  super(**args)
end

#resolve(**args) ⇒ Object



47
48
49
50
51
# File 'app/graphql/resolvers/user_merge_requests_resolver_base.rb', line 47

def resolve(**args)
  prepare_args(args)
  key = :"#{user_role}_id"
  super(key => user.id, **args)
end

#user_roleObject

Raises:

  • (NotImplementedError)


53
54
55
# File 'app/graphql/resolvers/user_merge_requests_resolver_base.rb', line 53

def user_role
  raise NotImplementedError
end