Documentation ¶
Index ¶
Constants ¶
This section is empty.
Variables ¶
View Source
var (
ErrClientClosed = errors.New("handler client is closed")
)
Functions ¶
This section is empty.
Types ¶
type ConsumerOptions ¶
type ConsumerOptions struct { // PChannel is the pchannel of the consumer. PChannel string // DeliverPolicy is the deliver policy of the consumer. DeliverPolicy options.DeliverPolicy // DeliverFilters is the deliver filters of the consumer. DeliverFilters []options.DeliverFilter // Handler is the message handler used to handle message after recv from consumer. MessageHandler message.Handler }
ConsumerOptions is the options for creating a consumer.
type HandlerClient ¶
type HandlerClient interface { // CreateProducer creates a producer. // Producer is a stream client without keep alive promise. // It will be available until context canceled, active close, streaming error or remote server wal closing. // Because of there's no more ProducerOptions except PChannel, so a producer of same PChannel is shared by reference count. CreateProducer(ctx context.Context, opts *ProducerOptions) (Producer, error) // CreateConsumer creates a consumer. // Consumer is a stream client without keep alive promise. // It will be available until context canceled, active close, streaming error or remote server wal closing. // A consumer will not share stream connection with other consumers. CreateConsumer(ctx context.Context, opts *ConsumerOptions) (Consumer, error) // Close closes the handler client. // It will only stop the underlying service discovery, but don't stop the producer and consumer created by it. // So please close Producer and Consumer created by it before close the handler client. Close() }
HandlerClient is the interface that wraps streamingpb.StreamingNodeHandlerServiceClient. HandlerClient wraps the PChannel Assignment Service Discovery. Provides the ability to create pchannel-level producer and consumer.
func NewHandlerClient ¶
func NewHandlerClient(w types.AssignmentDiscoverWatcher) HandlerClient
NewHandlerClient creates a new handler client.
type ProducerOptions ¶
type ProducerOptions struct { // PChannel is the pchannel of the producer. PChannel string }
ProducerOptions is the options for creating a producer.
Click to show internal directories.
Click to hide internal directories.