/**
  * Tell the program manager to create the program with uri specified by the message.
  *
  * @param message The sent message
  * @return The program manager's response, containing socket information
  */
 protected ResponseMessage handleCreateProgram(CreateProgramMessage message) {
   return programManager.createProgram(
       message.getMessageID(),
       message.getCellID(),
       message.getProgramURI(),
       message.getInitialPlaybackSpeed());
 }
 protected void handleEventListUpdate(EventListUpdateMessage message) {
   programManager.eventListUpdate(message.getCellID(), message.getEventList());
 }
 protected void handleWonderlandEvent(CMUEventResponseMessage message) {
   programManager.eventResponse(message.getCellID(), message.getResponse());
 }
 /**
  * Tell the program manager to forward a mouse click to a particular program.
  *
  * @param message Message containing click information
  */
 protected void handleMouseClick(MouseClickMessage message) {
   programManager.click(message.getCellID(), message.getNodeID());
 }
 /**
  * Tell the program manager to dispose of a particular program.
  *
  * @param message The message pointing to the program to delete
  */
 protected void handleDeleteProgram(DeleteProgramMessage message) {
   programManager.deleteProgram(message.getCellID(), message.getReason());
 }
 /**
  * Tell the program manager to change the playback speed of a particular program.
  *
  * @param message The message containing speed change information and identification
  */
 protected void handlePlaybackSpeedChange(ProgramPlaybackSpeedChangeMessage message) {
   programManager.setPlaybackSpeed(message.getCellID(), message.getPlaybackSpeed());
 }