- Adding support for booting players from a table

- Apparently genservice hasn't been run in a while, so half of vilya just got poked


git-svn-id: svn+ssh://src.earth.threerings.net/vilya/trunk@709 c613c5cb-e716-0410-b11b-feb51c14d237
This commit is contained in:
Bruno Garcia
2008-08-06 00:41:46 +00:00
parent 6c91e7cb96
commit 9a822fe561
47 changed files with 256 additions and 115 deletions
@@ -24,6 +24,7 @@ package com.threerings.whirled.spot.data;
import com.threerings.presents.client.Client;
import com.threerings.presents.client.InvocationService;
import com.threerings.presents.data.InvocationMarshaller;
import com.threerings.presents.net.Transport;
import com.threerings.whirled.client.SceneService;
import com.threerings.whirled.data.SceneMarshaller;
import com.threerings.whirled.spot.client.SpotService;
@@ -23,6 +23,7 @@ package com.threerings.whirled.spot.server;
import com.threerings.presents.client.InvocationService;
import com.threerings.presents.data.ClientObject;
import com.threerings.presents.data.InvocationMarshaller;
import com.threerings.presents.server.InvocationDispatcher;
import com.threerings.presents.server.InvocationException;
import com.threerings.whirled.client.SceneService;
@@ -49,6 +50,7 @@ public class SpotDispatcher extends InvocationDispatcher<SpotMarshaller>
return new SpotMarshaller();
}
@SuppressWarnings("unchecked")
@Override // documentation inherited
public void dispatchRequest (
ClientObject source, int methodId, Object[] args)
@@ -57,25 +59,29 @@ public class SpotDispatcher extends InvocationDispatcher<SpotMarshaller>
switch (methodId) {
case SpotMarshaller.CHANGE_LOCATION:
((SpotProvider)provider).changeLocation(
source, ((Integer)args[0]).intValue(), (Location)args[1], (InvocationService.ConfirmListener)args[2]
source,
((Integer)args[0]).intValue(), (Location)args[1], (InvocationService.ConfirmListener)args[2]
);
return;
case SpotMarshaller.CLUSTER_SPEAK:
((SpotProvider)provider).clusterSpeak(
source, (String)args[0], ((Byte)args[1]).byteValue()
source,
(String)args[0], ((Byte)args[1]).byteValue()
);
return;
case SpotMarshaller.JOIN_CLUSTER:
((SpotProvider)provider).joinCluster(
source, ((Integer)args[0]).intValue(), (InvocationService.ConfirmListener)args[1]
source,
((Integer)args[0]).intValue(), (InvocationService.ConfirmListener)args[1]
);
return;
case SpotMarshaller.TRAVERSE_PORTAL:
((SpotProvider)provider).traversePortal(
source, ((Integer)args[0]).intValue(), ((Integer)args[1]).intValue(), ((Integer)args[2]).intValue(), (SceneService.SceneMoveListener)args[3]
source,
((Integer)args[0]).intValue(), ((Integer)args[1]).intValue(), ((Integer)args[2]).intValue(), (SceneService.SceneMoveListener)args[3]
);
return;
@@ -26,7 +26,6 @@ import com.threerings.presents.data.ClientObject;
import com.threerings.presents.server.InvocationException;
import com.threerings.presents.server.InvocationProvider;
import com.threerings.whirled.client.SceneService;
import com.threerings.whirled.spot.client.SpotService;
import com.threerings.whirled.spot.data.Location;
/**
@@ -37,23 +36,23 @@ public interface SpotProvider extends InvocationProvider
/**
* Handles a {@link SpotService#changeLocation} request.
*/
void changeLocation (ClientObject caller, int arg1, Location arg2, InvocationService.ConfirmListener arg3)
public void changeLocation (ClientObject caller, int arg1, Location arg2, InvocationService.ConfirmListener arg3)
throws InvocationException;
/**
* Handles a {@link SpotService#clusterSpeak} request.
*/
void clusterSpeak (ClientObject caller, String arg1, byte arg2);
public void clusterSpeak (ClientObject caller, String arg1, byte arg2);
/**
* Handles a {@link SpotService#joinCluster} request.
*/
void joinCluster (ClientObject caller, int arg1, InvocationService.ConfirmListener arg2)
public void joinCluster (ClientObject caller, int arg1, InvocationService.ConfirmListener arg2)
throws InvocationException;
/**
* Handles a {@link SpotService#traversePortal} request.
*/
void traversePortal (ClientObject caller, int arg1, int arg2, int arg3, SceneService.SceneMoveListener arg4)
public void traversePortal (ClientObject caller, int arg1, int arg2, int arg3, SceneService.SceneMoveListener arg4)
throws InvocationException;
}