Move HttpAdapter to own file

This commit is contained in:
Alex
2017-07-27 08:43:52 +01:00
committed by Alex Ellis
parent 9df92c7f1b
commit fa210a0dd3
2 changed files with 43 additions and 42 deletions

View File

@ -0,0 +1,42 @@
package types
import (
"fmt"
"net/http"
)
// WriteAdapter adapts a ResponseWriter
type WriteAdapter struct {
Writer http.ResponseWriter
HttpResult *HttpResult
}
type HttpResult struct {
HeaderCode int
}
//NewWriteAdapter create a new NewWriteAdapter
func NewWriteAdapter(w http.ResponseWriter) WriteAdapter {
return WriteAdapter{Writer: w, HttpResult: &HttpResult{}}
}
//Header adapts Header
func (w WriteAdapter) Header() http.Header {
return w.Writer.Header()
}
// Write adapts Write
func (w WriteAdapter) Write(data []byte) (int, error) {
return w.Writer.Write(data)
}
// WriteHeader adapts WriteHeader
func (w WriteAdapter) WriteHeader(i int) {
w.Writer.WriteHeader(i)
w.HttpResult.HeaderCode = i
fmt.Println("GetHeaderCode before", w.HttpResult.HeaderCode)
}
// GetHeaderCode result from WriteHeader
func (w *WriteAdapter) GetHeaderCode() int {
return w.HttpResult.HeaderCode
}