code.gitea.io/gitea@v1.21.7/services/notify/notifier.go (about) 1 // Copyright 2018 The Gitea Authors. All rights reserved. 2 // SPDX-License-Identifier: MIT 3 4 package notify 5 6 import ( 7 "context" 8 9 issues_model "code.gitea.io/gitea/models/issues" 10 packages_model "code.gitea.io/gitea/models/packages" 11 repo_model "code.gitea.io/gitea/models/repo" 12 user_model "code.gitea.io/gitea/models/user" 13 "code.gitea.io/gitea/modules/git" 14 "code.gitea.io/gitea/modules/repository" 15 ) 16 17 // Notifier defines an interface to notify receiver 18 type Notifier interface { 19 Run() 20 21 AdoptRepository(ctx context.Context, doer, u *user_model.User, repo *repo_model.Repository) 22 CreateRepository(ctx context.Context, doer, u *user_model.User, repo *repo_model.Repository) 23 MigrateRepository(ctx context.Context, doer, u *user_model.User, repo *repo_model.Repository) 24 DeleteRepository(ctx context.Context, doer *user_model.User, repo *repo_model.Repository) 25 ForkRepository(ctx context.Context, doer *user_model.User, oldRepo, repo *repo_model.Repository) 26 RenameRepository(ctx context.Context, doer *user_model.User, repo *repo_model.Repository, oldRepoName string) 27 TransferRepository(ctx context.Context, doer *user_model.User, repo *repo_model.Repository, oldOwnerName string) 28 RepoPendingTransfer(ctx context.Context, doer, newOwner *user_model.User, repo *repo_model.Repository) 29 30 NewIssue(ctx context.Context, issue *issues_model.Issue, mentions []*user_model.User) 31 IssueChangeStatus(ctx context.Context, doer *user_model.User, commitID string, issue *issues_model.Issue, actionComment *issues_model.Comment, closeOrReopen bool) 32 DeleteIssue(ctx context.Context, doer *user_model.User, issue *issues_model.Issue) 33 IssueChangeMilestone(ctx context.Context, doer *user_model.User, issue *issues_model.Issue, oldMilestoneID int64) 34 IssueChangeAssignee(ctx context.Context, doer *user_model.User, issue *issues_model.Issue, assignee *user_model.User, removed bool, comment *issues_model.Comment) 35 PullRequestReviewRequest(ctx context.Context, doer *user_model.User, issue *issues_model.Issue, reviewer *user_model.User, isRequest bool, comment *issues_model.Comment) 36 IssueChangeContent(ctx context.Context, doer *user_model.User, issue *issues_model.Issue, oldContent string) 37 IssueClearLabels(ctx context.Context, doer *user_model.User, issue *issues_model.Issue) 38 IssueChangeTitle(ctx context.Context, doer *user_model.User, issue *issues_model.Issue, oldTitle string) 39 IssueChangeRef(ctx context.Context, doer *user_model.User, issue *issues_model.Issue, oldRef string) 40 IssueChangeLabels(ctx context.Context, doer *user_model.User, issue *issues_model.Issue, 41 addedLabels, removedLabels []*issues_model.Label) 42 43 NewPullRequest(ctx context.Context, pr *issues_model.PullRequest, mentions []*user_model.User) 44 MergePullRequest(ctx context.Context, doer *user_model.User, pr *issues_model.PullRequest) 45 AutoMergePullRequest(ctx context.Context, doer *user_model.User, pr *issues_model.PullRequest) 46 PullRequestSynchronized(ctx context.Context, doer *user_model.User, pr *issues_model.PullRequest) 47 PullRequestReview(ctx context.Context, pr *issues_model.PullRequest, review *issues_model.Review, comment *issues_model.Comment, mentions []*user_model.User) 48 PullRequestCodeComment(ctx context.Context, pr *issues_model.PullRequest, comment *issues_model.Comment, mentions []*user_model.User) 49 PullRequestChangeTargetBranch(ctx context.Context, doer *user_model.User, pr *issues_model.PullRequest, oldBranch string) 50 PullRequestPushCommits(ctx context.Context, doer *user_model.User, pr *issues_model.PullRequest, comment *issues_model.Comment) 51 PullReviewDismiss(ctx context.Context, doer *user_model.User, review *issues_model.Review, comment *issues_model.Comment) 52 53 CreateIssueComment(ctx context.Context, doer *user_model.User, repo *repo_model.Repository, 54 issue *issues_model.Issue, comment *issues_model.Comment, mentions []*user_model.User) 55 UpdateComment(ctx context.Context, doer *user_model.User, c *issues_model.Comment, oldContent string) 56 DeleteComment(ctx context.Context, doer *user_model.User, c *issues_model.Comment) 57 58 NewWikiPage(ctx context.Context, doer *user_model.User, repo *repo_model.Repository, page, comment string) 59 EditWikiPage(ctx context.Context, doer *user_model.User, repo *repo_model.Repository, page, comment string) 60 DeleteWikiPage(ctx context.Context, doer *user_model.User, repo *repo_model.Repository, page string) 61 62 NewRelease(ctx context.Context, rel *repo_model.Release) 63 UpdateRelease(ctx context.Context, doer *user_model.User, rel *repo_model.Release) 64 DeleteRelease(ctx context.Context, doer *user_model.User, rel *repo_model.Release) 65 66 PushCommits(ctx context.Context, pusher *user_model.User, repo *repo_model.Repository, opts *repository.PushUpdateOptions, commits *repository.PushCommits) 67 CreateRef(ctx context.Context, doer *user_model.User, repo *repo_model.Repository, refFullName git.RefName, refID string) 68 DeleteRef(ctx context.Context, doer *user_model.User, repo *repo_model.Repository, refFullName git.RefName) 69 SyncPushCommits(ctx context.Context, pusher *user_model.User, repo *repo_model.Repository, opts *repository.PushUpdateOptions, commits *repository.PushCommits) 70 SyncCreateRef(ctx context.Context, doer *user_model.User, repo *repo_model.Repository, refFullName git.RefName, refID string) 71 SyncDeleteRef(ctx context.Context, doer *user_model.User, repo *repo_model.Repository, refFullName git.RefName) 72 73 PackageCreate(ctx context.Context, doer *user_model.User, pd *packages_model.PackageDescriptor) 74 PackageDelete(ctx context.Context, doer *user_model.User, pd *packages_model.PackageDescriptor) 75 76 ChangeDefaultBranch(ctx context.Context, repo *repo_model.Repository) 77 }