UMBC  |  CSEE  |  Tarr  |  CS491D

CMSC691D Design Patterns In Java

Fall 1999

Project 2

RMI Chat Server

Additional Requirements For CMSC691D Students

Due Date: December 8, 1999


Additional Project Requirements

Your project must allow the chat server to support multiple chat sessions, each associated with a different topic. The topic is identified by a simple String.

To allow clients to register for specific chat topics, the ChatServer interface is modified as follows:

      public interface ChatServer extends Remote {
         public void registerClient(ChatClient client, String topic) 
            throws RemoteException;
         public void unregisterClient(ChatClient client, String topic) 
            throws RemoteException;
         public void broadcast(String msg, String topic) 
            throws RemoteException;
         public String[] getHistory(int n, String topic) 
            throws RemoteException;
      }

These methods do the following:

Test your application with at least three clients, a server and two different topics as chat sessions. Have a least one client register for both topics.


Bob Tarr
University of Maryland, Baltimore County
tarr@umbc.edu
UMBC  |  CSEE  |  Tarr  |  CS491D