Commit Graph

37 Commits

Author SHA1 Message Date
Jamie Doornbos 055ae0cc98 Allow bureau clients to report fatal errors if something goes wrong, like oh I don't know... maybe a disconnection perhaps
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@5489 542714f4-19e9-0310-aa3c-eee0fc999fb1
2008-11-01 00:31:53 +00:00
Michael Bayne 6c4f37d49f Drive by de-whitespace-excessificiation.
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@5469 542714f4-19e9-0310-aa3c-eee0fc999fb1
2008-10-26 21:08:21 +00:00
Jamie Doornbos af72be4496 Bureau log redirector (from msoy)
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@5409 542714f4-19e9-0310-aa3c-eee0fc999fb1
2008-10-01 22:57:13 +00:00
Jamie Doornbos f4111247d7 Make the bureau registry's client factory optional, must now be explicitly invoked using a new method
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@5406 542714f4-19e9-0310-aa3c-eee0fc999fb1
2008-09-30 23:21:04 +00:00
Michael Bayne 2bffe8569b Deverbosified logging.
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@5403 542714f4-19e9-0310-aa3c-eee0fc999fb1
2008-09-30 21:30:48 +00:00
Dave Hoover 657aafaedb And of course, if I were thinking this morning, I would've rerun the organize imports
thing before committing instead of just going "oh yeah, I've been having this stuff
sitting around uncommitted for a while waiting on it to be blessed" and missing
out on things that'd changed in the meantime.


git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@5400 542714f4-19e9-0310-aa3c-eee0fc999fb1
2008-09-26 17:35:29 +00:00
Dave Hoover 8856120403 Import cleanups
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@5399 542714f4-19e9-0310-aa3c-eee0fc999fb1
2008-09-26 17:29:59 +00:00
Dave Hoover 7ee6ace683 Javadoc warnings cleanups.
Note: this involves generated code from a samskivert patch I only just sent to mdb,
but he's in a meeting, so that won't show up for a little.


git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@5369 542714f4-19e9-0310-aa3c-eee0fc999fb1
2008-09-12 17:59:26 +00:00
Jamie Doornbos 97e91dbb84 Restored the old setCommandGenerator function for the test client, it was accidentally blown away when timeouts got added
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@5269 542714f4-19e9-0310-aa3c-eee0fc999fb1
2008-07-28 17:28:44 +00:00
Dave Hoover 8a8b615f9d Clean up some warnings I'm getting in super-pedantic mode.
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@5268 542714f4-19e9-0310-aa3c-eee0fc999fb1
2008-07-28 17:23:07 +00:00
Jamie Doornbos 4fab6bb71a Reset a bureau if its launcher does not connect back in a timely fashion
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@5266 542714f4-19e9-0310-aa3c-eee0fc999fb1
2008-07-25 22:58:03 +00:00
Jamie Doornbos 4a5f474183 Tidied up registry log message, line lengths and use of static final int instead of an enum
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@5265 542714f4-19e9-0310-aa3c-eee0fc999fb1
2008-07-25 22:15:56 +00:00
Jamie Doornbos 551326910c Bureau registry doesn't need to listen for client object death now that it listens for the end of a session. This was causing a warning in the log when the bureau was not found on the second call to clientDestroyed
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@5262 542714f4-19e9-0310-aa3c-eee0fc999fb1
2008-07-24 21:01:00 +00:00
Jamie Doornbos 2b3b5411cc Removed deprecated way of initializing the bureau registry client factory
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@5260 542714f4-19e9-0310-aa3c-eee0fc999fb1
2008-07-24 04:55:10 +00:00
Michael Bayne d01715a369 More style fixes.
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@5242 542714f4-19e9-0310-aa3c-eee0fc999fb1
2008-07-19 09:50:20 +00:00
Dave Hoover 6b1d65553f And finally, narya gets the imports/overrides/regen love.
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@5241 542714f4-19e9-0310-aa3c-eee0fc999fb1
2008-07-18 23:20:17 +00:00
Michael Bayne e41dda3018 Style fixes and import pruning. Beware, CheckStyle is (finally) coming to town.
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@5240 542714f4-19e9-0310-aa3c-eee0fc999fb1
2008-07-18 18:32:59 +00:00
Jamie Doornbos 805372caf3 Support bureau death
* New static method to extract a bureau id from a username
* Inject the client manager in the registry and tack all bureau sessions
* Listen for sessions ending and call the clientDestroyed method
* Actually clear our the agents and remove the bureau from the map when the client is destroyed (this will trigger a new launch for the next agent request in that bureau)
* Deprecate addClientFactory
* Added lookup function to retrieve a bureau session by bureau id so that client code will be able to kill specific bureau sessions

git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@5238 542714f4-19e9-0310-aa3c-eee0fc999fb1
2008-07-18 00:06:06 +00:00
Jamie Doornbos 8f9c7e7117 BureauClientFactory class to make client resolution more intuitive, plus a registry method to install the factory
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@5221 542714f4-19e9-0310-aa3c-eee0fc999fb1
2008-07-03 20:31:37 +00:00
Jamie Doornbos 8ce8e69b59 Changed BureauRegistry to use Launcher and updated bureau tests
* Moved the thane-specific TestClientMain out into src/thane and renamed 
  BureauTestClient
* Removed server name and port from the registry init and from the Launcher/
  CommandGenerator parameters. These can be inserted by the caller
* Converted all the asc junk to compc/mxmlc the same as msoy does it
* Moved the test client main function into src/as land
* Added extdeps.suffix alternative approach since tests/build.xml does not
  get launched from nifty ooo-libs container
* Fixed bureau test targets
* Moved avmthane to overridable property and corrected out of date default
* Converted BureauRegistry code to deal with Launcher objects and added shim
  to preserve use of CommandGenerator
* Fixed narya build to remove thane-config.xml after building aslib


git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@5218 542714f4-19e9-0310-aa3c-eee0fc999fb1
2008-07-02 23:44:11 +00:00
Michael Bayne 07b6aa9446 Inject the bureau registry.
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@5210 542714f4-19e9-0310-aa3c-eee0fc999fb1
2008-06-29 13:09:03 +00:00
Jamie Doornbos 52637e3fff Introduce proper bureau authenticator class
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@5192 542714f4-19e9-0310-aa3c-eee0fc999fb1
2008-06-23 20:09:30 +00:00
Jamie Doornbos 9e06f34557 Implemented bureau login tokens
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@5191 542714f4-19e9-0310-aa3c-eee0fc999fb1
2008-06-23 18:46:13 +00:00
Michael Bayne eee2c74943 More singleton marking.
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@5160 542714f4-19e9-0310-aa3c-eee0fc999fb1
2008-06-08 10:29:18 +00:00
Jamie Doornbos 443ad8e139 Keep track of the client object id in the agent object (this will allow WhirledGameManager.validateUser to check out a dispatch from a bureau client)
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@5152 542714f4-19e9-0310-aa3c-eee0fc999fb1
2008-06-05 00:16:46 +00:00
Jamie Doornbos 69451c5682 Implemented bureau authentication
* Token member for bureaus
* Exception type for failed authentication
* Authenticate function
* Bureau id to credentials
* Fixed bad constructor and toString


git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@5149 542714f4-19e9-0310-aa3c-eee0fc999fb1
2008-06-02 04:38:01 +00:00
Jamie Doornbos 214d464c7f Fixed the token and added a TODO since ProcessBuilder on unix cannot handle empty strings
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@5147 542714f4-19e9-0310-aa3c-eee0fc999fb1
2008-05-30 18:06:07 +00:00
Michael Bayne 919112cf88 Switch to new samskivert logging API.
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@5134 542714f4-19e9-0310-aa3c-eee0fc999fb1
2008-05-27 19:25:38 +00:00
Jamie Doornbos 2a49924f91 Bureaucracy: consistently log info message for all agent and bureau entry points
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@5082 542714f4-19e9-0310-aa3c-eee0fc999fb1
2008-05-12 23:23:31 +00:00
Jamie Doornbos 7bbd9baf28 Fixed bug where bureau registry would not destroy pending agents, exposed by curretnly broken thane client
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@5075 542714f4-19e9-0310-aa3c-eee0fc999fb1
2008-05-10 00:58:00 +00:00
Jamie Doornbos 3d65f679e8 Fixed I/O in BureauRegistry and removed synchronization
* Keep an Invoker member
* Added internal Launcher class to run ProcessBuilder.start on the invoker 
  thread because it is blocking
* Removed synchronized from methods, all ooo-servers are single threaded, 
  hurray!


git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@5033 542714f4-19e9-0310-aa3c-eee0fc999fb1
2008-04-30 18:27:45 +00:00
Jamie Doornbos e74035a05c Bureaucracy smoke test and resulting bug fixes
* Added RegistryTester smoke test which randomly creates and destroys agents 
  in batches
* Fixed bug where correct agent id was never making it to client
* Implemented Bureau.toString (+refactored summarize method)
* Fixed nasty bug due to my assumption that SafeSubscriber =~ Subscriber, they 
  are in fact completely different


git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@5032 542714f4-19e9-0310-aa3c-eee0fc999fb1
2008-04-30 17:55:40 +00:00
Jamie Doornbos 490b5b9764 Bureaucracy: Fixed my TODO about using google's Maps and Sets utils
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@5031 542714f4-19e9-0310-aa3c-eee0fc999fb1
2008-04-29 19:02:13 +00:00
Jamie Doornbos f41233c5ac Bureaucracy review updates and hello world test
* Fleshed out client-side Agent class, made abstract
* Delegate the creation of the bureau director to subclasses of BureauClient
* Moved BureauDirector's BureauReceiver and Subscriber implementations to 
  anonymous classes that delegate to protected methods.
* Use SafeSubscriber
* Added new service method for notiyfing the server when the creation of an
  agent fails so that the registry is not perpetually waiting
* Made BureauCredentials more conformant
* Made BureauRegistry respond properly to client logging off
* Got rid of superfluous uses of safeToString
* Changed Launcher to CommandGenerator and now use ProcessBuilder and 
  copyMergedOutput
* Changed bureau process parameters to server name and port instead of URL


git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@5030 542714f4-19e9-0310-aa3c-eee0fc999fb1
2008-04-29 18:34:51 +00:00
Jamie Doornbos 74dac11f97 Bureaucracy
* Fixed signature of Receiver methods
* Implemented create/destroy mechanism and bootstrap request in BureauDirector
* Added BureauContext class to expose bureau information on top of usual 
  presents stuff
* Added BureauContext implementation in BureauClient
* Added code to kick off the director when the client logs on
* Added credentials for a bureau logon, which is just a token passed to 
  command line launcher
* Added concept of bureau types to distinguish between executable and command 
  line arguments; includes interface BureauRegistry.Launcher
* Implemented backend for the registry


git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@5027 542714f4-19e9-0310-aa3c-eee0fc999fb1
2008-04-28 18:34:57 +00:00
Jamie Doornbos b10cc3643d Removed @Override on interface methods.
the deployment build must be using stricter options (need to find them so I can replicate these issues locally in the future)

git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@5026 542714f4-19e9-0310-aa3c-eee0fc999fb1
2008-04-25 20:39:51 +00:00
Jamie Doornbos e7374452cd Skeleton for bureau/agent architecture (https://wiki.earth.threerings.net/display/whirled/The+Bureacracy)
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@5025 542714f4-19e9-0310-aa3c-eee0fc999fb1
2008-04-25 20:22:21 +00:00