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