Documentation
¶
Index ¶
Constants ¶
This section is empty.
Variables ¶
View Source
var BasicDeleteFunc = func(data *Model, repo *Repository) Response { value := data.Value tx := repo.db.Delete(value) return NewResponse(value, tx.Error) }
View Source
var BasicInsertFunc = func(data *Model, repo *Repository) Response { value := data.Value repo.db.AutoMigrate(&value) tx := repo.db.Create(value) return NewResponse(value, tx.Error) }
View Source
var BasicOpenFunc = func(data *Model, repo *Repository) Response { log.Println("Received open: ", data) db, err := gorm.Open(sqlite.Open(data.String()), &gorm.Config{}) if err != nil { panic(err) } repo.db = db return NewResponse(repo.db, err) }
View Source
var BasicUpdateFunc = func(data *Model, repo *Repository) Response { value := data.Value tx := repo.db.Updates(value) return NewResponse(value, tx.Error) }
View Source
var ReadFirstFunc = func(data *Model, repo *Repository) Response { value := data.Value tx := repo.db.First(value) return NewResponse(value, tx.Error) }
Functions ¶
func AddListener ¶ added in v1.0.3
func AddListener(EventListener EventListener)
func NewRepository ¶
func NewRepository()
Types ¶
type Event ¶ added in v0.1.1
type Event interface { Execute(repo *Repository) Send(Response) Receive() Response }
func NewEvent ¶ added in v0.1.1
func NewEvent(value any, executable Executable) Event
type EventListener ¶ added in v1.0.1
type EventListener interface {
OnEvent(Event <-chan Event)
}
type EventModel ¶ added in v1.0.1
type EventModel struct {
// contains filtered or unexported fields
}
func (*EventModel) Execute ¶ added in v1.0.1
func (e *EventModel) Execute(repo *Repository)
func (*EventModel) Receive ¶ added in v1.0.1
func (e *EventModel) Receive() Response
func (*EventModel) Send ¶ added in v1.0.1
func (e *EventModel) Send(val Response)
type Executable ¶ added in v1.0.1
type Executable = func(data *Model, repo *Repository) Response
type Repository ¶ added in v1.0.1
type Repository struct {
// contains filtered or unexported fields
}
func (*Repository) OnEvent ¶ added in v1.0.3
func (r *Repository) OnEvent(repositoryChannel <-chan Event)
Click to show internal directories.
Click to hide internal directories.