type Upgrader … // RoundTripperFor returns a round tripper and upgrader to use with SPDY. func RoundTripperFor(config *restclient.Config) (http.RoundTripper, Upgrader, error) { … } type dialer … var _ … // NewDialer will create a dialer that connects to the provided URL and upgrades the connection to SPDY. func NewDialer(upgrader Upgrader, client *http.Client, method string, url *url.URL) httpstream.Dialer { … } func (d *dialer) Dial(protocols ...string) (httpstream.Connection, string, error) { … } // Negotiate opens a connection to a remote server and attempts to negotiate // a SPDY connection. Upon success, it returns the connection and the protocol selected by // the server. The client transport must use the upgradeRoundTripper - see RoundTripperFor. func Negotiate(upgrader Upgrader, client *http.Client, req *http.Request, protocols ...string) (httpstream.Connection, string, error) { … }