| | |
| | | // Recv recv data |
| | | Recv() ([]byte, error) |
| | | |
| | | // Recv2 recv to param |
| | | Recv2([]byte) (int, error) |
| | | |
| | | // Close close Deliver |
| | | Close() |
| | | } |
| | |
| | | if m > ModeStart && m < ModeNNG { |
| | | return nngServer(m, url, args...) |
| | | } else if m == Shm { |
| | | s, _ := shmServer(m, url, args...) |
| | | s, err := shmServer(m, url, args...) |
| | | if err != nil { |
| | | s = nil |
| | | } |
| | | return s |
| | | } |
| | | return nil |
| | |
| | | if m > ModeStart && m < ModeNNG { |
| | | return nngClient(m, url, args...) |
| | | } else if m == Shm { |
| | | s, _ := shmClient(m, url, args...) |
| | | s, err := shmClient(m, url, args...) |
| | | if err != nil { |
| | | s = nil |
| | | } |
| | | return s |
| | | } |
| | | |
| | |
| | | func NewServerWithError(m Mode, url string, args ...interface{}) (Deliver, error) { |
| | | |
| | | if m > ModeStart && m < ModeNNG { |
| | | return nngServer(m, url, args...), nil |
| | | s := nngServer(m, url, args...) |
| | | if s == nil { |
| | | return nil, errors.New("nng create server error") |
| | | } |
| | | return s, nil |
| | | } else if m == Shm { |
| | | return shmServer(m, url, args...) |
| | | } |
| | |
| | | func NewClientWithError(m Mode, url string, args ...interface{}) (Deliver, error) { |
| | | |
| | | if m > ModeStart && m < ModeNNG { |
| | | return nngClient(m, url, args...), nil |
| | | s := nngClient(m, url, args...) |
| | | if s == nil { |
| | | return nil, errors.New("nng create client error") |
| | | } |
| | | return s, nil |
| | | } else if m == Shm { |
| | | return shmClient(m, url, args...) |
| | | } |
| | | |
| | | return nil, errors.New("please choose a suitable deliver.mode") |
| | | } |
| | | |
| | | // NewServerWithTimeout with timeout |
| | | func NewServerWithTimeout(m Mode, url string, tm int, args ...interface{}) (Deliver, error) { |
| | | if m > ModeStart && m < ModeNNG { |
| | | setTimeOut(tm) |
| | | s := nngServer(m, url, args...) |
| | | if s == nil { |
| | | return nil, errors.New("nng create server error") |
| | | } |
| | | return s, nil |
| | | } else if m == Shm { |
| | | return shmServer(m, url, args...) |
| | | } |
| | | return nil, errors.New("please choose a suitable deliver.mode") |
| | | } |
| | | |
| | | // NewClientWithTimeout with timeout, tm unit millisecond |
| | | func NewClientWithTimeout(m Mode, url string, tm int, args ...interface{}) (Deliver, error) { |
| | | if m > ModeStart && m < ModeNNG { |
| | | setTimeOut(tm) |
| | | |
| | | s := nngClient(m, url, args...) |
| | | if s == nil { |
| | | return nil, errors.New("nng create client error") |
| | | } |
| | | return s, nil |
| | | } else if m == Shm { |
| | | return shmClient(m, url, args...) |
| | | } |