Documentation ¶
Overview ¶
Package rpc implements rpc engine.
Index ¶
Constants ¶
This section is empty.
Variables ¶
View Source
var ErrEngineClosed = xerrors.New("engine was closed")
ErrEngineClosed means that engine was closed.
Functions ¶
Types ¶
type Engine ¶
type Engine struct {
// contains filtered or unexported fields
}
Engine handles RPC requests.
func (*Engine) Close ¶
func (e *Engine) Close()
Close closes the engine. All Do method calls of closed engine will return ErrEngineClosed error.
func (*Engine) Do ¶
Do sends request to server and blocks until response is received, performing multiple retries if needed.
func (*Engine) NotifyAcks ¶
NotifyAcks notifies engine about received acknowledgements.
func (*Engine) NotifyError ¶
NotifyError notifies engine about received RPC error.
type Options ¶
type Options struct { RetryInterval time.Duration MaxRetries int Logger *zap.Logger Clock clock.Clock }
Options of rpc engine.
type RetryLimitReachedErr ¶
type RetryLimitReachedErr struct {
Retries int
}
RetryLimitReachedErr means that server does not acknowledge request after multiple retries.
func (*RetryLimitReachedErr) Error ¶
func (r *RetryLimitReachedErr) Error() string
func (*RetryLimitReachedErr) Is ¶
func (r *RetryLimitReachedErr) Is(err error) bool
Is reports whether err is RetryLimitReachedErr.
Click to show internal directories.
Click to hide internal directories.