Out with ShutdownManager, in with LifecycleManager which handles both

initialization and shutdown. This will obviate the need for a lot of manual
wiring up. ShutdownManager still works and passes through to LifecycleManager,
but switching to the new deal is encouraged.


git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@5802 542714f4-19e9-0310-aa3c-eee0fc999fb1
This commit is contained in:
Michael Bayne
2009-05-27 18:32:45 +00:00
parent eb77929940
commit 0a20b36c8e
13 changed files with 326 additions and 160 deletions
@@ -33,17 +33,17 @@ import static com.threerings.presents.Log.log;
*/
@Singleton
public class PresentsInvoker extends ReportingInvoker
implements ShutdownManager.Shutdowner
implements LifecycleManager.ShutdownComponent
{
@Inject public PresentsInvoker (
PresentsDObjectMgr omgr, ShutdownManager shutmgr, ReportManager repmgr)
@Inject public PresentsInvoker (PresentsDObjectMgr omgr, LifecycleManager lifemgr,
ReportManager repmgr)
{
super("presents.Invoker", omgr, repmgr);
_omgr = omgr;
shutmgr.registerShutdowner(this);
lifemgr.addComponent(this);
}
@Override // from Invoker
@Override // from Invoker, LifecycleManager.ShutdownComponent
public void shutdown ()
{
// this will do a sophisticated shutdown of both ourself and the dobjmgr; note: we