Merge pull request #40 from syumai/rename-response-writer-buffer-to-response-writer

rename ResponseWriterBuffer to ResponseWriter
This commit is contained in:
syumai 2023-04-29 12:20:39 +09:00 committed by GitHub
commit 65e5dce287
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
2 changed files with 10 additions and 10 deletions

View File

@ -55,7 +55,7 @@ func handleRequest(reqObj js.Value, runtimeCtxObj js.Value) (js.Value, error) {
ctx := runtimecontext.New(context.Background(), runtimeCtxObj) ctx := runtimecontext.New(context.Background(), runtimeCtxObj)
req = req.WithContext(ctx) req = req.WithContext(ctx)
reader, writer := io.Pipe() reader, writer := io.Pipe()
w := &jshttp.ResponseWriterBuffer{ w := &jshttp.ResponseWriter{
HeaderValue: http.Header{}, HeaderValue: http.Header{},
StatusCode: http.StatusOK, StatusCode: http.StatusOK,
Reader: reader, Reader: reader,

View File

@ -7,7 +7,7 @@ import (
"syscall/js" "syscall/js"
) )
type ResponseWriterBuffer struct { type ResponseWriter struct {
HeaderValue http.Header HeaderValue http.Header
StatusCode int StatusCode int
Reader *io.PipeReader Reader *io.PipeReader
@ -16,30 +16,30 @@ type ResponseWriterBuffer struct {
Once sync.Once Once sync.Once
} }
var _ http.ResponseWriter = &ResponseWriterBuffer{} var _ http.ResponseWriter = &ResponseWriter{}
// Ready indicates that ResponseWriterBuffer is ready to be converted to Response. // Ready indicates that ResponseWriter is ready to be converted to Response.
func (w *ResponseWriterBuffer) Ready() { func (w *ResponseWriter) Ready() {
w.Once.Do(func() { w.Once.Do(func() {
close(w.ReadyCh) close(w.ReadyCh)
}) })
} }
func (w *ResponseWriterBuffer) Write(data []byte) (n int, err error) { func (w *ResponseWriter) Write(data []byte) (n int, err error) {
w.Ready() w.Ready()
return w.Writer.Write(data) return w.Writer.Write(data)
} }
func (w *ResponseWriterBuffer) Header() http.Header { func (w *ResponseWriter) Header() http.Header {
return w.HeaderValue return w.HeaderValue
} }
func (w *ResponseWriterBuffer) WriteHeader(statusCode int) { func (w *ResponseWriter) WriteHeader(statusCode int) {
w.StatusCode = statusCode w.StatusCode = statusCode
} }
// ToJSResponse converts *ResponseWriterBuffer to JavaScript sides Response. // ToJSResponse converts *ResponseWriter to JavaScript sides Response.
// - Response: https://developer.mozilla.org/docs/Web/API/Response // - Response: https://developer.mozilla.org/docs/Web/API/Response
func (w *ResponseWriterBuffer) ToJSResponse() js.Value { func (w *ResponseWriter) ToJSResponse() js.Value {
return newJSResponse(w.StatusCode, w.HeaderValue, w.Reader) return newJSResponse(w.StatusCode, w.HeaderValue, w.Reader)
} }