Skip to content

Instantly share code, notes, and snippets.

@delvedor
Last active June 5, 2017 13:20
Show Gist options
  • Save delvedor/31a16ba231388ec9d15c6988e60b679b to your computer and use it in GitHub Desktop.
Save delvedor/31a16ba231388ec9d15c6988e60b679b to your computer and use it in GitHub Desktop.
function send(payload) {
// ...
runOnResponseHook(this._req, this.res, this.handle._hook.onResponse, payload)
}
function wrapReplySend (reply, payload) {
return function send (payload) {
// return reply.send(payload)
return runOnResponseHook(reply._req, reply.res, reply.handle._hook.onResponse, payload)
}
}
function runOnResponseHook (req, res, onResponse, payload) {
// preRouting hook
setImmediate(
runHooks,
new State(req, res, payload),
hookIterator,
onResponse,
wrapReplyEnd
)
}
}
function wrapReplyEnd (err, arr) {
if (err) handleErr(err)
console.log(this.payload)
// arr[0] is reply
// arr[1] is payload
arr[0].sent = true
arr[0].res.end(arr[1])
}
function State ( req, res, payload) {
this.req = req
this.res = res
this.payload = payload
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment