Commit Graph

  • 576dfa2c85 If a move fails and we're currently in a place, just stay where we are rather than trying to go to our previous place. If we're no longer in a place (like we switched servers to get where we're going), then we'll try to go back to our previous place. Michael Bayne 2007-11-15 01:59:22 +00:00
  • 376f5e680a Sorry, Log, no more free ride for you. Putting you at the top level screws up use of another Log class. Ray Greenwell 2007-11-13 09:30:23 +00:00
  • 5ae87258fa If we lose our connection, let anyone who had a pending subscription request outstanding know that their subscription request failed. Michael Bayne 2007-11-13 02:56:35 +00:00
  • 8250d2f1f5 Let's be precise. Michael Bayne 2007-11-12 21:32:19 +00:00
  • f471da8a49 Let our peers send up to 100 messages a second after which point we will politely complain that they're talking a lot but not disconnect them. Michael Bayne 2007-11-12 21:29:57 +00:00
  • ae6e8f1bdb We need to scan up the hierarchy so that if we're overriding a renamed method (e.g toString(StringBuffer)) we use the properly renamed version (e.g. toStringBuffer(StringBuffer)) when generating our ActionScript. Michael Bayne 2007-11-12 19:37:08 +00:00
  • b688776893 Allow createPlace() to be passed a list of delegates to be added to the place manager prior to it being initialized or started up. Michael Bayne 2007-11-10 05:01:02 +00:00
  • abeeef4d10 PlaceManagerDelegate no longer takes its target manager in its constructor but rather is configured with it when added to the manager as a delegate. Michael Bayne 2007-11-10 04:41:01 +00:00
  • baa664bd11 channel is a SocketChannel which is a subclass of SelectableChannel, so this instanceof can't ever be false. (And just above, we've already confirmed that channel != null, so this check wasn't falling back to protecting us from that) Dave Hoover 2007-11-08 18:49:28 +00:00
  • 6e901ec83a Let's call that ninstall since we don't actually compile anything. Michael Bayne 2007-11-07 02:20:54 +00:00
  • 238da969c0 Don't build, just install the already committed build results. Michael Bayne 2007-11-07 02:20:12 +00:00
  • 0d377d8e0b Never mind. Those are committed. And I need to be committed. Michael Bayne 2007-11-07 02:02:29 +00:00
  • 0cd1be4728 Clean our our native libraries when we run clean. Michael Bayne 2007-11-07 01:57:04 +00:00
  • aa10f80b16 Bring on the Googley goodness. There may be build breakage as we find all the projects that use Narya and now need google-collect.jar but it had to be done. Michael Bayne 2007-11-02 23:10:06 +00:00
  • d84b2ac8a0 Report a more useful error if we have a bogus controller. Tidied some other bits up. Michael Bayne 2007-11-02 23:02:36 +00:00
  • 87a1e8968e Target 1.5 when building. Michael Bayne 2007-10-30 06:20:06 +00:00
  • a30dca8581 Oops, warnings, I guess they don't auto-cast function references to booleans without grumbling. Good for them I suppose. Par Winzell 2007-10-28 15:05:27 +00:00
  • b7d2bfb1af Another handy adapter. Par Winzell 2007-10-27 18:54:53 +00:00
  • 6719d18caa Rerun generators. Dave Hoover 2007-10-26 21:06:53 +00:00
  • 0784d40c10 Eclipse metadata Charlie Groves 2007-10-26 18:37:07 +00:00
  • e6af23ad38 Let's report that in a friendlier way. Michael Bayne 2007-10-26 17:41:24 +00:00
  • 480abdee8a For primitive types, the coercive casts never fail. Let's be lenient and let a TypedArray of int work if people fill it with strings like "4" or "9". Ray Greenwell 2007-10-24 21:51:32 +00:00
  • 13fe8fc930 On second thought, reference equality is really the only appropriate thing for DObject. There will never be multiple instances with the same oid that represent "equal" objects and it's possible that in certain (controlled and limited) cirumstances, objects with different object managers might have the same oid even though they are different objects. Michael Bayne 2007-10-20 18:50:27 +00:00
  • 4280391d03 Implemented hashCode() and equals() as it could come in handy if we want to stick objects in a collection. Michael Bayne 2007-10-20 18:48:06 +00:00
  • 4f83cf0119 Added a backwards compatible registerDispatcher() call to repair GG games. Michael Bayne 2007-10-19 23:16:52 +00:00
  • 27b95dd19a Nix another redundant cast. Michael Bayne 2007-10-19 18:28:56 +00:00
  • 66660bc490 Don't need to cast the result of an array clone. Michael Bayne 2007-10-19 18:22:37 +00:00
  • 2f4439c64e Made the map work with null as a key. (Dictionary supports null keys, so we merely call null a 'simple' key.) Ray Greenwell 2007-10-18 23:55:26 +00:00
  • a2af35fcfd Log a warning rather than NPEing. Michael Bayne 2007-10-18 18:49:52 +00:00
  • 8c4776a3f0 Might as well use a different signifier in case people do want to use negative indices. Andrzej Kapolka 2007-10-18 18:01:49 +00:00
  • 924a8a319d That was a fun one to track down. Using an index of -1 for Array.splice inserts the element just before--not after--the last element. Andrzej Kapolka 2007-10-18 01:41:19 +00:00
  • a34e500ea6 Added startTransaction() and commitTransaction() to the InvocationDirector so that EZGame can batch up state change requests which are all invocation service requests. Michael Bayne 2007-10-17 21:33:05 +00:00
  • 6b46554eaf Widening. Michael Bayne 2007-10-17 21:06:17 +00:00
  • 45034b895e Reference the client immediately rather than on the dobjmgr thread so it doesn't get released before we tell the listener it's resolved. Charlie Groves 2007-10-10 02:01:48 +00:00
  • 8cfe92aba6 Nix empty directories. Michael Bayne 2007-10-09 06:04:14 +00:00
  • 466ae35688 Proper Long handling and checking for @ActionScript(omit=true) up the superclass chain. Other such annotation "inheritance" is needed for methods, but that I'll do later. Michael Bayne 2007-10-09 01:52:22 +00:00
  • 8f81893a0c getFailureMessage() should be protected as it's not part of the persisting unit's public API. Michael Bayne 2007-10-08 23:55:51 +00:00
  • d4562ff806 Allow external parties to call applyToDelegates(). Michael Bayne 2007-10-02 23:29:02 +00:00
  • 13c2173829 Don't need two of these fellers. Michael Bayne 2007-10-02 00:09:13 +00:00
  • 4cc4c3c9f1 Use the bare BlockingCommunicator in the PeerNode instead of the ClientCommunicator which does stuff like try to save its preferred connection port using the Java preference system (which is no longer available to server processes due to the removal of their home directories). Michael Bayne 2007-10-01 23:47:02 +00:00
  • ab632ffe83 Refactored communicator so that we can not do some things in the peer client (which runs on the server) that we do in a normal client (which runs on a user's computer). Eventually we'll make a custom Communicator for use on the server that integrates with the ConnectionManager's polled socket I/O which will be easier now that this bit of factoring has been done. Michael Bayne 2007-10-01 23:44:31 +00:00
  • 120d641dea Comment rearranging. Michael Bayne 2007-10-01 21:26:27 +00:00
  • 1ec7f25ea6 Refreshing the peers seems to often take just over 500ms, so increase the time we wait before logging. Mark Johnson 2007-09-28 23:26:42 +00:00
  • b3678b086d The client manager was busy registering client objects on the ConnectionManager thread rather than the dobj thread. Give it a nudge in the right direction. Mike Thomas 2007-09-28 18:35:20 +00:00
  • 873eede988 Log a message when we drop a forced move request due to a pending move. Michael Bayne 2007-09-24 20:47:17 +00:00
  • 6904c467bf Identify ourselves if we turn out to be a long dobj unit. Michael Bayne 2007-09-24 17:23:02 +00:00
  • 400a42930b Return the correct value if we're asked for this node's public hostname or port. Michael Bayne 2007-09-20 01:49:56 +00:00
  • c0ead54dbe Dispatch our client tick on the RunQueue so that it doesn't end up running on a separate thread and racing against other client actions. Also nixed a pointless type check and cast. Michael Bayne 2007-09-19 03:35:17 +00:00
  • 57421c8a58 There are many ways I could rant about this, but I'm going to try to keep it short and informative (and clean ><)... Nathan Curtis 2007-09-18 23:29:49 +00:00
  • 93c89fe0a7 Be sure that we always dispatch subscription responses (success or failure) on the dobjmgr thread to relieve the caller of the burden of knowing what thread they are on. Michael Bayne 2007-09-14 18:17:50 +00:00
  • e4cb816fba This is being called on other-than-the-DObject thread, and we really don't want to be posting messages directly outside that thread. Mike Thomas 2007-09-14 17:58:54 +00:00
  • 59a65e9ef2 We're waiting to hear that our PlaceObject has been destroyed so we can call didShutdown, so we can't stop listening to it until then. Dave Hoover 2007-09-13 21:38:01 +00:00
  • e71fed20c3 Clear out our PlaceManager listenerships when we shutdown to ensure that the manager can be collected even if the object lingers about for a while and because it sets a good example. Michael Bayne 2007-09-11 22:20:28 +00:00
  • bc739b6520 Clear out our speak service once we've unregistered it. Michael Bayne 2007-09-11 19:59:08 +00:00
  • 9f2a90f001 Implement Comparable<Name>. The old compareTo() did funny things if a Name was being compared with a non-Name but I'm almost certain that never happened and was just Ray being kooky. Michael Bayne 2007-09-10 17:34:53 +00:00
  • 30cb0b6122 Use junit4.jar. Michael Bayne 2007-08-28 20:26:04 +00:00
  • 810969f6f9 Pass a message along with a FailureResponse. Michael Bayne 2007-08-22 01:15:39 +00:00
  • 9a150ebcda Some widening. Michael Bayne 2007-08-22 01:12:02 +00:00
  • 52be62ddbf Added a helper method for calling an invocation service method on one or more remote nodes. Michael Bayne 2007-08-17 21:02:44 +00:00
  • d92f81af78 Crowd peer services now forward broadcasts as well as tells. We must get the word to the people, all the people. Michael Bayne 2007-08-16 22:38:40 +00:00
  • 3204cc6266 We're not going to do this INDEX: comment thing. Par Winzell 2007-08-16 21:53:53 +00:00
  • f90a39207f Created a peer-aware DatabaseConfigRegistry that broadcasts changed runtime configuration information to other peers so that they all remain in sync. Michael Bayne 2007-08-16 20:53:17 +00:00
  • b18ebdbc53 Whitespace trimming. Michael Bayne 2007-08-16 18:33:45 +00:00
  • f80495f906 Widening. Michael Bayne 2007-08-16 18:25:46 +00:00
  • 59086147e6 A signed 64-bit integer can be stored as two 32-bit integers in Actionscript, but converting them to a single number becomes inconvenient for values larger than an single int, and tricky when the value is negative (i.e. in two's complement split into two words, with sign bit only in the high int). Robert Zubeck 2007-08-10 20:49:03 +00:00
  • 77ef41cb42 Separated out chat message listener functionality, and subsequent chat message processing. This enables subclasses of ChatDirector to listen for their own types of chat messages, but call the superclass to process them. Robert Zubeck 2007-08-10 20:33:03 +00:00
  • 2ac50f387a Added a StreamableHashSet class. Andrzej Kapolka 2007-08-10 19:44:02 +00:00
  • 1eda45d8c8 Document index use. Par Winzell 2007-08-07 18:11:30 +00:00
  • a6be47fa83 Adjust the shutdown process to ensure that we can get messages generated during the shutdown sequence out to our clients where desired. Michael Bayne 2007-08-06 18:38:27 +00:00
  • 0c5a4f6683 Useful error reporting. Michael Bayne 2007-08-04 02:16:24 +00:00
  • 4260a71946 When we call leavePlace() make sure locationDidChange() is dispatched to listeners letting them know that we're no longer in a location. Michael Bayne 2007-08-03 22:40:00 +00:00
  • 87bad12e19 Widening. Michael Bayne 2007-08-02 21:52:11 +00:00
  • affca34556 Pipe down there little fellas. There seems to be no easy way to not show debug logging on the console so let's not be uninformatively verbose. Michael Bayne 2007-08-02 18:48:45 +00:00
  • 0cb497e6ce This ain't overridin' nothin'. Michael Bayne 2007-08-01 17:45:19 +00:00
  • 5a490043c4 Added support for switching Java fields to a different type in their ActionScript counterparts. Michael Bayne 2007-08-01 17:40:35 +00:00
  • cd599586be Nixed wacky comment. Michael Bayne 2007-08-01 17:24:32 +00:00
  • 010b2fc77a Regenerated from the Java version. Michael Bayne 2007-08-01 17:24:26 +00:00
  • 871cc64819 Do instanceof Streamable sensibly instead of via the cracksmoking way I was doing it. Don't generate ActionScript methods for the instrumented field reader and writer methods. Michael Bayne 2007-08-01 17:23:13 +00:00
  • 7fc92f99b1 Be sure not to leave our lock dangling if the wrapped operation fails with an exception. Michael Bayne 2007-07-31 23:33:13 +00:00
  • 638f8b6246 Break out registering the command handlers to its own function so subclasses can call it/override it. Mike Thomas 2007-07-31 22:44:02 +00:00
  • 3f7705dfc2 Split SpeakProvider into SpeakHandler and SpeakUtil. SpeakProvider is now a proper interface like all the other new invocation service backends. Michael Bayne 2007-07-31 21:05:23 +00:00
  • ea501d7083 Automatically register the peer manager as a shutdowner rather than require that it be shut down manually. Michael Bayne 2007-07-31 20:01:52 +00:00
  • 47bace1003 This is tested. Ray Greenwell 2007-07-31 06:50:19 +00:00
  • 01ed8c5ca5 We're going to have our distclean projects not call clean which will complain that dist/ has been wiped out if you call distclean again. Look for these exciting changes in other rings near you. Jonathan Le Plastrier 2007-07-28 01:37:54 +00:00
  • 3c1c1d1921 We need to restore the remote oid as well before we send the unsubscribe req. Michael Bayne 2007-07-27 21:47:50 +00:00
  • 3327f4b7e8 Since the classname is coming from a properties file - rip off any trailing whitespace. Mike Thomas 2007-07-27 20:57:07 +00:00
  • 3c4c633b60 Created a ResultListenerList that maps the InvocationService.ResultListener interface to a list of listeners. Also made RootDObjectManager a RunQueue so that we can pass around references to the interface rather than requiring a PresentsDObjectMgr. Michael Bayne 2007-07-27 20:48:18 +00:00
  • 73b7e56563 Fixing a typo that prevented the creation of lock release handlers. Robert Zubeck 2007-07-27 17:46:10 +00:00
  • c2b44deb2d Once we've unproxied an object, we need to remap it into our Client's distributed object space so that the unsubscribe from the remote server is properly handled. Michael Bayne 2007-07-27 02:38:14 +00:00
  • 7a8bb7389a Screw backwards compatibility. We're all about the future. Michael Bayne 2007-07-26 20:49:13 +00:00
  • 81044c6512 Provide a PersistenceContext accepting constructor. Michael Bayne 2007-07-26 20:41:09 +00:00
  • 839aaf05dd Nix whole depends business. We can reinstate it if we ever again need it. Michael Bayne 2007-07-26 20:17:31 +00:00
  • 29bfb576d3 Depot implementation of the Config persistence - hopefully schema compatible with the old version. Par Winzell 2007-07-26 20:04:27 +00:00
  • 363cf719ec Depot implementation of the Peer Node persistence - hopefully schema compatible with the old version. Par Winzell 2007-07-26 20:01:44 +00:00
  • 9aaf4de2b5 Depot is always built, now. Par Winzell 2007-07-26 20:00:48 +00:00
  • 8275f739c0 Wrapper for peer network operations that need to acquire and release resource locks. Robert Zubeck 2007-07-23 17:09:08 +00:00
  • 962326fcaf Revamped the way BodyObject.location is tracked. Now we use an object which can be extended to contain the sceneId by Whirled (Vilya's Whirled, though also Whirled Whirled by extension) so that we don't end up with problems where BodyObject.location changes but BodyObject.sceneId remains stale. This won't impact Yohoho because the Yohoho client is always in a scene, it uses a separate mechanism to track games, whereas Whirled's natural usage is to move between scenes and non-scenes. Michael Bayne 2007-07-21 00:46:25 +00:00
  • 9ef330b291 Added applyToNodes(). Michael Bayne 2007-07-18 22:46:49 +00:00
  • 91ffdd810b Name our invokers. Michael Bayne 2007-07-18 22:03:17 +00:00
  • b0ec20eff9 Widening. Michael Bayne 2007-07-18 21:58:16 +00:00