@ Override public void fire ( ) { boolean needsReceiver = true ; for ( final AbstractRequest < ? , ? > request : this . state . invocations ) { if ( request . hasReceiver ( ) ) { needsReceiver = false ; break ; } } if ( needsReceiver ) { this . doFire ( new Receiver < Void > ( ) { @ Override public void onSuccess ( final Void response ) { // Don't care } } ) ; } else { this . doFire ( null ) ; } }
Make sure there s a default receiver so errors don t get dropped . This behavior should be revisited when chaining is supported depending on whether or not chained invocations can fail independently .