quoting docs: When an EventEmitter instance experiences an error, the typical action is to emit an 'error' event. Error events are treated as a special case in node. If there is no listener for it, then the default action is to print a stack trace and exit the program.
2013/2/25 Glenn Block <glenn.bl...@gmail.com> > Jose, thanks for the clarification. > > Literally right after sending the mail I was thinking I forgot all about > event emitters :-) > > In terms of error, are you saying that any time you emit an event called > "Error" the runtime exits if there is no listener? > > > > > On Mon, Feb 25, 2013 at 3:12 AM, José F. Romaniello < > jfromanie...@gmail.com> wrote: > >> +1 on event emitter. Callback with an array of errors is not that common. >> You should return an event emitter with complete and error events. be >> aware that when you emit an 'error' event and no one is listening in the >> application exits >> >> >> 2013/2/25 Pedro Teixeira <pedro.teixe...@gmail.com> >> >>> Hey Glenn, >>> >>> For something this complex I think an event emitter may be better suited. >>> >>> -- >>> Pedro >>> >>> On Monday, February 25, 2013 at 9:57 AM, Glenn Block wrote: >>> >>> Hello all >>> >>> Let's assume you have an API that results in a batch of HTTP calls which >>> fire async and which are not sequential. A constraint of the API is that >>> any errors that occur during the calls need to get returned to the user. >>> >>> How have you customarily designed this? >>> >>> One idea was something like the following >>> >>> function send(message, callback) { >>> } >>> >>> where callback is function(error, results) { >>> } >>> >>> In this case error if not null is a JSON object with a collection of >>> child objects with the errors. >>> >>> An alternative idea I had was to have an additional completion callback >>> per item. >>> >>> so: >>> >>> function send(message, completionCallback, itemCallback) { >>> } >>> >>> This introduces a callback for each item that is processed. In this case >>> the completion callback has a single error if ANY errors occur while the >>> itemCallback has individual errors as they occur. >>> >>> This is useful for cases where you might want to stop further processing >>> if the number of errors is very high. >>> >>> Thoughts / Experiences? >>> Glenn >>> >>> >>> >>> -- >>> -- >>> Job Board: http://jobs.nodejs.org/ >>> Posting guidelines: >>> https://github.com/joyent/node/wiki/Mailing-List-Posting-Guidelines >>> You received this message because you are subscribed to the Google >>> Groups "nodejs" group. >>> To post to this group, send email to nodejs@googlegroups.com >>> To unsubscribe from this group, send email to >>> nodejs+unsubscr...@googlegroups.com >>> For more options, visit this group at >>> http://groups.google.com/group/nodejs?hl=en?hl=en >>> >>> --- >>> You received this message because you are subscribed to the Google >>> Groups "nodejs" group. >>> To unsubscribe from this group and stop receiving emails from it, send >>> an email to nodejs+unsubscr...@googlegroups.com. >>> For more options, visit https://groups.google.com/groups/opt_out. >>> >>> >>> >>> >>> -- >>> -- >>> Job Board: http://jobs.nodejs.org/ >>> Posting guidelines: >>> https://github.com/joyent/node/wiki/Mailing-List-Posting-Guidelines >>> You received this message because you are subscribed to the Google >>> Groups "nodejs" group. >>> To post to this group, send email to nodejs@googlegroups.com >>> To unsubscribe from this group, send email to >>> nodejs+unsubscr...@googlegroups.com >>> For more options, visit this group at >>> http://groups.google.com/group/nodejs?hl=en?hl=en >>> >>> --- >>> You received this message because you are subscribed to the Google >>> Groups "nodejs" group. >>> To unsubscribe from this group and stop receiving emails from it, send >>> an email to nodejs+unsubscr...@googlegroups.com. >>> For more options, visit https://groups.google.com/groups/opt_out. >>> >>> >>> >> >> -- >> -- >> Job Board: http://jobs.nodejs.org/ >> Posting guidelines: >> https://github.com/joyent/node/wiki/Mailing-List-Posting-Guidelines >> You received this message because you are subscribed to the Google >> Groups "nodejs" group. >> To post to this group, send email to nodejs@googlegroups.com >> To unsubscribe from this group, send email to >> nodejs+unsubscr...@googlegroups.com >> For more options, visit this group at >> http://groups.google.com/group/nodejs?hl=en?hl=en >> >> --- >> You received this message because you are subscribed to the Google Groups >> "nodejs" group. >> To unsubscribe from this group and stop receiving emails from it, send an >> email to nodejs+unsubscr...@googlegroups.com. >> For more options, visit https://groups.google.com/groups/opt_out. >> >> >> > > -- > -- > Job Board: http://jobs.nodejs.org/ > Posting guidelines: > https://github.com/joyent/node/wiki/Mailing-List-Posting-Guidelines > You received this message because you are subscribed to the Google > Groups "nodejs" group. > To post to this group, send email to nodejs@googlegroups.com > To unsubscribe from this group, send email to > nodejs+unsubscr...@googlegroups.com > For more options, visit this group at > http://groups.google.com/group/nodejs?hl=en?hl=en > > --- > You received this message because you are subscribed to the Google Groups > "nodejs" group. > To unsubscribe from this group and stop receiving emails from it, send an > email to nodejs+unsubscr...@googlegroups.com. > For more options, visit https://groups.google.com/groups/opt_out. > > > -- -- Job Board: http://jobs.nodejs.org/ Posting guidelines: https://github.com/joyent/node/wiki/Mailing-List-Posting-Guidelines You received this message because you are subscribed to the Google Groups "nodejs" group. To post to this group, send email to nodejs@googlegroups.com To unsubscribe from this group, send email to nodejs+unsubscr...@googlegroups.com For more options, visit this group at http://groups.google.com/group/nodejs?hl=en?hl=en --- You received this message because you are subscribed to the Google Groups "nodejs" group. To unsubscribe from this group and stop receiving emails from it, send an email to nodejs+unsubscr...@googlegroups.com. For more options, visit https://groups.google.com/groups/opt_out.