node package manager
Stop writing boring code. Discover, share, and reuse within your team. Create a free org »



Build Status

apparat is a simple but powerful way to organize async code for nodejs


npm install apparat


read domain from file domain.txt.

write resolved IPV4 addresses to addresses4.txt and write resolved IPV6 addresses to addresses6.txt in parallel.

remove domain.txt when both files have been written successfully.

fs = require 'fs'
dns = require 'dns'
apparat = require 'apparat'
{receivesendonErrordebug} = apparat
debug console.log
onError (err) -> throw err
fs.readFile 'domain.txt'send 'contents'
receive 'contents'(contents) ->
    domain = contents.toString().trim()
    # parallel 
    dns.resolve4 domainsend 'addresses4'
    dns.resolve6 domainsend 'addresses6'
receive 'addresses4'(addresses) ->
    fs.writeFile 'addresses4.txt'addresses.join('\n')send 'addresses4 written'
receive 'addresses6'(addresses) ->
    fs.writeFile 'addresses6.txt'addresses.join('\n')send 'addresses6 written'
receive 'addresses4 written''addresses6 written'->
    fs.unlink 'domain.txt'send 'deleted'
receive 'deleted'->
    console.log 'OK'

license: MIT