Add transport dial timeout

This commit is contained in:
Asim
2016-01-03 21:25:03 +00:00
parent 332a229169
commit d43d3e8efa
4 changed files with 32 additions and 8 deletions

View File

@@ -1,5 +1,9 @@
package transport
import (
"time"
)
type Message struct {
Header map[string]string
Body []byte
@@ -35,7 +39,8 @@ type Options struct {
}
type DialOptions struct {
Stream bool
Stream bool
Timeout time.Duration
// Other options to be used by broker implementations
Options map[string]string
@@ -47,6 +52,8 @@ type DialOption func(*DialOptions)
var (
DefaultTransport Transport = newHttpTransport([]string{})
DefaultDialTimeout = time.Second * 5
)
func WithStream() DialOption {
@@ -55,6 +62,12 @@ func WithStream() DialOption {
}
}
func WithTimeout(d time.Duration) DialOption {
return func(o *DialOptions) {
o.Timeout = d
}
}
func NewTransport(addrs []string, opt ...Option) Transport {
return newHttpTransport(addrs, opt...)
}