che-operator/vendor/github.com/moby/spdystream
Oleksandr Andriienko b8cc02bf9a
feat: Update controller runtime (#1064)
* Update controller runtime for che-operator and related deps.
Controller runtime update to version v0.9.5
go-client update to version v0.21.3
Udaptated tests to the new controller runtime and go-client.
Use newer image puller.

Signed-off-by: Oleksandr Andriienko <oandriie@redhat.com>
2021-10-01 14:54:37 +03:00
..
spdy feat: Update controller runtime (#1064) 2021-10-01 14:54:37 +03:00
CONTRIBUTING.md feat: Update controller runtime (#1064) 2021-10-01 14:54:37 +03:00
LICENSE feat: Update controller runtime (#1064) 2021-10-01 14:54:37 +03:00
MAINTAINERS feat: Update controller runtime (#1064) 2021-10-01 14:54:37 +03:00
NOTICE feat: Update controller runtime (#1064) 2021-10-01 14:54:37 +03:00
README.md feat: Update controller runtime (#1064) 2021-10-01 14:54:37 +03:00
connection.go feat: Update controller runtime (#1064) 2021-10-01 14:54:37 +03:00
go.mod feat: Update controller runtime (#1064) 2021-10-01 14:54:37 +03:00
go.sum feat: Update controller runtime (#1064) 2021-10-01 14:54:37 +03:00
handlers.go feat: Update controller runtime (#1064) 2021-10-01 14:54:37 +03:00
priority.go feat: Update controller runtime (#1064) 2021-10-01 14:54:37 +03:00
stream.go feat: Update controller runtime (#1064) 2021-10-01 14:54:37 +03:00
utils.go feat: Update controller runtime (#1064) 2021-10-01 14:54:37 +03:00

README.md

SpdyStream

A multiplexed stream library using spdy

Usage

Client example (connecting to mirroring server without auth)

package main

import (
	"fmt"
	"github.com/moby/spdystream"
	"net"
	"net/http"
)

func main() {
	conn, err := net.Dial("tcp", "localhost:8080")
	if err != nil {
		panic(err)
	}
	spdyConn, err := spdystream.NewConnection(conn, false)
	if err != nil {
		panic(err)
	}
	go spdyConn.Serve(spdystream.NoOpStreamHandler)
	stream, err := spdyConn.CreateStream(http.Header{}, nil, false)
	if err != nil {
		panic(err)
	}

	stream.Wait()

	fmt.Fprint(stream, "Writing to stream")

	buf := make([]byte, 25)
	stream.Read(buf)
	fmt.Println(string(buf))

	stream.Close()
}

Server example (mirroring server without auth)

package main

import (
	"github.com/moby/spdystream"
	"net"
)

func main() {
	listener, err := net.Listen("tcp", "localhost:8080")
	if err != nil {
		panic(err)
	}
	for {
		conn, err := listener.Accept()
		if err != nil {
			panic(err)
		}
		spdyConn, err := spdystream.NewConnection(conn, true)
		if err != nil {
			panic(err)
		}
		go spdyConn.Serve(spdystream.MirrorStreamHandler)
	}
}

Copyright 2013-2021 Docker, inc. Released under the Apache 2.0 license.