graph

package
v0.0.0-...-8d94386 Latest Latest
Warning

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

Go to latest
Published: Mar 22, 2023 License: AGPL-3.0 Imports: 32 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

This section is empty.

Types

type EventBuilder

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

func NewEventBuilder

func NewEventBuilder(ctx context.Context, tx *sql.Tx,
	submitterID int, eventType uint) *EventBuilder

Creates a new event builder for a given submitter (a participant ID) and a certain event type, using the provided context and transaction. This is used to provide a common implementation for creating events and notifications, building up the list of implicated participants over time.

The order in which you call the subsequent functions is important: 1. WithTicket 2. AddMentions 3. InsertSubscriptions 4. InsertNotifications

func (*EventBuilder) AddMentions

func (builder *EventBuilder) AddMentions(mentions *Mentions)

Adds mentions to this event builder

func (*EventBuilder) InsertNotifications

func (builder *EventBuilder) InsertNotifications(eventID int, commentID *int)

Adds event_notification records for all affected users and inserts ancillary events (such as mentions) and their notifications.

func (*EventBuilder) InsertSubscriptions

func (builder *EventBuilder) InsertSubscriptions()

Creates subscriptions for all affected users

func (*EventBuilder) SendEmails

func (builder *EventBuilder) SendEmails(subject string,
	template *template.Template, context interface{})

func (*EventBuilder) WithTicket

func (builder *EventBuilder) WithTicket(
	tracker *model.Tracker, ticket *model.Ticket) *EventBuilder

Associates this event with a ticket and implicates the submitter for the appropriate events and notifications.

type Mentions

type Mentions struct {
	Users   map[string]struct{}
	Tickets map[string]model.Ticket // Partially filled in
}

Stores state associated with user or ticket mentions

func ScanMentions

func ScanMentions(ctx context.Context, tracker *model.Tracker,
	ticket *model.Ticket, body string) Mentions

type NewTicketDetails

type NewTicketDetails struct {
	Body      *string
	Root      string
	TicketURL string
}

type Resolver

type Resolver struct{}

func (*Resolver) Assignment

func (r *Resolver) Assignment() api.AssignmentResolver

Assignment returns api.AssignmentResolver implementation.

func (*Resolver) Comment

func (r *Resolver) Comment() api.CommentResolver

Comment returns api.CommentResolver implementation.

func (*Resolver) Created

func (r *Resolver) Created() api.CreatedResolver

Created returns api.CreatedResolver implementation.

func (*Resolver) Event

func (r *Resolver) Event() api.EventResolver

Event returns api.EventResolver implementation.

func (*Resolver) Label

func (r *Resolver) Label() api.LabelResolver

Label returns api.LabelResolver implementation.

func (*Resolver) LabelUpdate

func (r *Resolver) LabelUpdate() api.LabelUpdateResolver

LabelUpdate returns api.LabelUpdateResolver implementation.

func (*Resolver) Mutation

func (r *Resolver) Mutation() api.MutationResolver

Mutation returns api.MutationResolver implementation.

func (*Resolver) Query

func (r *Resolver) Query() api.QueryResolver

Query returns api.QueryResolver implementation.

func (*Resolver) StatusChange

func (r *Resolver) StatusChange() api.StatusChangeResolver

StatusChange returns api.StatusChangeResolver implementation.

func (*Resolver) Ticket

func (r *Resolver) Ticket() api.TicketResolver

Ticket returns api.TicketResolver implementation.

func (*Resolver) TicketMention

func (r *Resolver) TicketMention() api.TicketMentionResolver

TicketMention returns api.TicketMentionResolver implementation.

func (*Resolver) TicketSubscription

func (r *Resolver) TicketSubscription() api.TicketSubscriptionResolver

TicketSubscription returns api.TicketSubscriptionResolver implementation.

func (*Resolver) TicketWebhookSubscription

func (r *Resolver) TicketWebhookSubscription() api.TicketWebhookSubscriptionResolver

TicketWebhookSubscription returns api.TicketWebhookSubscriptionResolver implementation.

func (*Resolver) Tracker

func (r *Resolver) Tracker() api.TrackerResolver

Tracker returns api.TrackerResolver implementation.

func (*Resolver) TrackerACL

func (r *Resolver) TrackerACL() api.TrackerACLResolver

TrackerACL returns api.TrackerACLResolver implementation.

func (*Resolver) TrackerSubscription

func (r *Resolver) TrackerSubscription() api.TrackerSubscriptionResolver

TrackerSubscription returns api.TrackerSubscriptionResolver implementation.

func (*Resolver) TrackerWebhookSubscription

func (r *Resolver) TrackerWebhookSubscription() api.TrackerWebhookSubscriptionResolver

TrackerWebhookSubscription returns api.TrackerWebhookSubscriptionResolver implementation.

func (*Resolver) User

func (r *Resolver) User() api.UserResolver

User returns api.UserResolver implementation.

func (*Resolver) UserMention

func (r *Resolver) UserMention() api.UserMentionResolver

UserMention returns api.UserMentionResolver implementation.

func (*Resolver) UserWebhookSubscription

func (r *Resolver) UserWebhookSubscription() api.UserWebhookSubscriptionResolver

UserWebhookSubscription returns api.UserWebhookSubscriptionResolver implementation.

func (*Resolver) WebhookDelivery

func (r *Resolver) WebhookDelivery() api.WebhookDeliveryResolver

WebhookDelivery returns api.WebhookDeliveryResolver implementation.

type SubmitCommentDetails

type SubmitCommentDetails struct {
	Comment       string
	Root          string
	TicketURL     string
	EventID       int
	Status        string
	Resolution    string
	StatusUpdated bool
}

type TicketAssignedDetails

type TicketAssignedDetails struct {
	Root      string
	TicketURL string
	EventID   int
	Assigned  bool
	Assigner  string
	Assignee  string
}

type TicketStatusDetails

type TicketStatusDetails struct {
	Root       string
	TicketURL  string
	EventID    int
	Status     string
	Resolution string
}

Directories

Path Synopsis

Jump to

Keyboard shortcuts

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