Newer
Older
go func() {
err := c.listen()
if err != nil && onError != nil {
onError(err)
}
}()
}
// gets the peer info
func (c *Codec) PeerInfo() codec.PeerInfo {
return codec.PeerInfo{
Transport: "ipc",
RemoteAddr: "",
HTTP: codec.HttpInfo{},
}
}
func (c *Codec) ReadBatch(ctx context.Context) ([]*codec.Message, bool, error) {
}
}
// closes the connection
func (c *Codec) Close() error {
c.cn()
return nil
}
func (c *Codec) Write(p []byte) (n int, err error) {
if c.wr.Len() == 0 {
return nil
}
defer c.wr.Reset()
err = c.wr.WriteByte('\n')
if err != nil {
return err
}
_, err = c.wr.WriteTo(c.w)
if err != nil {
return err
}
// Closed returns a channel which is closed when the connection is closed.
func (c *Codec) Closed() <-chan struct{} {
return c.ctx.Done()
}
// RemoteAddr returns the peer address of the connection.
func (c *Codec) RemoteAddr() string {
return ""
}
// initctx := context.Background()
// c, _ := newClient(initctx, func(context.Context) (ServerCodec, error) {
// p1, p2 := net.Pipe()
// go handler.ServeCodec(NewCodec(p1))
// return NewCodec(p2), nil
// })
// return c