1234567891011121314151617181920212223242526 |
- package remote_manager
- import (
- "github.com/langgenius/dify-plugin-daemon/internal/types/entities"
- "github.com/panjf2000/gnet/v2"
- )
- func (r *RemotePluginRuntime) Listen(session_id string) *entities.BytesIOListener {
- listener := entities.NewIOListener[[]byte]()
- listener.OnClose(func() {
- r.removeCallback(session_id)
- })
- r.addCallback(session_id, func(data []byte) {
- listener.Emit(data)
- })
- return listener
- }
- func (r *RemotePluginRuntime) Write(session_id string, data []byte) {
- r.conn.AsyncWrite(append(data, '\n'), func(c gnet.Conn, err error) error {
- return nil
- })
- }
|