...

Source file src/edge-infra.dev/pkg/edge/datasync/kafkaclient/interface.go

Documentation: edge-infra.dev/pkg/edge/datasync/kafkaclient

     1  package kafkaclient
     2  
     3  import (
     4  	"context"
     5  
     6  	"github.com/twmb/franz-go/pkg/kgo"
     7  )
     8  
     9  type Record = kgo.Record
    10  type Header = kgo.RecordHeader
    11  
    12  type Partition int32
    13  type Offset int64
    14  
    15  type Pinger interface {
    16  	Ping(ctx context.Context) error
    17  }
    18  
    19  type Producer interface {
    20  	Pinger
    21  	Produce(ctx context.Context, records ...*kgo.Record) error
    22  	ReProduce(ctx context.Context, records ...*kgo.Record) error
    23  }
    24  
    25  type Consumer interface {
    26  	Pinger
    27  	Read(ctx context.Context) ([]*Record, error)
    28  	Ack(ctx context.Context, record ...*Record) error
    29  	Stop()
    30  }
    31  

View as plain text