gitee.com/liuxuezhan/go-micro-v1.18.0@v1.0.0/sync/event/event.go (about)

     1  // Package event provides a distributed log interface
     2  package event
     3  
     4  // Event provides a distributed log interface
     5  type Event interface {
     6  	// Log retrieves the log with an id/name
     7  	Log(id string) (Log, error)
     8  }
     9  
    10  // Log is an individual event log
    11  type Log interface {
    12  	// Close the log handle
    13  	Close() error
    14  	// Log ID
    15  	Id() string
    16  	// Read will read the next record
    17  	Read() (*Record, error)
    18  	// Go to an offset
    19  	Seek(offset int64) error
    20  	// Write an event to the log
    21  	Write(*Record) error
    22  }
    23  
    24  type Record struct {
    25  	Metadata map[string]interface{}
    26  	Data     []byte
    27  }