Commit Graph

5118 Commits

Author SHA1 Message Date
Par Winzell ae5cda0ebf This has been misnamed for quite a while and nobody ever noticed... which presumably means this is a rather unimportant fix.
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@5176 542714f4-19e9-0310-aa3c-eee0fc999fb1
2008-06-10 15:46:49 +00:00
Charlie Groves 335fcc6da1 Export guice since subprojects are going to need it
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@5175 542714f4-19e9-0310-aa3c-eee0fc999fb1
2008-06-09 18:03:21 +00:00
Mike Thomas 57ff422162 Tell eclipse about guicey jars.
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@5174 542714f4-19e9-0310-aa3c-eee0fc999fb1
2008-06-09 17:33:36 +00:00
Michael Bayne 61fda944f8 Scratch that, do things more sneakily to avoid this circular dependence which
seems to cause some freakoutery.


git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@5173 542714f4-19e9-0310-aa3c-eee0fc999fb1
2008-06-09 00:57:29 +00:00
Michael Bayne 2ca70b3510 Use the RootDObjectManager interface instead of the concrete class as
PresentsDObjectMgr references InvocationManager.


git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@5172 542714f4-19e9-0310-aa3c-eee0fc999fb1
2008-06-09 00:54:20 +00:00
Michael Bayne c2d5b28b39 Make the PeerManager and CrowdPeerManager abstract to ensure that a failure to
bind something to PeerManager.class will result in initialization failure.

A system that uses the peer services needs to extend PeerManager or
CrowdPeerManager with a concrete PeerManager and then
bind(PeerManager.class).to(SomePeerManager.class) to properly satisfy the
dependency.


git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@5171 542714f4-19e9-0310-aa3c-eee0fc999fb1
2008-06-08 20:55:33 +00:00
Michael Bayne 0128f6525a Modify PresentsClient and ClientResolver creation so that we can inject
dependencies into both. Moved the legacy statics into CrowdServer so that at
least Presents can be pure (we should probably eventually move them into
BangServer and PiracyServer and fix everything else). Added some useful manager
references to PlaceManager delegate (_omgr, _invmgr) that handle the majority
of their service needs.


git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@5170 542714f4-19e9-0310-aa3c-eee0fc999fb1
2008-06-08 20:23:49 +00:00
Michael Bayne eeb2584c0d Let's just institutionalize the use of a separate thread for authentication
because we want to follow that pattern in all of our games.


git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@5169 542714f4-19e9-0310-aa3c-eee0fc999fb1
2008-06-08 17:39:17 +00:00
Michael Bayne bf77cb1520 Moved location services implementation into LocationManager so that
LocationProvider can be an interface like its brothers and sisters.

Modified the place registry to create PlaceManager instances using the injector
so that we can inject dependencies into managers. Also modified the custom
classloader functionality so that it can/will circumvent this process
entirely. It's not possible to inject using a custom classloader and one
certainly would not want to do so.

Unfortunately this means we can't inject some basic managers into PlaceManager
because it needs to work for games loaded into a sandboxed classloader, but the
big win is that in everything other than GameManager and PlaceManager, we can
inject to our heart's content.


git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@5168 542714f4-19e9-0310-aa3c-eee0fc999fb1
2008-06-08 17:18:26 +00:00
Michael Bayne cfc240fa9c Wait scratch that. I'm apparently feeling schizophrenic.
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@5167 542714f4-19e9-0310-aa3c-eee0fc999fb1
2008-06-08 15:21:08 +00:00
Michael Bayne f8029e2fff Actually it is handy to have the node record.
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@5166 542714f4-19e9-0310-aa3c-eee0fc999fb1
2008-06-08 15:20:26 +00:00
Michael Bayne 4eb86aec71 Supply our default authenticator by making the binding optional rather than by
binding the default in PresentsServer.


git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@5165 542714f4-19e9-0310-aa3c-eee0fc999fb1
2008-06-08 14:34:16 +00:00
Michael Bayne a8e5c3e324 Don't need the record in createPeerNode().
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@5164 542714f4-19e9-0310-aa3c-eee0fc999fb1
2008-06-08 14:08:58 +00:00
Michael Bayne a7c7d853fe Handle the BodyService with a BodyManager instead of a concrete BodyProvider.
More dependency injection (or removal in the case of SpeakUtil).


git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@5163 542714f4-19e9-0310-aa3c-eee0fc999fb1
2008-06-08 13:06:03 +00:00
Michael Bayne 8c37ca7bfa Three things:
- Inject the auth Invoker.
- Inject the Authenticator and formalize the chaining authenticator pattern.
- Simplify PeerNode creation and make the PeerAuthenticator a chainer.


git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@5162 542714f4-19e9-0310-aa3c-eee0fc999fb1
2008-06-08 13:04:27 +00:00
Michael Bayne da11bd0ea0 Regenerated services.
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@5161 542714f4-19e9-0310-aa3c-eee0fc999fb1
2008-06-08 12:58:27 +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
Michael Bayne a531fd2196 Inject the ChatProvider as well.
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@5159 542714f4-19e9-0310-aa3c-eee0fc999fb1
2008-06-08 10:10:41 +00:00
Michael Bayne 3404d14e7b Have the PlaceRegistry handle shutting down all places when the server shuts
down. Inject same.


git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@5158 542714f4-19e9-0310-aa3c-eee0fc999fb1
2008-06-08 10:07:41 +00:00
Michael Bayne 3e73a1666e Have the RebootManager do its shutdown via the ShutdownManager. Nix the
PresentsServer legacy shutdown stuff. We'll wire that up in the legacy servers
themselves.


git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@5157 542714f4-19e9-0310-aa3c-eee0fc999fb1
2008-06-07 19:21:33 +00:00
Michael Bayne a6842ae5e1 Properly mark some singletons as such.
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@5156 542714f4-19e9-0310-aa3c-eee0fc999fb1
2008-06-07 19:14:10 +00:00
Michael Bayne fce06c52c5 Actually instead of doing the necessary jiggery pokery to make PresentsServer
subclasses provide PresentsServer "services" we'll just have no PresentsServer
services. All services will be provided by components and the server will
disappear in a puff of inversion of control.


git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@5155 542714f4-19e9-0310-aa3c-eee0fc999fb1
2008-06-07 18:57:04 +00:00
Michael Bayne c568204bbb 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
2008-06-07 18:39:19 +00:00
Michael Bayne 3aefc93838 Holy fruity beverage Batman! I'm taking the plunge and switching to Guice for
dependency resolution and management. Things are currently in a state of
transition, but the important patterns have been established and I'll aim to
sweep through all of Narya, Nenya and Vilya in the near future and do
everything properly.

Going through the other million-odd lines of code we have scattered across our
various projects that use these libraries is not something I plan to do, so
we'll be maintaining backward compatibility with the old static member method,
though I hope to strive toward eradication of that usage entirely in MSOY while
we still have a fighting chance.

Given that some of our projects will continue to use the static member method
in perpetuity, I'm not going to @Deprecate those fields because that would fill
their logs with so much spam that they'd have to turn off deprecation warnings
which would make life worse for them. So instead we'll settle for the big scary
comment warning people away from the old bits.


git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@5153 542714f4-19e9-0310-aa3c-eee0fc999fb1
2008-06-07 17:44:48 +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 63d228ee4c Removed overzealous inclusion of http library for narya
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@5151 542714f4-19e9-0310-aa3c-eee0fc999fb1
2008-06-05 00:07:21 +00:00
Jamie Doornbos d2b8eaeb6b Removed temporary lib/abc files from narya and replace dependencies with maven ones
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@5150 542714f4-19e9-0310-aa3c-eee0fc999fb1
2008-06-04 23:59:37 +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
Tom Conkling 6c34b9e3ed ArrayUtil.create()
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@5148 542714f4-19e9-0310-aa3c-eee0fc999fb1
2008-05-30 18:22:24 +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 02b2c67991 Name the connection manager thread.
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@5146 542714f4-19e9-0310-aa3c-eee0fc999fb1
2008-05-30 12:20:58 +00:00
Michael Bayne 8426349a19 Ze lines must be wrapped lines at 100 columns or zere vill be punishment.
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@5145 542714f4-19e9-0310-aa3c-eee0fc999fb1
2008-05-30 09:34:38 +00:00
Jamie Doornbos 73b52b1e5f Reordered files for narya asc build to fixed static init crash. Also moved the Environment.as out of the auto-generated files since it had to be manually reinserted each time
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@5144 542714f4-19e9-0310-aa3c-eee0fc999fb1
2008-05-30 06:27:53 +00:00
Bruno Garcia 783ceaf951 Added optional maxLength param to validateAndEncode.
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@5143 542714f4-19e9-0310-aa3c-eee0fc999fb1
2008-05-30 02:05:04 +00:00
Jamie Doornbos 7ac8aa5583 More jiggering pokering workarounds for crapness of asc (files built with AscLibTask cannot be used to execute a VM, only to build a VM)... confusing, I know... ask Zell
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@5142 542714f4-19e9-0310-aa3c-eee0fc999fb1
2008-05-30 01:10:29 +00:00
Michael Bayne 64f418fca9 Looks like Dave already fixed Yohoho, so we're in the clear.
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@5141 542714f4-19e9-0310-aa3c-eee0fc999fb1
2008-05-28 22:27:25 +00:00
Michael Bayne 8e7e9b1278 Work with both for now until I migrate Yohoho.
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@5140 542714f4-19e9-0310-aa3c-eee0fc999fb1
2008-05-28 22:22:58 +00:00
Michael Bayne c915f24010 Switched to the new logging API.
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@5139 542714f4-19e9-0310-aa3c-eee0fc999fb1
2008-05-28 22:21:04 +00:00
Mike Thomas 83693608d8 Disarm the stack overflow boobytrap.
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@5138 542714f4-19e9-0310-aa3c-eee0fc999fb1
2008-05-28 02:15:36 +00:00
Ray Greenwell 22e7ba9a1a Added a note as to why this isn't called ResultAdapter.
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@5137 542714f4-19e9-0310-aa3c-eee0fc999fb1
2008-05-28 01:48:42 +00:00
Jamie Doornbos c8763c245a Added serverClass field to bureau agent objects. Also renamed redundant "agentCode" to just "code"
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@5136 542714f4-19e9-0310-aa3c-eee0fc999fb1
2008-05-27 22:33:15 +00:00
Jamie Doornbos 257c942745 Updates narya bureau test to use AscLibTask and AscTask
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@5135 542714f4-19e9-0310-aa3c-eee0fc999fb1
2008-05-27 22:27:31 +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
Ray Greenwell 821760366f On the mac, using "open" to run a swf has the disadvantage of obliterating the
current directory. The current directory is set to /.
So we can't read parameters.xml out of the current directory and we can't pass
the current directory in, because if we could do that we wouldn't need parameters.xml!
GAH! So read parameters.xml from the same directory as the SWF, because
that's the only thing we can reliably know about.


git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@5133 542714f4-19e9-0310-aa3c-eee0fc999fb1
2008-05-25 03:16:56 +00:00
Dave Hoover 9abef6df53 Lots of times we don't care WHY someone lacks access, just that they do; so
add convenience wrappers giving us a boolean back instead of forcing us to see
if checkAccess(blah) == null.


git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@5132 542714f4-19e9-0310-aa3c-eee0fc999fb1
2008-05-23 23:26:12 +00:00
Jamie Doornbos 529ee6eabb Added langBoolean for upcoming whirled compilation
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@5131 542714f4-19e9-0310-aa3c-eee0fc999fb1
2008-05-23 22:42:46 +00:00
Jamie Doornbos 2c01b45edf New copy of thane actionscript library
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@5130 542714f4-19e9-0310-aa3c-eee0fc999fb1
2008-05-23 22:42:08 +00:00
Andrzej Kapolka ac3640dc9d Standalone clients don't have communicators.
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@5129 542714f4-19e9-0310-aa3c-eee0fc999fb1
2008-05-23 21:00:08 +00:00
Jamie Doornbos a741f00f0b Temporarily deploy thane and builtin abc files as part of narya-abc
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@5128 542714f4-19e9-0310-aa3c-eee0fc999fb1
2008-05-23 07:07:11 +00:00
Jamie Doornbos 732b726063 Yikes, that was unexpected. the flex task prefers absolute paths. Thanks Bamboo!
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@5127 542714f4-19e9-0310-aa3c-eee0fc999fb1
2008-05-23 06:40:14 +00:00