The MUD Server
Example 21-5
shows the MudServer
class. This
class is a standalone program that starts a MUD running; it also
provides the implementation of the RemoteMudServer
interface. As noted before,
a MudServer
object merely serves as
the entrance to a MUD: it is not the MUD itself. Therefore, this is a
fairly simple class. One of its most interesting features is the use
of the serialization classes of java.io
and the compression classes of
java.util.zip
to save the state the
MUD, so that it can be restored later.
Example 21-5. MudServer.java
package je3.rmi; import java.rmi.*; import java.rmi.server.*; import java.rmi.registry.*; import java.io.*; import java.util.Hashtable; import java.util.zip.*; import je3.rmi.Mud.*; /** * This class implements the RemoteMudServer interface. It also defines a * main( ) method so you can run it as a standalone program that will * set up and initialize a MUD server. Note that a MudServer maintains an * entrance point to a MUD, but it is not the MUD itself. Most of the * interesting MUD functionality is defined by the RemoteMudPlace interface * and implemented by the RemotePlace class. In addition to being a remote * object, this class is also Serializable, so that the state of the MUD * can be saved to a file and later restored. Note that the main( ) method * defines two ways of starting a MUD: one is to start it from scratch with * a single initial place, and another is to restore an existing MUD from a * file. **/ public class MudServer ...
Get Java Examples in a Nutshell, 3rd Edition now with the O’Reilly learning platform.
O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.