28 lines
565 B
Go
28 lines
565 B
Go
// Package event provides a distributed log interface
|
|
package event
|
|
|
|
// Event provides a distributed log interface
|
|
type Event interface {
|
|
// Log retrieves the log with an id/name
|
|
Log(id string) (Log, error)
|
|
}
|
|
|
|
// Log is an individual event log
|
|
type Log interface {
|
|
// Close the log handle
|
|
Close() error
|
|
// Log ID
|
|
Id() string
|
|
// Read will read the next record
|
|
Read() (*Record, error)
|
|
// Go to an offset
|
|
Seek(offset int64) error
|
|
// Write an event to the log
|
|
Write(*Record) error
|
|
}
|
|
|
|
type Record struct {
|
|
Metadata map[string]interface{}
|
|
Data []byte
|
|
}
|