events

package
v0.0.0-...-4c964c4 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Jul 29, 2025 License: Apache-2.0 Imports: 6 Imported by: 0

Documentation

Index

Constants

View Source
const (
	ReviewerAddedEvent     events.EventType = "reviewer-added"
	ReviewerDeletedEvent   events.EventType = "reviewer-deleted"
	UserGroupReviewerAdded events.EventType = "usergroup-reviewer-added"
)
View Source
const BranchUpdatedEvent events.EventType = "branch-updated"
View Source
const ClosedEvent events.EventType = "closed"
View Source
const CommentCreatedEvent events.EventType = "comment-created"
View Source
const CommentUpdatedEvent events.EventType = "comment-updated"
View Source
const CreatedEvent events.EventType = "created"
View Source
const LabelAssignedEvent events.EventType = "label-assigned"
View Source
const MergedEvent events.EventType = "merged"
View Source
const ReopenedEvent events.EventType = "reopened"
View Source
const ReviewSubmittedEvent events.EventType = "review-submitted"
View Source
const UpdatedEvent events.EventType = "updated"

Variables

WireSet provides a wire set for this package.

Functions

func NewReaderFactory

func NewReaderFactory(eventsSystem *events.System) (*events.ReaderFactory[*Reader], error)

func ProvideReaderFactory

func ProvideReaderFactory(eventsSystem *events.System) (*events.ReaderFactory[*Reader], error)

Types

type Base

type Base struct {
	PullReqID    int64 `json:"pullreq_id"`
	SourceRepoID int64 `json:"source_repo_id"`
	TargetRepoID int64 `json:"repo_id"`
	PrincipalID  int64 `json:"principal_id"`
	Number       int64 `json:"number"`
}

type BranchUpdatedPayload

type BranchUpdatedPayload struct {
	Base
	OldSHA          string `json:"old_sha"`
	NewSHA          string `json:"new_sha"`
	OldMergeBaseSHA string `json:"old_merge_base_sha"`
	NewMergeBaseSHA string `json:"new_merge_base_sha"`
	Forced          bool   `json:"forced"`
}

type ClosedPayload

type ClosedPayload struct {
	Base
	SourceSHA string `json:"source_sha"`
}

type CommentCreatedPayload

type CommentCreatedPayload struct {
	Base
	ActivityID int64  `json:"activity_id"`
	SourceSHA  string `json:"source_sha"`
	IsReply    bool   `json:"is_reply"`
}

type CommentUpdatedPayload

type CommentUpdatedPayload struct {
	Base
	ActivityID int64 `json:"activity_id"`
	IsReply    bool  `json:"is_reply"`
}

type CreatedPayload

type CreatedPayload struct {
	Base
	SourceBranch string `json:"source_branch"`
	TargetBranch string `json:"target_branch"`
	SourceSHA    string `json:"source_sha"`
}

type LabelAssignedPayload

type LabelAssignedPayload struct {
	Base
	LabelID int64  `json:"label_id"`
	ValueID *int64 `json:"value_id"`
}

type MergedPayload

type MergedPayload struct {
	Base
	MergeMethod enum.MergeMethod `json:"merge_method"`
	MergeSHA    string           `json:"merge_sha"`
	TargetSHA   string           `json:"target_sha"`
	SourceSHA   string           `json:"source_sha"`
}

type Reader

type Reader struct {
	// contains filtered or unexported fields
}

Reader is the event reader for this package.

func (*Reader) Configure

func (r *Reader) Configure(opts ...events.ReaderOption)

func (*Reader) RegisterBranchUpdated

func (r *Reader) RegisterBranchUpdated(fn events.HandlerFunc[*BranchUpdatedPayload],
	opts ...events.HandlerOption) error

func (*Reader) RegisterClosed

func (r *Reader) RegisterClosed(
	fn events.HandlerFunc[*ClosedPayload],
	opts ...events.HandlerOption,
) error

func (*Reader) RegisterCommentCreated

func (r *Reader) RegisterCommentCreated(
	fn events.HandlerFunc[*CommentCreatedPayload],
	opts ...events.HandlerOption,
) error

func (*Reader) RegisterCommentUpdated

func (r *Reader) RegisterCommentUpdated(
	fn events.HandlerFunc[*CommentUpdatedPayload],
	opts ...events.HandlerOption,
) error

func (*Reader) RegisterCreated

func (r *Reader) RegisterCreated(
	fn events.HandlerFunc[*CreatedPayload],
	opts ...events.HandlerOption,
) error

func (*Reader) RegisterLabelAssigned

func (r *Reader) RegisterLabelAssigned(
	fn events.HandlerFunc[*LabelAssignedPayload],
	opts ...events.HandlerOption,
) error

func (*Reader) RegisterMerged

func (r *Reader) RegisterMerged(
	fn events.HandlerFunc[*MergedPayload],
	opts ...events.HandlerOption,
) error

func (*Reader) RegisterReopened

func (r *Reader) RegisterReopened(
	fn events.HandlerFunc[*ReopenedPayload],
	opts ...events.HandlerOption,
) error

func (*Reader) RegisterReviewSubmitted

func (r *Reader) RegisterReviewSubmitted(
	fn events.HandlerFunc[*ReviewSubmittedPayload],
	opts ...events.HandlerOption,
) error

func (*Reader) RegisterReviewerAdded

func (r *Reader) RegisterReviewerAdded(
	fn events.HandlerFunc[*ReviewerAddedPayload],
	opts ...events.HandlerOption,
) error

func (*Reader) RegisterReviewerDeleted

func (r *Reader) RegisterReviewerDeleted(
	fn events.HandlerFunc[*ReviewerDeletedPayload],
	opts ...events.HandlerOption,
) error

func (*Reader) RegisterUpdated

func (r *Reader) RegisterUpdated(
	fn events.HandlerFunc[*UpdatedPayload],
	opts ...events.HandlerOption,
) error

func (*Reader) RegisterUserGroupReviewerAdded

func (r *Reader) RegisterUserGroupReviewerAdded(
	fn events.HandlerFunc[*UserGroupReviewerAddedPayload],
	opts ...events.HandlerOption,
) error

ToDo: Start using this for sending out notifications

type ReopenedPayload

type ReopenedPayload struct {
	Base
	SourceSHA    string `json:"source_sha"`
	MergeBaseSHA string `json:"merge_base_sha"`
}

type Reporter

type Reporter struct {
	// contains filtered or unexported fields
}

Reporter is the event reporter for this package.

func NewReporter

func NewReporter(eventsSystem *events.System) (*Reporter, error)

func ProvideReporter

func ProvideReporter(eventsSystem *events.System) (*Reporter, error)

func (*Reporter) BranchUpdated

func (r *Reporter) BranchUpdated(ctx context.Context, payload *BranchUpdatedPayload)

func (*Reporter) Closed

func (r *Reporter) Closed(ctx context.Context, payload *ClosedPayload)

func (*Reporter) CommentCreated

func (r *Reporter) CommentCreated(
	ctx context.Context,
	payload *CommentCreatedPayload,
)

func (*Reporter) CommentUpdated

func (r *Reporter) CommentUpdated(
	ctx context.Context,
	payload *CommentUpdatedPayload,
)

func (*Reporter) Created

func (r *Reporter) Created(ctx context.Context, payload *CreatedPayload)

func (*Reporter) LabelAssigned

func (r *Reporter) LabelAssigned(
	ctx context.Context,
	payload *LabelAssignedPayload,
)

func (*Reporter) Merged

func (r *Reporter) Merged(ctx context.Context, payload *MergedPayload)

func (*Reporter) Reopened

func (r *Reporter) Reopened(ctx context.Context, payload *ReopenedPayload)

func (*Reporter) ReviewSubmitted

func (r *Reporter) ReviewSubmitted(
	ctx context.Context,
	payload *ReviewSubmittedPayload,
)

func (*Reporter) ReviewerAdded

func (r *Reporter) ReviewerAdded(
	ctx context.Context,
	payload *ReviewerAddedPayload,
)

func (*Reporter) ReviewerDeleted

func (r *Reporter) ReviewerDeleted(
	ctx context.Context,
	payload *ReviewerDeletedPayload,
)

func (*Reporter) Updated

func (r *Reporter) Updated(ctx context.Context, payload *UpdatedPayload)

func (*Reporter) UserGroupReviewerAdded

func (r *Reporter) UserGroupReviewerAdded(
	ctx context.Context,
	payload *UserGroupReviewerAddedPayload,
)

type ReviewSubmittedPayload

type ReviewSubmittedPayload struct {
	Base
	ReviewerID int64
	Decision   enum.PullReqReviewDecision
}

type ReviewerAddedPayload

type ReviewerAddedPayload struct {
	Base
	ReviewerID int64 `json:"reviewer_id"`
}

type ReviewerDeletedPayload

type ReviewerDeletedPayload struct {
	Base
	ReviewerID int64 `json:"reviewer_id"`
}

type UpdatedPayload

type UpdatedPayload struct {
	Base
	TitleChanged       bool   `json:"title_changed"`
	TitleOld           string `json:"title_old"`
	TitleNew           string `json:"title_new"`
	DescriptionChanged bool   `json:"description_changed"`
	DescriptionOld     string `json:"description_old"`
	DescriptionNew     string `json:"description_new"`
}

type UserGroupReviewerAddedPayload

type UserGroupReviewerAddedPayload struct {
	Base
	UserGroupReviewerID int64 `json:"usergroup_reviewer_id"`
}

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL