gitlab-org--gitlab-foss/app/models
Douwe Maan c11006ac6c Merge branch '18755-fix-destroy-project-causes-post_decline_request-to-be-executed' into 'master'
Resolve "Destroying a project causes post_decline_request to be executed"

## What does this MR do?

Ensure we don't send "access request declined" to access requesters when a project is deleted.

## Are there points in the code the reviewer needs to double check?

I've created a service to decouple the notification sending from the AR model.

## Why was this MR needed?

Because there was an issue.

## What are the relevant issue numbers?

Fixes #18755, #18750.

## Does this MR meet the acceptance criteria?

- [x] No CHANGELOG needed.
- [x] Tests
  - [x] Added for this feature/bug
  - [x] All builds are passing
- [x] Conform by the [style guides](https://gitlab.com/gitlab-org/gitlab-ce/blob/master/CONTRIBUTING.md#style-guides)
- [x] Branch has no merge conflicts with `master` (if you do - rebase it please)
- [x] [Squashed related commits together](https://git-scm.com/book/en/Git-Tools-Rewriting-History#Squashing-Commits)

See merge request !4744
2016-06-22 01:15:29 +00:00
..
ci Rename commit_data in Pipeline to commit 2016-06-21 14:43:37 +02:00
concerns
hooks
members
network
project_services
.gitkeep
ability.rb
abuse_report.rb
appearance.rb
application_setting.rb
audit_event.rb
award_emoji.rb
blob.rb
broadcast_message.rb
commit.rb Optimize Banzai::Filter::RelativeLinkFilter 2016-06-21 10:53:16 -04:00
commit_range.rb
commit_status.rb Rename commit_data in Pipeline to commit 2016-06-21 14:43:37 +02:00
deploy_key.rb
deploy_keys_project.rb
deployment.rb
email.rb
environment.rb
event.rb
external_issue.rb
forked_project_link.rb
generic_commit_status.rb
global_label.rb
global_milestone.rb
group.rb
identity.rb
issue.rb
key.rb
label.rb
label_link.rb
legacy_diff_note.rb
lfs_object.rb
lfs_objects_project.rb
member.rb
merge_request.rb
merge_request_diff.rb
milestone.rb
namespace.rb
note.rb
notification_setting.rb
oauth_access_token.rb
personal_access_token.rb
personal_snippet.rb
project.rb
project_group_link.rb
project_import_data.rb
project_snippet.rb
project_team.rb
project_wiki.rb
protected_branch.rb
release.rb
repository.rb
security_event.rb
sent_notification.rb
service.rb
snippet.rb
spam_log.rb
spam_report.rb
subscription.rb
todo.rb
tree.rb
u2f_registration.rb
user.rb
users_star_project.rb
wiki_page.rb