001 package com.croftsoft.apps.client; 002 003 import com.croftsoft.core.lang.NullArgumentException; 004 005 /********************************************************************* 006 * Enumerated type message. 007 * 008 * Use to pass messages between the model, view, and controller. 009 * 010 * @version 011 * $Id: ClientMessage.java,v 1.2 2006/11/14 03:04:08 croft Exp $ 012 * @since 013 * 2006-10-30 014 * @author 015 * <a href="https://www.croftsoft.com/">David Wallace Croft</a> 016 *********************************************************************/ 017 018 public final class ClientMessage 019 ////////////////////////////////////////////////////////////////////// 020 ////////////////////////////////////////////////////////////////////// 021 { 022 023 public enum Type 024 { 025 SEND_TEXT_REQUEST, 026 SPEECH_EVENT, 027 TEXT_EVENT 028 } 029 030 // 031 032 private final Type type; 033 034 private final Object content; 035 036 ////////////////////////////////////////////////////////////////////// 037 ////////////////////////////////////////////////////////////////////// 038 039 public ClientMessage ( 040 final Type type, 041 final Object content ) 042 ////////////////////////////////////////////////////////////////////// 043 { 044 NullArgumentException.check ( this.type = type ); 045 046 this.content = content; 047 } 048 049 public ClientMessage ( final Type type ) 050 ////////////////////////////////////////////////////////////////////// 051 { 052 this ( type, null ); 053 } 054 055 ////////////////////////////////////////////////////////////////////// 056 ////////////////////////////////////////////////////////////////////// 057 058 public Type getType ( ) { return type; } 059 060 public Object getContent ( ) { return content; } 061 062 ////////////////////////////////////////////////////////////////////// 063 ////////////////////////////////////////////////////////////////////// 064 }