package transport import "context" type noopTransport struct { opts Options } // NewTransport creates new noop transport func NewTransport(opts ...Option) Transport { return &noopTransport{opts: NewOptions(opts...)} } func (t *noopTransport) Init(opts ...Option) error { for _, o := range opts { o(&t.opts) } return nil } func (t *noopTransport) Options() Options { return t.opts } func (t *noopTransport) Dial(ctx context.Context, addr string, opts ...DialOption) (Client, error) { options := NewDialOptions(opts...) return &noopClient{opts: options}, nil } func (t *noopTransport) Listen(ctx context.Context, addr string, opts ...ListenOption) (Listener, error) { options := NewListenOptions(opts...) return &noopListener{opts: options}, nil } func (t *noopTransport) String() string { return "noop" } type noopClient struct { opts DialOptions } func (c *noopClient) Close() error { return nil } func (c *noopClient) Local() string { return "" } func (c *noopClient) Remote() string { return "" } func (c *noopClient) Recv(*Message) error { return nil } func (c *noopClient) Send(*Message) error { return nil } type noopListener struct { opts ListenOptions } func (l *noopListener) Addr() string { return "" } func (l *noopListener) Accept(fn func(Socket)) error { return nil } func (l *noopListener) Close() error { return nil }