[Pixlib] [Request] EventBroadcatser is empty or not ?
Francis Bourre
peterphonix at usa.net
Wed Oct 5 09:47:58 PDT 2005
Ok Romain, nice shot, I just added isEmpty method in [revision8].
Here's below unittests made to ensure reliability of this new method.
If someone catches something's missing for code coverage, just tell me.
Enjoy!
francis
public function testIsEmpty():Void
{
// test0
_oEB.addListener( _oListener0 );
assertTrue("EventBroadcaster.isEmpty doesn't return false on test0.", !_oEB.isEmpty());
_oEB.removeListener( _oListener0 );
assertTrue("EventBroadcaster.isEmpty doesn't return true on test0.", _oEB.isEmpty());
// test1
_oEB.addEventListener( EventBroadcasterTests.onTestEVENT, _oListener1 );
assertTrue("EventBroadcaster.isEmpty doesn't return false on test1.", !_oEB.isEmpty());
_oEB.removeListener( _oListener1 );
assertTrue("EventBroadcaster.isEmpty doesn't return true on test1.", _oEB.isEmpty());
// test2
_oEB.addEventListener( EventBroadcasterTests.onTestEVENT, _oListener2 );
_oEB.addListener( _oListener2 );
assertTrue("EventBroadcaster.isEmpty doesn't return false on test2.", !_oEB.isEmpty());
_oEB.removeListener( _oListener2 );
assertTrue("EventBroadcaster.isEmpty doesn't return true on test2.", _oEB.isEmpty());
// test3
_oEB.addEventListener( EventBroadcasterTests.onTestEVENT, _oListener3, _oListener3._onTest );
assertTrue("EventBroadcaster.isEmpty doesn't return false on test3.", !_oEB.isEmpty());
_oEB.removeListener( _oListener3 );
assertTrue("EventBroadcaster.isEmpty doesn't return true on test3.", _oEB.isEmpty());
// test4
_oEB.addEventListener( EventBroadcasterTests.onTestEVENT, _oListener4, _oListener4._onTest );
assertTrue("EventBroadcaster.isEmpty doesn't return false on test4.", !_oEB.isEmpty());
_oEB.removeEventListener( EventBroadcasterTests.onTestEVENT, _oListener4 );
assertTrue("EventBroadcaster.isEmpty doesn't return true on test4.", _oEB.isEmpty());
// test5
_oEB.addEventListener( EventBroadcasterTests.onTestEVENT, _oListener5 );
assertTrue("EventBroadcaster.isEmpty doesn't return false on test5.", !_oEB.isEmpty());
_oEB.removeEventListener( EventBroadcasterTests.onTestEVENT, _oListener5 );
assertTrue("EventBroadcaster.isEmpty doesn't return true on test5.", _oEB.isEmpty());
// test6
_oEB.addEventListener( EventBroadcasterTests.onTestEVENT, _d );
assertTrue("EventBroadcaster.isEmpty doesn't return false on test6.", !_oEB.isEmpty());
_oEB.removeEventListener( EventBroadcasterTests.onTestEVENT, _d );
assertTrue("EventBroadcaster.isEmpty doesn't return true on test6.", _oEB.isEmpty());
}
----- Original Message -----
From: Romain ECARNOT
To: Pixlib at osflash.org
Sent: Wednesday, October 05, 2005 5:05 PM
Subject: [Pixlib] [Request] EventBroadcatser is empty or not ?
Hi all,
Talking about com.bourre.EventBroadcaster.
We can know if generic listeners are defined using evInstence.getListenerArray().length;
Or if specific listeners exist using evInstence.getListenerArray("myEventType").length;
But there is no solutions, I think, to know if EventBroadcaster is really empty or not ?
Like a function wich loop throw all listeners array to know if one exist somewhere, like an isEmpty()
If there is no generic listeners and none specific event exist so return true.
Is there anyway to know if a listener is connected to EventBroadcaster (generic or specific) ?
Just an example, I want to create a System Observer. This observer can broadcast many events.
I can register generic listener to listen to all events (Listener interface definition)
Or I can register specific listener for specific event (example : "onMyEvent").
My observer himself have to listen something else (call SYSDLL in example) in order to broadcast messages.
I can register many many listeners.
So When I register a listener for the first time, I call my Observer to listen to SYSDLL .
But when I disconnect listener (generic or specific) I would like to stop listening SYSDLL if there is no more listeners in EventBroadcaster. (perf issue)
Like FPSBeacon to make a brief summary ;)
Hope I'm clear. Any Ideas ?
Cheers,
Romain.
------------------------------------------------------------------------------
_______________________________________________
Pixlib mailing list
Pixlib at osflash.org
http://osflash.org/mailman/listinfo/pixlib_osflash.org
-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://osflash.org/pipermail/pixlib_osflash.org/attachments/20051005/21c34fed/attachment.htm
More information about the Pixlib
mailing list