evtpgx

package
v0.0.0-...-ebfb46d Latest Latest
Warning

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

Go to latest
Published: Feb 7, 2024 License: BSD-2-Clause Imports: 16 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

func NewLedger

func NewLedger(db *pgxpool.Pool, pr *dom.Project, reg *lit.Regs) (evt.Ledger, error)

func NewReplicator

func NewReplicator(p *Publisher, rels ...string) (evt.LocalPublisher, error)

func Replay

func Replay(p *Publisher, evs []*evt.Event) error

Types

type Publisher

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

func NewPublisher

func NewPublisher(db *pgxpool.Pool, pr *dom.Project, reg *lit.Regs) (*Publisher, error)

func NewStatefulPublisher

func NewStatefulPublisher(db *pgxpool.Pool, pr *dom.Project, reg *lit.Regs) (*Publisher, error)

func (*Publisher) Publish

func (p *Publisher) Publish(t evt.Trans) (time.Time, []*evt.Event, error)

type Replicator

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

func (*Replicator) LocalRev

func (r *Replicator) LocalRev() time.Time

func (*Replicator) Locals

func (r *Replicator) Locals() []evt.Trans

func (*Replicator) PublishLocal

func (r *Replicator) PublishLocal(data evt.Trans) (lrev time.Time, evs []*evt.Event, err error)

func (*Replicator) Replicate

func (r *Replicator) Replicate(newrev time.Time, evs []*evt.Event) error

Replicate will apply and save the given events and remove matching local transactions.

Jump to

Keyboard shortcuts

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