Revamped PlaceConfig to instantiate the PlaceController directly instead of

looking it up by name which creates PITA when we want to obfuscate and strip
out unused code.


git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@4026 542714f4-19e9-0310-aa3c-eee0fc999fb1
This commit is contained in:
Michael Bayne
2006-04-18 01:32:41 +00:00
parent 137cdfa8dd
commit fdf0fa27d3
6 changed files with 75 additions and 78 deletions
@@ -32,20 +32,19 @@ import com.threerings.parlor.game.client.GameConfigurator;
/**
* The game config class encapsulates the configuration information for a
* particular type of game. The hierarchy of game config objects mimics
* the hierarchy of game managers and controllers. Both the game manager
* and game controller are provided with the game config object when the
* game is created.
* particular type of game. The hierarchy of game config objects mimics the
* hierarchy of game managers and controllers. Both the game manager and game
* controller are provided with the game config object when the game is
* created.
*
* <p> The game config object is also the mechanism used to instantiate
* the appropriate game manager and controller. Every game must have an
* associated game config derived class that overrides {@link
* #getControllerClass} and {@link #getManagerClassName}, returning the
* appropriate game controller and manager class for that game. Thus the
* entire chain of events that causes a particular game to be created is
* the construction of the appropriate game config instance which is
* provided to the server as part of an invitation or via some other
* matchmaking mechanism.
* <p> The game config object is also the mechanism used to instantiate the
* appropriate game manager and controller. Every game must have an associated
* game config derived class that overrides {@link #createController} and
* {@link #getManagerClassName}, returning the appropriate game controller and
* manager class for that game. Thus the entire chain of events that causes a
* particular game to be created is the construction of the appropriate game
* config instance which is provided to the server as part of an invitation or
* via some other matchmaking mechanism.
*/
public abstract class GameConfig extends PlaceConfig implements Cloneable
{