From 6e85a84f0d2054b14d8046aec7e8386194dda1ca Mon Sep 17 00:00:00 2001 From: it33 Date: Tue, 23 Jun 2015 11:14:25 -0700 Subject: Correcting capitalization typo, f -> F --- .../src/github.com/braintree/manners/README.md | 33 ++++++++++++++++++++++ 1 file changed, 33 insertions(+) create mode 100644 Godeps/_workspace/src/github.com/braintree/manners/README.md (limited to 'Godeps/_workspace/src/github.com/braintree/manners/README.md') diff --git a/Godeps/_workspace/src/github.com/braintree/manners/README.md b/Godeps/_workspace/src/github.com/braintree/manners/README.md new file mode 100644 index 000000000..8c9a239b4 --- /dev/null +++ b/Godeps/_workspace/src/github.com/braintree/manners/README.md @@ -0,0 +1,33 @@ +# Manners + +A *polite* webserver for Go. + +Manners allows you to shut your Go webserver down gracefully, without dropping any requests. It can act as a drop-in replacement for the standard library's http.ListenAndServe function: + +```go +func main() { + handler := MyHTTPHandler() + server := manners.NewServer() + server.ListenAndServe(":7000", handler) +} +``` + +Then, when you want to shut the server down: + +```go +server.Shutdown <- true +``` + +(Note that this does not block until all the requests are finished. Rather, the call to server.ListenAndServe will stop blocking when all the requests are finished.) + +Manners ensures that all requests are served by incrementing a WaitGroup when a request comes in and decrementing it when the request finishes. + +If your request handler spawns Goroutines that are not guaranteed to finish with the request, you can ensure they are also completed with the `StartRoutine` and `FinishRoutine` functions on the server. + +### Compatability + +Manners 0.3.0 and above uses standard library functionality introduced in Go 1.3. + +### Installation + +`go get github.com/braintree/manners` -- cgit v1.2.3-1-g7c22