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
|
||
|
}
|