etcdhttp: writeEvent -> writeKeyEvent
parent
ca73f25615
commit
06b196e345
|
@ -122,8 +122,7 @@ func (h serverHandler) serveKeys(w http.ResponseWriter, r *http.Request) {
|
|||
|
||||
switch {
|
||||
case resp.Event != nil:
|
||||
ev := trimEventPrefix(resp.Event, etcdserver.StoreKeysPrefix)
|
||||
if err := writeEvent(w, ev, h.timer); err != nil {
|
||||
if err := writeKeyEvent(w, resp.Event, h.timer); err != nil {
|
||||
// Should never be reached
|
||||
log.Printf("error writing event: %v", err)
|
||||
}
|
||||
|
@ -427,10 +426,10 @@ func writeError(w http.ResponseWriter, err error) {
|
|||
}
|
||||
}
|
||||
|
||||
// writeEvent serializes a single Event and writes the resulting
|
||||
// JSON to the given ResponseWriter, along with the appropriate
|
||||
// headers
|
||||
func writeEvent(w http.ResponseWriter, ev *store.Event, rt etcdserver.RaftTimer) error {
|
||||
// writeKeyEvent trims the prefix of key path in a single Event under
|
||||
// StoreKeysPrefix, serializes it and writes the resulting JSON to the given
|
||||
// ResponseWriter, along with the appropriate headers.
|
||||
func writeKeyEvent(w http.ResponseWriter, ev *store.Event, rt etcdserver.RaftTimer) error {
|
||||
if ev == nil {
|
||||
return errors.New("cannot write empty Event!")
|
||||
}
|
||||
|
@ -443,6 +442,7 @@ func writeEvent(w http.ResponseWriter, ev *store.Event, rt etcdserver.RaftTimer)
|
|||
w.WriteHeader(http.StatusCreated)
|
||||
}
|
||||
|
||||
ev = trimEventPrefix(ev, etcdserver.StoreKeysPrefix)
|
||||
return json.NewEncoder(w).Encode(ev)
|
||||
}
|
||||
|
||||
|
|
|
@ -526,7 +526,7 @@ func (drt dummyRaftTimer) Term() uint64 { return uint64(5) }
|
|||
func TestWriteEvent(t *testing.T) {
|
||||
// nil event should not panic
|
||||
rw := httptest.NewRecorder()
|
||||
writeEvent(rw, nil, dummyRaftTimer{})
|
||||
writeKeyEvent(rw, nil, dummyRaftTimer{})
|
||||
h := rw.Header()
|
||||
if len(h) > 0 {
|
||||
t.Fatalf("unexpected non-empty headers: %#v", h)
|
||||
|
@ -569,7 +569,7 @@ func TestWriteEvent(t *testing.T) {
|
|||
|
||||
for i, tt := range tests {
|
||||
rw := httptest.NewRecorder()
|
||||
writeEvent(rw, tt.ev, dummyRaftTimer{})
|
||||
writeKeyEvent(rw, tt.ev, dummyRaftTimer{})
|
||||
if gct := rw.Header().Get("Content-Type"); gct != "application/json" {
|
||||
t.Errorf("case %d: bad Content-Type: got %q, want application/json", i, gct)
|
||||
}
|
||||
|
|
Loading…
Reference in New Issue