| // +build ignore,OMIT |
| |
| package resthandler // OMIT |
| |
| func finishStatus(r Result, complete bool) int { |
| if !complete { |
| return http.StatusAccepted // HL |
| } |
| if stat, ok := r.Object.(*api.Status); ok && stat.Code != 0 { |
| return stat.Code // HL |
| } |
| if r.Created { |
| return http.StatusCreated // HL |
| } |
| return http.StatusOK // HL |
| } |
| |
| func (h *RESTHandler) finishReq(op *Operation, w http.ResponseWriter, req *http.Request) { |
| result, complete := op.StatusOrResult() |
| status := finishStatus(result, complete) // HL |
| writeJSON(status, h.codec, result.Object, w) // HL |
| } |