notificationrule

package
v0.30.1 Latest Latest
Warning

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

Go to latest
Published: Nov 2, 2022 License: Apache-2.0 Imports: 7 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

This section is empty.

Types

type NotificationRule

type NotificationRule struct {
	ID              string `json:"id"`
	UserID          string `json:"-"`
	DelayMinutes    int    `json:"delay"`
	ContactMethodID string `json:"contact_method_id"`
}

func (NotificationRule) Normalize

func (n NotificationRule) Normalize(update bool) (*NotificationRule, error)

type Store

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

Store allows the lookup and management of NotificationRules.

func NewStore added in v0.30.0

func NewStore(ctx context.Context, db *sql.DB) (*Store, error)

NewDB will create a DB backend from a sql.DB. An error will be returned if statements fail to prepare.

func (*Store) CreateTx

func (s *Store) CreateTx(ctx context.Context, tx *sql.Tx, n *NotificationRule) (*NotificationRule, error)

CreateTx implements the NotificationRuleStore interface by inserting the new NotificationRule into the database. A new ID is always created.

func (*Store) Delete

func (s *Store) Delete(ctx context.Context, id string) error

Delete implements the NotificationRuleStore interface.

func (*Store) DeleteTx

func (s *Store) DeleteTx(ctx context.Context, tx *sql.Tx, ids ...string) error

DeleteTx will delete notification rules with the provided ids.

func (*Store) DoTx

func (s *Store) DoTx(f func(*Store) error) error

DoTx will perform a transaction with the NotificationRuleStore.

func (*Store) FindAll

func (s *Store) FindAll(ctx context.Context, userID string) ([]NotificationRule, error)

FindAll implements the NotificationRuleStore interface.

func (*Store) FindOne

func (s *Store) FindOne(ctx context.Context, id string) (*NotificationRule, error)

FindOne implements the NotificationRuleStore interface.

func (*Store) Insert

Insert implements the NotificationRuleStore interface by inserting the new NotificationRule into the database. A new ID is always created.

func (*Store) UpdateDelay

func (s *Store) UpdateDelay(ctx context.Context, id string, delay int) error

Update implements the NotificationRuleStore interface.

func (*Store) WrapTx

func (s *Store) WrapTx(tx *sql.Tx) *Store

WrapTx will wrap the NotificationRuleDB for use within the given transaction.

Jump to

Keyboard shortcuts

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