- AkkaApplication.stop() will stop the guardian; when that stops, it
will send ChildTerminated to the BubbleWalker, who will then complete
a Promise
- AkkaApplication.terminationFuture is that Promise and available for
registration of onComplete callback, used now to shutdown the
Scheduler
- AkkaSpec extends BeforeAndAfterAll and uses that to call app.stop(),
exposing atStartup() and atTermination() overridable hooks
- fixed some tests
- channel field was always set to NullChannel and not used
- receiver field is better put into the Mailbox, because there it takes
space only once per actor
- leaves only the bare SystemMessage to be queued
- remove global Config
- pull everything which depended on it into new AkkaApplication
- leave EventHandler alone for the moment: that evil sucker gets his
very own AkkaApplication("akka-reference.conf") until we have settled
on an acceptable logging API without globals
- make akka-actor and akka-testkit compile
- TestKit uses implicit AkkaApplication passing for maximum convenience
- Actor object nearly completely removed, actor creation possible via
ActorRefFactory interface which is implemented by AkkaApplication and
ActorContext
- serialization of ActorRef is probably broken, and so is the reflective
RemoteSupport (now needs AkkaApplication constructor arg)
- everything else is still broken, including akka-actor-tests, so this
is of course all not runtime-tested
- make Scheduled==4 to allow bitwise operations
- unfold become(status) into three methods for better inlining
- optimize patterns in setAsIdle away: table switch is probably slower
than a single conditional
- fix LoggingReceiveSpec glitch wrt. async stop()