function( eventaur, settings ) {
  var gith = this;
  this.settings = settings || {};

  // make this bad boy an event emitter
  EventEmitter2.call( this, {
    delimiter: ':',
    maxListeners: 0
  });

  // handle bound payloads
  eventaur.on( 'payload', function( originalPayload ) {

    // make a simpler payload
    var payload = gith.simplifyPayload( originalPayload );

    // bother doing anything?
    if ( filterSettings( settings, payload ) ) {

      // all the things
      gith.emit( 'all', payload );

      // did we do any branch work?
      if ( originalPayload.created && originalPayload.forced && payload.branch ) {
        gith.emit( 'branch:add', payload );
      }
      if (  originalPayload.deleted && originalPayload.forced && payload.branch ) {
        gith.emit( 'branch:delete', payload );
      }

      // how about files?
      if ( payload.files.added.length > 0 ) {
        gith.emit( 'file:add', payload );
      }
      if ( payload.files.deleted.length > 0 ) {
        gith.emit( 'file:delete', payload );
      }
      if ( payload.files.modified.length > 0 ) {
        gith.emit( 'file:modify', payload );
      }
      if ( payload.files.all.length > 0 ) {
        gith.emit( 'file:all', payload );
      }

      // tagging?
      if ( payload.tag && originalPayload.created ) {
        gith.emit( 'tag:add', payload );
      }
      if ( payload.tag && originalPayload.deleted ) {
        gith.emit( 'tag:delete', payload );
      }
    }
  });
}
function( eventaur, settings ) {
  var gith = this;
  this.settings = settings || {};

  
  EventEmitter2.call( this, {
    delimiter: ':',
    maxListeners: 0
  });

  
  eventaur.on( 'payload', function( originalPayload ) {

    
    var payload = gith.simplifyPayload( originalPayload );

    
    if ( filterSettings( settings, payload ) ) {

      
      gith.emit( 'all', payload );

      
      if ( originalPayload.created && originalPayload.forced && payload.branch ) {
        gith.emit( 'branch:add', payload );
      }
      if (  originalPayload.deleted && originalPayload.forced && payload.branch ) {
        gith.emit( 'branch:delete', payload );
      }

      
      if ( payload.files.added.length > 0 ) {
        gith.emit( 'file:add', payload );
      }
      if ( payload.files.deleted.length > 0 ) {
        gith.emit( 'file:delete', payload );
      }
      if ( payload.files.modified.length > 0 ) {
        gith.emit( 'file:modify', payload );
      }
      if ( payload.files.all.length > 0 ) {
        gith.emit( 'file:all', payload );
      }

      
      if ( payload.tag && originalPayload.created ) {
        gith.emit( 'tag:add', payload );
      }
      if ( payload.tag && originalPayload.deleted ) {
        gith.emit( 'tag:delete', payload );
      }
    }
  });
}
function ( eventaur , settings ) { var gith = this ; this . settings = settings || { } ; // make this bad boy an event emitter EventEmitter2 . call ( this , { delimiter : ':' , maxListeners : 0 } ) ; // handle bound payloads eventaur . on ( 'payload' , function ( originalPayload ) { // make a simpler payload var payload = gith . simplifyPayload ( originalPayload ) ; // bother doing anything? if ( filterSettings ( settings , payload ) ) { // all the things gith . emit ( 'all' , payload ) ; // did we do any branch work? if ( originalPayload . created && originalPayload . forced && payload . branch ) { gith . emit ( 'branch:add' , payload ) ; } if ( originalPayload . deleted && originalPayload . forced && payload . branch ) { gith . emit ( 'branch:delete' , payload ) ; } // how about files? if ( payload . files . added . length > 0 ) { gith . emit ( 'file:add' , payload ) ; } if ( payload . files . deleted . length > 0 ) { gith . emit ( 'file:delete' , payload ) ; } if ( payload . files . modified . length > 0 ) { gith . emit ( 'file:modify' , payload ) ; } if ( payload . files . all . length > 0 ) { gith . emit ( 'file:all' , payload ) ; } // tagging? if ( payload . tag && originalPayload . created ) { gith . emit ( 'tag:add' , payload ) ; } if ( payload . tag && originalPayload . deleted ) { gith . emit ( 'tag:delete' , payload ) ; } } } ) ; }
Used by exports.module.create's returned function to create new gith objects that hold settings and emit events
Used by exports . module . create s returned function to create new gith objects that hold settings and emit events