iwita b9152718d2 new version 5 gadi atpakaļ
..
spdy b9152718d2 new version 5 gadi atpakaļ
BUILD b9152718d2 new version 5 gadi atpakaļ
CONTRIBUTING.md b9152718d2 new version 5 gadi atpakaļ
LICENSE b9152718d2 new version 5 gadi atpakaļ
LICENSE.docs b9152718d2 new version 5 gadi atpakaļ
MAINTAINERS b9152718d2 new version 5 gadi atpakaļ
README.md b9152718d2 new version 5 gadi atpakaļ
connection.go b9152718d2 new version 5 gadi atpakaļ
handlers.go b9152718d2 new version 5 gadi atpakaļ
priority.go b9152718d2 new version 5 gadi atpakaļ
stream.go b9152718d2 new version 5 gadi atpakaļ
utils.go b9152718d2 new version 5 gadi atpakaļ

README.md

SpdyStream

A multiplexed stream library using spdy

Usage

Client example (connecting to mirroring server without auth)

package main

import (
	"fmt"
	"github.com/docker/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/docker/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 and license

Copyright © 2014-2015 Docker, Inc. All rights reserved, except as follows. Code is released under the Apache 2.0 license. The README.md file, and files in the "docs" folder are licensed under the Creative Commons Attribution 4.0 International License under the terms and conditions set forth in the file "LICENSE.docs". You may obtain a duplicate copy of the same license, titled CC-BY-SA-4.0, at http://creativecommons.org/licenses/by/4.0/.