air_traffic_controller

Re-routing event emitter events for great good

air_traffic_controller

Re routing event emitter events for great good

Example:

  var EventEmitter = require('events').EventEmitter,
      emitter      = new EventEmitter(),
      atc          = require('air_traffic_controller').createController(emitter);
 
  function handleThis(arg1arg2) {
 
  }
 
  atc.route('1', '2');
 
  emitter.on('2', handleThis);
 
  emitter.emit('1', 'Brandon', 'Farmer');

handleThis will be called and receive the arguments 'Brandon' and 'Farmer'

Example 2:

  var EventEmitter = require('events').EventEmitter,
      emitter      = new EventEmitter(),
      atc          = require('air_traffic_controller').createController(emitter);
 
  function handleThis(arg1arg2) {
 
  }
 
  function handleThat(arg1arg2) {
 
  }
 
  atc.route('1', ['2', '3']);
 
  emitter.on('2', handleThis);
  emitter.on('3', handleThat);
 
  emitter.emit('1', 'Brandon', 'Farmer');

handleThis and handleThat will be called and receive the arguments 'Brandon' and 'Farmer'

Example 3:

  var EventEmitter = require('events').EventEmitter,
      emitter      = new EventEmitter(),
      atc          = require('air_traffic_controller').createController(emitter);
 
  function handleThis(arg1arg2arg3arg4) {
 
  }
 
  options = {
    prefix: ['prefix'],
    suffix: ['suffix']
  }
 
  atc.route('1', '2', options);
 
  emitter.on('2', handleThis);
 
  emitter.emit('1', 'Brandon', 'Farmer');

handleThis will be called and receive the arguments 'prefix', 'Brandon', 'Farmer', and 'suffix' in that order

I am planning on using this module to connect other event based modules and for fanning out events