Merge the ServerInvoker stuff into PresentsInvoker because the PresentsInvoker

is only ever used by the PresentsServer. Also determined that we need to
explicitly let Guice know that CrowdServer provides the PresentsServer
"interface" and so on down the line.

I also think that each concrete class needs to be marked as @Singleton though I
need to confirm that. Based on how annotations work, that's how it would be
easiest to implement, so we'll assume they're not doing extra work on the
backend to make our life easier.


git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@5154 542714f4-19e9-0310-aa3c-eee0fc999fb1
This commit is contained in:
Michael Bayne
2008-06-07 18:39:19 +00:00
parent 3aefc93838
commit c568204bbb
5 changed files with 45 additions and 36 deletions
@@ -121,6 +121,12 @@ public class PresentsInvoker extends Invoker
}
}
@Override // from Invoker
protected void didShutdown ()
{
_server.invokerDidShutdown();
}
/**
* This gets posted back and forth between the invoker and DObjectMgr until both of their
* queues are empty and they can both be safely shutdown.
@@ -223,6 +229,9 @@ public class PresentsInvoker extends Invoker
/** The distributed object manager with which we interoperate. */
protected PresentsDObjectMgr _omgr;
/** The server we're working for. */
@Inject protected PresentsServer _server;
/** The largest queue size since our last report. */
protected long _maxQueueSize;