summaryrefslogtreecommitdiffstats
path: root/vendor/github.com/labstack/echo/response.go
diff options
context:
space:
mode:
authorWim <wim@42.be>2019-01-31 17:06:36 +0100
committerWim <wim@42.be>2019-01-31 17:06:36 +0100
commitc81c0dd22a7779148c4890cfd4bbf490054f06f1 (patch)
tree06ce6fcdc8f3a2278a2f3050ba42088dd2e64485 /vendor/github.com/labstack/echo/response.go
parentf8a1ab4622a5b833282e9ee42f382451d17c1a06 (diff)
downloadmatterbridge-msglm-c81c0dd22a7779148c4890cfd4bbf490054f06f1.tar.gz
matterbridge-msglm-c81c0dd22a7779148c4890cfd4bbf490054f06f1.tar.bz2
matterbridge-msglm-c81c0dd22a7779148c4890cfd4bbf490054f06f1.zip
Update vendor, move to labstack/echo/v4 Fixes #698
Diffstat (limited to 'vendor/github.com/labstack/echo/response.go')
-rw-r--r--vendor/github.com/labstack/echo/response.go110
1 files changed, 0 insertions, 110 deletions
diff --git a/vendor/github.com/labstack/echo/response.go b/vendor/github.com/labstack/echo/response.go
deleted file mode 100644
index 6244783b..00000000
--- a/vendor/github.com/labstack/echo/response.go
+++ /dev/null
@@ -1,110 +0,0 @@
-package echo
-
-import (
- "bufio"
- "net"
- "net/http"
-)
-
-type (
- // Response wraps an http.ResponseWriter and implements its interface to be used
- // by an HTTP handler to construct an HTTP response.
- // See: https://golang.org/pkg/net/http/#ResponseWriter
- Response struct {
- echo *Echo
- beforeFuncs []func()
- afterFuncs []func()
- Writer http.ResponseWriter
- Status int
- Size int64
- Committed bool
- }
-)
-
-// NewResponse creates a new instance of Response.
-func NewResponse(w http.ResponseWriter, e *Echo) (r *Response) {
- return &Response{Writer: w, echo: e}
-}
-
-// Header returns the header map for the writer that will be sent by
-// WriteHeader. Changing the header after a call to WriteHeader (or Write) has
-// no effect unless the modified headers were declared as trailers by setting
-// the "Trailer" header before the call to WriteHeader (see example)
-// To suppress implicit response headers, set their value to nil.
-// Example: https://golang.org/pkg/net/http/#example_ResponseWriter_trailers
-func (r *Response) Header() http.Header {
- return r.Writer.Header()
-}
-
-// Before registers a function which is called just before the response is written.
-func (r *Response) Before(fn func()) {
- r.beforeFuncs = append(r.beforeFuncs, fn)
-}
-
-// After registers a function which is called just after the response is written.
-// If the `Content-Length` is unknown, none of the after function is executed.
-func (r *Response) After(fn func()) {
- r.afterFuncs = append(r.afterFuncs, fn)
-}
-
-// WriteHeader sends an HTTP response header with status code. If WriteHeader is
-// not called explicitly, the first call to Write will trigger an implicit
-// WriteHeader(http.StatusOK). Thus explicit calls to WriteHeader are mainly
-// used to send error codes.
-func (r *Response) WriteHeader(code int) {
- if r.Committed {
- r.echo.Logger.Warn("response already committed")
- return
- }
- for _, fn := range r.beforeFuncs {
- fn()
- }
- r.Status = code
- r.Writer.WriteHeader(code)
- r.Committed = true
-}
-
-// Write writes the data to the connection as part of an HTTP reply.
-func (r *Response) Write(b []byte) (n int, err error) {
- if !r.Committed {
- r.WriteHeader(http.StatusOK)
- }
- n, err = r.Writer.Write(b)
- r.Size += int64(n)
- for _, fn := range r.afterFuncs {
- fn()
- }
- return
-}
-
-// Flush implements the http.Flusher interface to allow an HTTP handler to flush
-// buffered data to the client.
-// See [http.Flusher](https://golang.org/pkg/net/http/#Flusher)
-func (r *Response) Flush() {
- r.Writer.(http.Flusher).Flush()
-}
-
-// Hijack implements the http.Hijacker interface to allow an HTTP handler to
-// take over the connection.
-// See [http.Hijacker](https://golang.org/pkg/net/http/#Hijacker)
-func (r *Response) Hijack() (net.Conn, *bufio.ReadWriter, error) {
- return r.Writer.(http.Hijacker).Hijack()
-}
-
-// CloseNotify implements the http.CloseNotifier interface to allow detecting
-// when the underlying connection has gone away.
-// This mechanism can be used to cancel long operations on the server if the
-// client has disconnected before the response is ready.
-// See [http.CloseNotifier](https://golang.org/pkg/net/http/#CloseNotifier)
-func (r *Response) CloseNotify() <-chan bool {
- return r.Writer.(http.CloseNotifier).CloseNotify()
-}
-
-func (r *Response) reset(w http.ResponseWriter) {
- r.beforeFuncs = nil
- r.afterFuncs = nil
- r.Writer = w
- r.Size = 0
- r.Status = http.StatusOK
- r.Committed = false
-}