model

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: 12 Imported by: 0

Documentation

Index

Constants

View Source
const (
	EVENT_CREATED          = 1
	EVENT_COMMENT          = 2
	EVENT_STATUS_CHANGE    = 4
	EVENT_LABEL_ADDED      = 8
	EVENT_LABEL_REMOVED    = 16
	EVENT_ASSIGNED_USER    = 32
	EVENT_UNASSIGNED_USER  = 64
	EVENT_USER_MENTIONED   = 128
	EVENT_TICKET_MENTIONED = 256
)
View Source
const (
	STATUS_REPORTED    = 0
	STATUS_CONFIRMED   = 1
	STATUS_IN_PROGRESS = 2
	STATUS_PENDING     = 4
	STATUS_RESOLVED    = 8
)
View Source
const (
	RESOLVED_UNRESOLVED  = 0
	RESOLVED_FIXED       = 1
	RESOLVED_IMPLEMENTED = 2
	RESOLVED_WONT_FIX    = 4
	RESOLVED_BY_DESIGN   = 8
	RESOLVED_INVALID     = 16
	RESOLVED_DUPLICATE   = 32
	RESOLVED_NOT_OUR_BUG = 64
	RESOLVED_CLOSED      = 128
)
View Source
const (
	AUTH_AUTHENTIC       = 0
	AUTH_UNAUTHENTICATED = 1
	AUTH_TAMPERED        = 2
)
View Source
const (
	ACCESS_NONE    = 0
	ACCESS_BROWSE  = 1
	ACCESS_SUBMIT  = 2
	ACCESS_COMMENT = 4
	ACCESS_EDIT    = 8
	ACCESS_TRIAGE  = 16
	ACCESS_ALL     = 1 | 2 | 4 | 8 | 16
)

Variables

Functions

This section is empty.

Types

type ACL

type ACL interface {
	IsACL()
}

type ActivitySubscription

type ActivitySubscription interface {
	IsSubscription()
	DBID() int
}

type Assignment

type Assignment struct {
	EventType  EventType `json:"eventType"`
	TicketID   int
	AssignerID int
	AssigneeID int
}

func (Assignment) IsEventDetail

func (Assignment) IsEventDetail()

type Comment

type Comment struct {
	EventType     EventType `json:"eventType"`
	TicketID      int
	ParticipantID int

	Database struct {
		ID              int
		Text            string
		Authenticity    Authenticity
		SuperceededByID *int
	}
}

func (Comment) IsEventDetail

func (Comment) IsEventDetail()

type Created

type Created struct {
	EventType     EventType `json:"eventType"`
	TicketID      int
	ParticipantID int
}

func (Created) IsEventDetail

func (Created) IsEventDetail()

type DefaultACL

type DefaultACL struct {
	Browse  bool `json:"browse"`
	Submit  bool `json:"submit"`
	Comment bool `json:"comment"`
	Edit    bool `json:"edit"`
	Triage  bool `json:"triage"`
}

func (DefaultACL) IsACL

func (DefaultACL) IsACL()

func (*DefaultACL) SetBits

func (acl *DefaultACL) SetBits(bits uint)

Sets the ACL struct's boolean fields from the database bits.

type EmailAddress

type EmailAddress struct {
	Mailbox string  `json:"mailbox"`
	Name    *string `json:"name"`
}

func (EmailAddress) CanonicalName

func (e EmailAddress) CanonicalName() string

func (EmailAddress) IsEntity

func (EmailAddress) IsEntity()

type Event

type Event struct {
	ID      int       `json:"id"`
	Created time.Time `json:"created"`

	EventType     int
	ParticipantID *int
	TicketID      int

	ByParticipantID *int
	CommentID       *int
	LabelID         *int
	FromTicketID    *int

	OldStatus     *int
	OldResolution *int
	NewStatus     *int
	NewResolution *int
	// contains filtered or unexported fields
}

func (*Event) Alias

func (ev *Event) Alias() string

func (*Event) As

func (ev *Event) As(alias string) *Event

func (*Event) Changes

func (ev *Event) Changes() []EventDetail

func (*Event) Fields

func (ev *Event) Fields() *database.ModelFields

func (*Event) QueryWithCursor

func (ev *Event) QueryWithCursor(ctx context.Context, runner sq.BaseRunner,
	q sq.SelectBuilder, cur *model.Cursor) ([]*Event, *model.Cursor)

func (*Event) Table

func (ev *Event) Table() string

type ExternalUser

type ExternalUser struct {
	ExternalID  string  `json:"externalId"`
	ExternalURL *string `json:"externalUrl"`
}

func (ExternalUser) CanonicalName

func (e ExternalUser) CanonicalName() string

func (ExternalUser) IsEntity

func (ExternalUser) IsEntity()

type Label

type Label struct {
	ID              int       `json:"id"`
	Created         time.Time `json:"created"`
	Name            string    `json:"name"`
	BackgroundColor string    `json:"backgroundColor"`
	ForegroundColor string    `json:"foregroundColor"`

	TrackerID int
	// contains filtered or unexported fields
}

func (*Label) Alias

func (l *Label) Alias() string

func (*Label) As

func (l *Label) As(alias string) *Label

func (*Label) Fields

func (l *Label) Fields() *database.ModelFields

func (*Label) QueryWithCursor

func (l *Label) QueryWithCursor(ctx context.Context, runner sq.BaseRunner,
	q sq.SelectBuilder, cur *model.Cursor) ([]*Label, *model.Cursor)

func (*Label) Table

func (l *Label) Table() string

type LabelUpdate

type LabelUpdate struct {
	EventType     EventType `json:"eventType"`
	TicketID      int
	ParticipantID int
	LabelID       int
}

func (LabelUpdate) IsEventDetail

func (LabelUpdate) IsEventDetail()

type Participant

type Participant struct {
	ID int
}

Used internally

type ParticipantType

type ParticipantType string
const (
	ParticipantTypeUser     ParticipantType = "user"
	ParticipantTypeEmail    ParticipantType = "email"
	ParticipantTypeExternal ParticipantType = "external"
)

func ParticipantTypeFromString

func ParticipantTypeFromString(participantType string) ParticipantType

type StatusChange

type StatusChange struct {
	EventType     EventType `json:"eventType"`
	TicketID      int
	ParticipantID int

	OldStatus     TicketStatus     `json:"oldStatus"`
	NewStatus     TicketStatus     `json:"newStatus"`
	OldResolution TicketResolution `json:"oldResolution"`
	NewResolution TicketResolution `json:"newResolution"`
}

func (StatusChange) IsEventDetail

func (StatusChange) IsEventDetail()

type SubscriptionInfo

type SubscriptionInfo struct {
	ID        int
	Created   time.Time
	TicketID  *int
	TrackerID *int
	// contains filtered or unexported fields
}

func (*SubscriptionInfo) Alias

func (si *SubscriptionInfo) Alias() string

func (*SubscriptionInfo) As

func (si *SubscriptionInfo) As(alias string) *SubscriptionInfo

func (*SubscriptionInfo) Fields

func (si *SubscriptionInfo) Fields() *database.ModelFields

func (*SubscriptionInfo) QueryWithCursor

func (si *SubscriptionInfo) QueryWithCursor(ctx context.Context, runner sq.BaseRunner,
	q sq.SelectBuilder, cur *model.Cursor) ([]ActivitySubscription, *model.Cursor)

func (*SubscriptionInfo) Table

func (si *SubscriptionInfo) Table() string

type Ticket

type Ticket struct {
	ID      int       `json:"id"` // tracker-scoped ID
	Created time.Time `json:"created"`
	Updated time.Time `json:"updated"`
	Subject string    `json:"subject"`
	Body    *string   `json:"body"`

	PKID        int // global ID
	TrackerID   int
	TrackerName string
	OwnerName   string
	SubmitterID int

	RawAuthenticity int
	RawStatus       int
	RawResolution   int
	// contains filtered or unexported fields
}

func (*Ticket) Alias

func (t *Ticket) Alias() string

func (*Ticket) As

func (t *Ticket) As(alias string) *Ticket

func (*Ticket) Authenticity

func (t *Ticket) Authenticity() Authenticity

func (*Ticket) EmailRef

func (t *Ticket) EmailRef(domain string) string

func (*Ticket) Fields

func (t *Ticket) Fields() *database.ModelFields

func (*Ticket) QueryWithCursor

func (t *Ticket) QueryWithCursor(ctx context.Context, runner sq.BaseRunner,
	q sq.SelectBuilder, cur *model.Cursor) ([]*Ticket, *model.Cursor)

func (*Ticket) Ref

func (t *Ticket) Ref() string

func (*Ticket) Resolution

func (t *Ticket) Resolution() TicketResolution

func (*Ticket) Select

func (t *Ticket) Select(q sq.SelectBuilder) sq.SelectBuilder

func (*Ticket) Status

func (t *Ticket) Status() TicketStatus

func (*Ticket) Table

func (t *Ticket) Table() string

type TicketMention

type TicketMention struct {
	EventType     EventType `json:"eventType"`
	TicketID      int
	ParticipantID int
	MentionedID   int
}

func (TicketMention) IsEventDetail

func (TicketMention) IsEventDetail()

type TicketResolution

type TicketResolution string
const (
	TicketResolutionUnresolved  TicketResolution = "UNRESOLVED"
	TicketResolutionClosed      TicketResolution = "CLOSED"
	TicketResolutionFixed       TicketResolution = "FIXED"
	TicketResolutionImplemented TicketResolution = "IMPLEMENTED"
	TicketResolutionWontFix     TicketResolution = "WONT_FIX"
	TicketResolutionByDesign    TicketResolution = "BY_DESIGN"
	TicketResolutionInvalid     TicketResolution = "INVALID"
	TicketResolutionDuplicate   TicketResolution = "DUPLICATE"
	TicketResolutionNotOurBug   TicketResolution = "NOT_OUR_BUG"
)

func TicketResolutionFromInt

func TicketResolutionFromInt(resolution int) TicketResolution

Creates a TicketResolution from its database representation

func (TicketResolution) IsValid

func (e TicketResolution) IsValid() bool

func (TicketResolution) MarshalGQL

func (e TicketResolution) MarshalGQL(w io.Writer)

func (TicketResolution) String

func (e TicketResolution) String() string

func (TicketResolution) ToInt

func (e TicketResolution) ToInt() int

Converts a TicketResolution to its database representation

func (*TicketResolution) UnmarshalGQL

func (e *TicketResolution) UnmarshalGQL(v interface{}) error

type TicketStatus

type TicketStatus string
const (
	TicketStatusReported   TicketStatus = "REPORTED"
	TicketStatusConfirmed  TicketStatus = "CONFIRMED"
	TicketStatusInProgress TicketStatus = "IN_PROGRESS"
	TicketStatusPending    TicketStatus = "PENDING"
	TicketStatusResolved   TicketStatus = "RESOLVED"
)

func TicketStatusFromInt

func TicketStatusFromInt(status int) TicketStatus

Creates a TicketStatus from its database representation

func (TicketStatus) IsValid

func (e TicketStatus) IsValid() bool

func (TicketStatus) MarshalGQL

func (e TicketStatus) MarshalGQL(w io.Writer)

func (TicketStatus) String

func (e TicketStatus) String() string

func (TicketStatus) ToInt

func (status TicketStatus) ToInt() int

Converts a TicketStatus to its database representation

func (*TicketStatus) UnmarshalGQL

func (e *TicketStatus) UnmarshalGQL(v interface{}) error

type TicketSubscription

type TicketSubscription struct {
	ID      int       `json:"id"`
	Created time.Time `json:"created"`

	TicketID int
}

func (TicketSubscription) DBID

func (ts TicketSubscription) DBID() int

func (TicketSubscription) IsSubscription

func (TicketSubscription) IsSubscription()

type TicketWebhookSubscription

type TicketWebhookSubscription struct {
	ID        int            `json:"id"`
	Events    []WebhookEvent `json:"events"`
	Query     string         `json:"query"`
	URL       string         `json:"url"`
	TrackerID int            `json:"trackerId"`
	TicketID  int            `json:"ticketId"`

	UserID     int
	AuthMethod string
	ClientID   *string
	TokenHash  *string
	Expires    *time.Time
	Grants     *string
	NodeID     *string
	// contains filtered or unexported fields
}

func (*TicketWebhookSubscription) Alias

func (sub *TicketWebhookSubscription) Alias() string

func (*TicketWebhookSubscription) As

func (*TicketWebhookSubscription) Fields

func (TicketWebhookSubscription) IsWebhookSubscription

func (TicketWebhookSubscription) IsWebhookSubscription()

func (*TicketWebhookSubscription) QueryWithCursor

func (sub *TicketWebhookSubscription) QueryWithCursor(ctx context.Context,
	runner sq.BaseRunner, q sq.SelectBuilder,
	cur *model.Cursor) ([]WebhookSubscription, *model.Cursor)

func (*TicketWebhookSubscription) Table

func (sub *TicketWebhookSubscription) Table() string

type Tracker

type Tracker struct {
	ID          int        `json:"id"`
	Created     time.Time  `json:"created"`
	Updated     time.Time  `json:"updated"`
	Name        string     `json:"name"`
	Description *string    `json:"description"`
	Visibility  Visibility `json:"visibility"`

	OwnerID       int
	Access        int
	DefaultAccess uint
	ACLID         *int
	// contains filtered or unexported fields
}

func (*Tracker) Alias

func (t *Tracker) Alias() string

func (*Tracker) As

func (t *Tracker) As(alias string) *Tracker

func (*Tracker) CanBrowse

func (t *Tracker) CanBrowse() bool

func (*Tracker) CanComment

func (t *Tracker) CanComment() bool

func (*Tracker) CanEdit

func (t *Tracker) CanEdit() bool

func (*Tracker) CanSubmit

func (t *Tracker) CanSubmit() bool

func (*Tracker) CanTriage

func (t *Tracker) CanTriage() bool

func (*Tracker) Fields

func (t *Tracker) Fields() *database.ModelFields

func (*Tracker) QueryWithCursor

func (t *Tracker) QueryWithCursor(ctx context.Context, runner sq.BaseRunner,
	q sq.SelectBuilder, cur *model.Cursor) ([]*Tracker, *model.Cursor)

func (*Tracker) Table

func (t *Tracker) Table() string

type TrackerACL

type TrackerACL struct {
	ID      int       `json:"id"`
	Created time.Time `json:"created"`
	Browse  bool      `json:"browse"`
	Submit  bool      `json:"submit"`
	Comment bool      `json:"comment"`
	Edit    bool      `json:"edit"`
	Triage  bool      `json:"triage"`

	TrackerID int
	UserID    int
	// contains filtered or unexported fields
}

func (*TrackerACL) Alias

func (acl *TrackerACL) Alias() string

func (*TrackerACL) As

func (acl *TrackerACL) As(alias string) *TrackerACL

func (*TrackerACL) Fields

func (acl *TrackerACL) Fields() *database.ModelFields

func (TrackerACL) IsACL

func (TrackerACL) IsACL()

func (*TrackerACL) QueryWithCursor

func (acl *TrackerACL) QueryWithCursor(ctx context.Context, runner sq.BaseRunner,
	q sq.SelectBuilder, cur *model.Cursor) ([]*TrackerACL, *model.Cursor)

func (*TrackerACL) SetBits

func (acl *TrackerACL) SetBits(bits uint)

Sets the ACL struct's boolean fields from the database bits.

func (*TrackerACL) Table

func (acl *TrackerACL) Table() string

type TrackerSubscription

type TrackerSubscription struct {
	ID      int       `json:"id"`
	Created time.Time `json:"created"`

	TrackerID int
}

func (TrackerSubscription) DBID

func (ts TrackerSubscription) DBID() int

func (TrackerSubscription) IsSubscription

func (TrackerSubscription) IsSubscription()

type TrackerWebhookSubscription

type TrackerWebhookSubscription struct {
	ID        int            `json:"id"`
	Events    []WebhookEvent `json:"events"`
	Query     string         `json:"query"`
	URL       string         `json:"url"`
	TrackerID int            `json:"trackerId"`

	UserID     int
	AuthMethod string
	ClientID   *string
	TokenHash  *string
	Expires    *time.Time
	Grants     *string
	NodeID     *string
	// contains filtered or unexported fields
}

func (*TrackerWebhookSubscription) Alias

func (sub *TrackerWebhookSubscription) Alias() string

func (*TrackerWebhookSubscription) As

func (*TrackerWebhookSubscription) Fields

func (TrackerWebhookSubscription) IsWebhookSubscription

func (TrackerWebhookSubscription) IsWebhookSubscription()

func (*TrackerWebhookSubscription) QueryWithCursor

func (sub *TrackerWebhookSubscription) QueryWithCursor(ctx context.Context,
	runner sq.BaseRunner, q sq.SelectBuilder,
	cur *model.Cursor) ([]WebhookSubscription, *model.Cursor)

func (*TrackerWebhookSubscription) Table

func (sub *TrackerWebhookSubscription) Table() string

type User

type User struct {
	ID       int       `json:"id"`
	Created  time.Time `json:"created"`
	Updated  time.Time `json:"updated"`
	Username string    `json:"username"`
	Email    string    `json:"email"`
	URL      *string   `json:"url"`
	Location *string   `json:"location"`
	Bio      *string   `json:"bio"`
	// contains filtered or unexported fields
}

func (*User) Alias

func (u *User) Alias() string

func (*User) As

func (u *User) As(alias string) *User

func (*User) CanonicalName

func (u *User) CanonicalName() string

func (*User) Fields

func (u *User) Fields() *database.ModelFields

func (User) IsEntity

func (User) IsEntity()

func (*User) QueryWithCursor

func (u *User) QueryWithCursor(ctx context.Context, runner sq.BaseRunner,
	q sq.SelectBuilder, cur *model.Cursor) ([]*User, *model.Cursor)

func (*User) Table

func (u *User) Table() string

type UserMention

type UserMention struct {
	EventType     EventType `json:"eventType"`
	TicketID      int
	ParticipantID int
	MentionedID   int
}

func (UserMention) IsEventDetail

func (UserMention) IsEventDetail()

type UserWebhookSubscription

type UserWebhookSubscription struct {
	ID     int            `json:"id"`
	Events []WebhookEvent `json:"events"`
	Query  string         `json:"query"`
	URL    string         `json:"url"`

	UserID     int
	AuthMethod string
	ClientID   *string
	TokenHash  *string
	Expires    *time.Time
	Grants     *string
	NodeID     *string
	// contains filtered or unexported fields
}

func (*UserWebhookSubscription) Alias

func (sub *UserWebhookSubscription) Alias() string

func (*UserWebhookSubscription) As

func (*UserWebhookSubscription) Fields

func (UserWebhookSubscription) IsWebhookSubscription

func (UserWebhookSubscription) IsWebhookSubscription()

func (*UserWebhookSubscription) QueryWithCursor

func (sub *UserWebhookSubscription) QueryWithCursor(ctx context.Context,
	runner sq.BaseRunner, q sq.SelectBuilder,
	cur *model.Cursor) ([]WebhookSubscription, *model.Cursor)

func (*UserWebhookSubscription) Table

func (sub *UserWebhookSubscription) Table() string

type WebhookDelivery

type WebhookDelivery struct {
	UUID            string       `json:"uuid"`
	Date            time.Time    `json:"date"`
	Event           WebhookEvent `json:"event"`
	RequestBody     string       `json:"requestBody"`
	ResponseBody    *string      `json:"responseBody"`
	ResponseHeaders *string      `json:"responseHeaders"`
	ResponseStatus  *int         `json:"responseStatus"`

	ID             int
	SubscriptionID int
	Name           string
	// contains filtered or unexported fields
}

func (*WebhookDelivery) Alias

func (whd *WebhookDelivery) Alias() string

func (*WebhookDelivery) As

func (whd *WebhookDelivery) As(alias string) *WebhookDelivery

func (*WebhookDelivery) Fields

func (whd *WebhookDelivery) Fields() *database.ModelFields

func (*WebhookDelivery) QueryWithCursor

func (whd *WebhookDelivery) QueryWithCursor(ctx context.Context,
	runner sq.BaseRunner, q sq.SelectBuilder,
	cur *model.Cursor) ([]*WebhookDelivery, *model.Cursor)

func (*WebhookDelivery) Table

func (whd *WebhookDelivery) Table() string

func (*WebhookDelivery) WithName

func (whd *WebhookDelivery) WithName(name string) *WebhookDelivery

Jump to

Keyboard shortcuts

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