Class: Import::Github::CancelProjectImportService

Inherits:
BaseService
  • Object
show all
Defined in:
app/services/import/github/cancel_project_import_service.rb

Instance Attribute Summary

Attributes inherited from BaseService

#current_user, #params, #project

Instance Method Summary collapse

Methods inherited from BaseService

#initialize

Methods included from BaseServiceUtility

#deny_visibility_level, #event_service, #log_error, #log_info, #notification_service, #system_hook_service, #todo_service, #visibility_level

Methods included from Gitlab::Allowable

#can?

Constructor Details

This class inherits a constructor from BaseService

Instance Method Details

#executeObject



6
7
8
9
10
11
12
13
14
15
16
17
18
# File 'app/services/import/github/cancel_project_import_service.rb', line 6

def execute
  return error('Not Found', :not_found) unless authorized_to_read?
  return error('Unauthorized access', :forbidden) unless authorized_to_cancel?

  if project.import_state.completed?
    error(cannot_cancel_error_message, :bad_request)
  else
    project.import_state.cancel
    metrics.track_canceled_import

    success(project: project)
  end
end