Since this is not a promise, you definitely don't want to be throwing. The callback should take the error, no?

Alternatively, you could always promisify this. :)