Communications.html
Warning: This file has been marked up for HTML
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Frameset//EN""http://www.w3.org/TR/REC-html40/frameset.dtd">
<!--NewPage-->
<HTML>
<HEAD>
<!-- Generated by javadoc on Tue Feb 08 14:56:13 MST 2000 -->
<TITLE>
Chat Snapin Documentation: Class Communications
</TITLE>
<LINK REL ="stylesheet" TYPE="text/css" HREF="../../../stylesheet.css" TITLE="Style">
</HEAD>
<BODY BGCOLOR="white">
<!-- ========== START OF NAVBAR ========== -->
<A NAME="navbar_top"><!-- --></A>
<TABLE BORDER="0" WIDTH="100%" CELLPADDING="1" CELLSPACING="0">
<TR>
<TD COLSPAN=2 BGCOLOR="#EEEEFF" CLASS="NavBarCell1">
<A NAME="navbar_top_firstrow"><!-- --></A>
<TABLE BORDER="0" CELLPADDING="0" CELLSPACING="3">
<TR ALIGN="center" VALIGN="top">
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../overview-summary.html"><FONT ID="NavBarFont1"><B>Overview</B></FONT></A> </TD>
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="package-summary.html"><FONT ID="NavBarFont1"><B>Package</B></FONT></A> </TD>
<TD BGCOLOR="#FFFFFF" CLASS="NavBarCell1Rev"> <FONT CLASS="NavBarFont1Rev"><B>Class</B></FONT> </TD>
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="package-tree.html"><FONT ID="NavBarFont1"><B>Tree</B></FONT></A> </TD>
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../deprecated-list.html"><FONT ID="NavBarFont1"><B>Deprecated</B></FONT></A> </TD>
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../index-all.html"><FONT ID="NavBarFont1"><B>Index</B></FONT></A> </TD>
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../help-doc.html"><FONT ID="NavBarFont1"><B>Help</B></FONT></A> </TD>
</TR>
</TABLE>
</TD>
<TD ALIGN="right" VALIGN="top" ROWSPAN=3><EM>
</EM>
</TD>
</TR>
<TR>
<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
<A HREF="../../../com/novell/Chat/ChooseUserDlg.html"><B>PREV CLASS</B></A>
<A HREF="../../../com/novell/Chat/CreateChatRoomDialog.html"><B>NEXT CLASS</B></A></FONT></TD>
<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
<A HREF="../../../index.html" TARGET="_top"><B>FRAMES</B></A>
<A HREF="Communications.html" TARGET="_top"><B>NO FRAMES</B></A></FONT></TD>
</TR>
<TR>
<TD VALIGN="top" CLASS="NavBarCell3"><FONT SIZE="-2">
SUMMARY: INNER | <A HREF="#field_summary">FIELD</A> | <A HREF="#constructor_summary">CONSTR</A> | <A HREF="#method_summary">METHOD</A></FONT></TD>
<TD VALIGN="top" CLASS="NavBarCell3"><FONT SIZE="-2">
DETAIL: <A HREF="#field_detail">FIELD</A> | <A HREF="#constructor_detail">CONSTR</A> | <A HREF="#method_detail">METHOD</A></FONT></TD>
</TR>
</TABLE>
<!-- =========== END OF NAVBAR =========== -->
<HR>
<!-- ======== START OF CLASS DATA ======== -->
<H2>
<FONT SIZE="-1">
com.novell.Chat</FONT>
<BR>
Class Communications</H2>
<PRE>
java.lang.Object
|
+--<B>com.novell.Chat.Communications</B>
</PRE>
<HR>
<DL>
<DT>public class <B>Communications</B><DT>extends java.lang.Object<DT>implements java.awt.event.ActionListener</DL>
<P>
Handles all of the communications between both clients and servers.
This class implements its own communications protocol using the
TCP/IP stack inorder to make the communication's more efficent.
<P>
<HR>
<P>
<!-- ======== INNER CLASS SUMMARY ======== -->
<!-- =========== FIELD SUMMARY =========== -->
<A NAME="field_summary"><!-- --></A>
<TABLE BORDER="1" CELLPADDING="3" CELLSPACING="0" WIDTH="100%">
<TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor">
<TD COLSPAN=2><FONT SIZE="+2">
<B>Field Summary</B></FONT></TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>static int</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../com/novell/Chat/Communications.html#BUFFER_SIZE">BUFFER_SIZE</A></B></CODE>
<BR>
The default buffer size to read in at a time.</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>static java.lang.String</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../com/novell/Chat/Communications.html#CODE_ACCEPT">CODE_ACCEPT</A></B></CODE>
<BR>
Sent to accept a chat request.</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>static java.lang.String</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../com/novell/Chat/Communications.html#CODE_DISCONNECT">CODE_DISCONNECT</A></B></CODE>
<BR>
Sent when a user disconnects.</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>static java.lang.String</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../com/novell/Chat/Communications.html#CODE_DN">CODE_DN</A></B></CODE>
<BR>
This is sent when this user is identifying himself
to the person he is connected to.</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>static java.lang.String</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../com/novell/Chat/Communications.html#CODE_FORCE_DIS">CODE_FORCE_DIS</A></B></CODE>
<BR>
Sent to force a client to disconnect.</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>static java.lang.String</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../com/novell/Chat/Communications.html#CODE_ID">CODE_ID</A></B></CODE>
<BR>
Sent when the user is requesting that the person he is
connected when identify himself.</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>static java.lang.String</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../com/novell/Chat/Communications.html#CODE_MSG">CODE_MSG</A></B></CODE>
<BR>
Proceeds the user's message.</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>static java.lang.String</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../com/novell/Chat/Communications.html#CODE_REC_ACC">CODE_REC_ACC</A></B></CODE>
<BR>
Sent by a server to accept the reconnection.</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>static java.lang.String</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../com/novell/Chat/Communications.html#CODE_RECONNECT">CODE_RECONNECT</A></B></CODE>
<BR>
Sent by a client to reconnect to a server after a server transfer.</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>static java.lang.String</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../com/novell/Chat/Communications.html#CODE_REJECT">CODE_REJECT</A></B></CODE>
<BR>
Sent to reject a chat request.</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>static java.lang.String</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../com/novell/Chat/Communications.html#CODE_REQUEST">CODE_REQUEST</A></B></CODE>
<BR>
Sent when the user is requesting a connection.</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>static java.lang.String</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../com/novell/Chat/Communications.html#CODE_SEPERATOR">CODE_SEPERATOR</A></B></CODE>
<BR>
Used to seperate various values found in the same message.</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>static java.lang.String</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../com/novell/Chat/Communications.html#CODE_SHUTDOWN">CODE_SHUTDOWN</A></B></CODE>
<BR>
Sent to force a server shut down.</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>static java.lang.String</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../com/novell/Chat/Communications.html#CODE_SHUTDOWN_DONE">CODE_SHUTDOWN_DONE</A></B></CODE>
<BR>
Sent when the forced shut down is complete.</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>static java.lang.String</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../com/novell/Chat/Communications.html#CODE_STARTER">CODE_STARTER</A></B></CODE>
<BR>
Char used to find the beginning of a new tag.</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>static java.lang.String</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../com/novell/Chat/Communications.html#CODE_TRAN_COM">CODE_TRAN_COM</A></B></CODE>
<BR>
Sent to all clients to command a server transfer.</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>static java.lang.String</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../com/novell/Chat/Communications.html#CODE_TRAN_REQ">CODE_TRAN_REQ</A></B></CODE>
<BR>
Sent to request a server transfer.</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>static java.lang.String</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../com/novell/Chat/Communications.html#CODE_TRAN_RESP">CODE_TRAN_RESP</A></B></CODE>
<BR>
Sent in response to a server Transfer request.</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>static java.lang.String</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../com/novell/Chat/Communications.html#CODE_UPDATE">CODE_UPDATE</A></B></CODE>
<BR>
Sent when a user is either added or removed from a chat room.</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>static java.lang.String</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../com/novell/Chat/Communications.html#CODE_USER">CODE_USER</A></B></CODE>
<BR>
This should be the first tag in almost all messages.</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>static int</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../com/novell/Chat/Communications.html#ERROR_IO">ERROR_IO</A></B></CODE>
<BR>
Error message code send through comError().</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>static int</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../com/novell/Chat/Communications.html#ERROR_NO_COM">ERROR_NO_COM</A></B></CODE>
<BR>
Error message code send through comError().</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>static int</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../com/novell/Chat/Communications.html#ERROR_TIMEOUT">ERROR_TIMEOUT</A></B></CODE>
<BR>
Error message code send through comError().</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>static int</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../com/novell/Chat/Communications.html#TIMEOUT">TIMEOUT</A></B></CODE>
<BR>
The default timeout in seconds that is used when
waiting for a connections to be established.</TD>
</TR>
</TABLE>
<!-- ======== CONSTRUCTOR SUMMARY ======== -->
<A NAME="constructor_summary"><!-- --></A>
<TABLE BORDER="1" CELLPADDING="3" CELLSPACING="0" WIDTH="100%">
<TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor">
<TD COLSPAN=2><FONT SIZE="+2">
<B>Constructor Summary</B></FONT></TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD><CODE><B><A HREF="../../../com/novell/Chat/Communications.html#Communications(com.novell.Chat.ComListener, java.net.Socket, java.lang.String, java.lang.String)">Communications</A></B>(<A HREF="../../../com/novell/Chat/ComListener.html">ComListener</A> listener,
java.net.Socket socket,
java.lang.String localName,
java.lang.String localFullName)</CODE>
<BR>
Constructor</TD>
</TR>
</TABLE>
<!-- ========== METHOD SUMMARY =========== -->
<A NAME="method_summary"><!-- --></A>
<TABLE BORDER="1" CELLPADDING="3" CELLSPACING="0" WIDTH="100%">
<TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor">
<TD COLSPAN=2><FONT SIZE="+2">
<B>Method Summary</B></FONT></TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE> void</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../com/novell/Chat/Communications.html#actionPerformed(java.awt.event.ActionEvent)">actionPerformed</A></B>(java.awt.event.ActionEvent e)</CODE>
<BR>
Implements the ActionListener Interface.</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE> void</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../com/novell/Chat/Communications.html#disconnect()">disconnect</A></B>()</CODE>
<BR>
Ends the connection.</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE> boolean</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../com/novell/Chat/Communications.html#estabCom()">estabCom</A></B>()</CODE>
<BR>
Establishes communications by sending the ID message.</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE> boolean</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../com/novell/Chat/Communications.html#forceDisconnect(java.lang.String)">forceDisconnect</A></B>(java.lang.String key)</CODE>
<BR>
Sends a message to force the disconnection of a client.</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE> boolean</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../com/novell/Chat/Communications.html#forceShutDown()">forceShutDown</A></B>()</CODE>
<BR>
Sends the message to force the shut down of the server.</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE> java.lang.String</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../com/novell/Chat/Communications.html#getClientKey()">getClientKey</A></B>()</CODE>
<BR>
Gets the key associated with this connection.</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE> int</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../com/novell/Chat/Communications.html#getColorCode()">getColorCode</A></B>()</CODE>
<BR>
</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE> java.lang.String</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../com/novell/Chat/Communications.html#getKey()">getKey</A></B>()</CODE>
<BR>
Gets the key associated with this connection.</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE> java.lang.String</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../com/novell/Chat/Communications.html#getLocalFullName()">getLocalFullName</A></B>()</CODE>
<BR>
</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE> java.lang.String</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../com/novell/Chat/Communications.html#getLocalIPAddress()">getLocalIPAddress</A></B>()</CODE>
<BR>
</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE> java.lang.String</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../com/novell/Chat/Communications.html#getLocalName()">getLocalName</A></B>()</CODE>
<BR>
</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE> int</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../com/novell/Chat/Communications.html#getLocalPort()">getLocalPort</A></B>()</CODE>
<BR>
</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE> java.lang.String</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../com/novell/Chat/Communications.html#getRemoteFullName()">getRemoteFullName</A></B>()</CODE>
<BR>
</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE> java.lang.String</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../com/novell/Chat/Communications.html#getRemoteIPAddress()">getRemoteIPAddress</A></B>()</CODE>
<BR>
</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE> java.lang.String</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../com/novell/Chat/Communications.html#getRemoteName()">getRemoteName</A></B>()</CODE>
<BR>
</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE> int</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../com/novell/Chat/Communications.html#getRemotePort()">getRemotePort</A></B>()</CODE>
<BR>
</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE> boolean</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../com/novell/Chat/Communications.html#isConnected()">isConnected</A></B>()</CODE>
<BR>
Tests to see if a connection exists by testing to see that all
three vital threads are running.</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE> boolean</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../com/novell/Chat/Communications.html#reEstabCom(java.lang.String)">reEstabCom</A></B>(java.lang.String oldKey)</CODE>
<BR>
Re-establishes communications with a server after a server transfer.</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE> void</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../com/novell/Chat/Communications.html#sendMessage(int, java.lang.String, java.lang.String)">sendMessage</A></B>(int nameColor,
java.lang.String name,
java.lang.String message)</CODE>
<BR>
Sends the message from the given user.</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE> void</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../com/novell/Chat/Communications.html#sendMessage(java.lang.String, java.lang.String)">sendMessage</A></B>(java.lang.String name,
java.lang.String message)</CODE>
<BR>
Sends the message from the given user.</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE> void</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../com/novell/Chat/Communications.html#sendTransferCommand(java.lang.String)">sendTransferCommand</A></B>(java.lang.String roomFullName)</CODE>
<BR>
Sends the command to transfer the control of the server to another server.</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE> void</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../com/novell/Chat/Communications.html#sendTransferMessage(int)">sendTransferMessage</A></B>(int startColor)</CODE>
<BR>
Sends the request to transfer the control of the server to this client.</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE> void</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../com/novell/Chat/Communications.html#sendUpdate()">sendUpdate</A></B>()</CODE>
<BR>
Sends an update message.</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE> void</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../com/novell/Chat/Communications.html#setColorCode(int)">setColorCode</A></B>(int colorCode)</CODE>
<BR>
</TD>
</TR>
</TABLE>
<A NAME="methods_inherited_from_class_java.lang.Object"><!-- --></A>
<TABLE BORDER="1" CELLPADDING="3" CELLSPACING="0" WIDTH="100%">
<TR BGCOLOR="#EEEEFF" CLASS="TableSubHeadingColor">
<TD><B>Methods inherited from class java.lang.Object</B></TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD><CODE>clone,
equals,
finalize,
getClass,
hashCode,
notify,
notifyAll,
toString,
wait,
wait,
wait</CODE></TD>
</TR>
</TABLE>
<P>
<!-- ============ FIELD DETAIL =========== -->
<A NAME="field_detail"><!-- --></A>
<TABLE BORDER="1" CELLPADDING="3" CELLSPACING="0" WIDTH="100%">
<TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor">
<TD COLSPAN=1><FONT SIZE="+2">
<B>Field Detail</B></FONT></TD>
</TR>
</TABLE>
<A NAME="BUFFER_SIZE"><!-- --></A><H3>
BUFFER_SIZE</H3>
<PRE>
public static final int <B>BUFFER_SIZE</B></PRE>
<DL>
<DD>The default buffer size to read in at a time.</DL>
<HR>
<A NAME="ERROR_TIMEOUT"><!-- --></A><H3>
ERROR_TIMEOUT</H3>
<PRE>
public static final int <B>ERROR_TIMEOUT</B></PRE>
<DL>
<DD>Error message code send through comError().
Sent when a timeout error occurs.</DL>
<HR>
<A NAME="ERROR_NO_COM"><!-- --></A><H3>
ERROR_NO_COM</H3>
<PRE>
public static final int <B>ERROR_NO_COM</B></PRE>
<DL>
<DD>Error message code send through comError().
Sent when a no communications error occurs.</DL>
<HR>
<A NAME="ERROR_IO"><!-- --></A><H3>
ERROR_IO</H3>
<PRE>
public static final int <B>ERROR_IO</B></PRE>
<DL>
<DD>Error message code send through comError().
Sent when an IO error occurs.</DL>
<HR>
<A NAME="TIMEOUT"><!-- --></A><H3>
TIMEOUT</H3>
<PRE>
public static final int <B>TIMEOUT</B></PRE>
<DL>
<DD>The default timeout in seconds that is used when
waiting for a connections to be established.</DL>
<HR>
<A NAME="CODE_STARTER"><!-- --></A><H3>
CODE_STARTER</H3>
<PRE>
public static final java.lang.String <B>CODE_STARTER</B></PRE>
<DL>
<DD>Char used to find the beginning of a new tag.</DL>
<HR>
<A NAME="CODE_SEPERATOR"><!-- --></A><H3>
CODE_SEPERATOR</H3>
<PRE>
public static final java.lang.String <B>CODE_SEPERATOR</B></PRE>
<DL>
<DD>Used to seperate various values found in the same message.</DL>
<HR>
<A NAME="CODE_MSG"><!-- --></A><H3>
CODE_MSG</H3>
<PRE>
public static final java.lang.String <B>CODE_MSG</B></PRE>
<DL>
<DD>Proceeds the user's message. This should always be the last
tag in data string so that it is impossible for the user to
enter data that would confuse the parser.</DL>
<HR>
<A NAME="CODE_USER"><!-- --></A><H3>
CODE_USER</H3>
<PRE>
public static final java.lang.String <B>CODE_USER</B></PRE>
<DL>
<DD>This should be the first tag in almost all messages.
The user's name should follow. This identifies the
sender of the message.</DL>
<HR>
<A NAME="CODE_DN"><!-- --></A><H3>
CODE_DN</H3>
<PRE>
public static final java.lang.String <B>CODE_DN</B></PRE>
<DL>
<DD>This is sent when this user is identifying himself
to the person he is connected to.
This is sent with this user's fullname following.</DL>
<HR>
<A NAME="CODE_ACCEPT"><!-- --></A><H3>
CODE_ACCEPT</H3>
<PRE>
public static final java.lang.String <B>CODE_ACCEPT</B></PRE>
<DL>
<DD>Sent to accept a chat request. No data need follow.</DL>
<HR>
<A NAME="CODE_REJECT"><!-- --></A><H3>
CODE_REJECT</H3>
<PRE>
public static final java.lang.String <B>CODE_REJECT</B></PRE>
<DL>
<DD>Sent to reject a chat request. No data need follow.</DL>
<HR>
<A NAME="CODE_DISCONNECT"><!-- --></A><H3>
CODE_DISCONNECT</H3>
<PRE>
public static final java.lang.String <B>CODE_DISCONNECT</B></PRE>
<DL>
<DD>Sent when a user disconnects. Informs others that
he is no longer connected. No data need follow.</DL>
<HR>
<A NAME="CODE_UPDATE"><!-- --></A><H3>
CODE_UPDATE</H3>
<PRE>
public static final java.lang.String <B>CODE_UPDATE</B></PRE>
<DL>
<DD>Sent when a user is either added or removed from a chat room.</DL>
<HR>
<A NAME="CODE_REQUEST"><!-- --></A><H3>
CODE_REQUEST</H3>
<PRE>
public static final java.lang.String <B>CODE_REQUEST</B></PRE>
<DL>
<DD>Sent when the user is requesting a connection.
The user's fullname should follow.</DL>
<HR>
<A NAME="CODE_ID"><!-- --></A><H3>
CODE_ID</H3>
<PRE>
public static final java.lang.String <B>CODE_ID</B></PRE>
<DL>
<DD>Sent when the user is requesting that the person he is
connected when identify himself.</DL>
<HR>
<A NAME="CODE_TRAN_REQ"><!-- --></A><H3>
CODE_TRAN_REQ</H3>
<PRE>
public static final java.lang.String <B>CODE_TRAN_REQ</B></PRE>
<DL>
<DD>Sent to request a server transfer.</DL>
<HR>
<A NAME="CODE_TRAN_COM"><!-- --></A><H3>
CODE_TRAN_COM</H3>
<PRE>
public static final java.lang.String <B>CODE_TRAN_COM</B></PRE>
<DL>
<DD>Sent to all clients to command a server transfer.</DL>
<HR>
<A NAME="CODE_TRAN_RESP"><!-- --></A><H3>
CODE_TRAN_RESP</H3>
<PRE>
public static final java.lang.String <B>CODE_TRAN_RESP</B></PRE>
<DL>
<DD>Sent in response to a server Transfer request.</DL>
<HR>
<A NAME="CODE_RECONNECT"><!-- --></A><H3>
CODE_RECONNECT</H3>
<PRE>
public static final java.lang.String <B>CODE_RECONNECT</B></PRE>
<DL>
<DD>Sent by a client to reconnect to a server after a server transfer.</DL>
<HR>
<A NAME="CODE_REC_ACC"><!-- --></A><H3>
CODE_REC_ACC</H3>
<PRE>
public static final java.lang.String <B>CODE_REC_ACC</B></PRE>
<DL>
<DD>Sent by a server to accept the reconnection.</DL>
<HR>
<A NAME="CODE_SHUTDOWN"><!-- --></A><H3>
CODE_SHUTDOWN</H3>
<PRE>
public static final java.lang.String <B>CODE_SHUTDOWN</B></PRE>
<DL>
<DD>Sent to force a server shut down.</DL>
<HR>
<A NAME="CODE_SHUTDOWN_DONE"><!-- --></A><H3>
CODE_SHUTDOWN_DONE</H3>
<PRE>
public static final java.lang.String <B>CODE_SHUTDOWN_DONE</B></PRE>
<DL>
<DD>Sent when the forced shut down is complete.</DL>
<HR>
<A NAME="CODE_FORCE_DIS"><!-- --></A><H3>
CODE_FORCE_DIS</H3>
<PRE>
public static final java.lang.String <B>CODE_FORCE_DIS</B></PRE>
<DL>
<DD>Sent to force a client to disconnect.</DL>
<!-- ========= CONSTRUCTOR DETAIL ======== -->
<A NAME="constructor_detail"><!-- --></A>
<TABLE BORDER="1" CELLPADDING="3" CELLSPACING="0" WIDTH="100%">
<TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor">
<TD COLSPAN=1><FONT SIZE="+2">
<B>Constructor Detail</B></FONT></TD>
</TR>
</TABLE>
<A NAME="Communications(com.novell.Chat.ComListener, java.net.Socket, java.lang.String, java.lang.String)"><!-- --></A><H3>
Communications</H3>
<PRE>
public <B>Communications</B>(<A HREF="../../../com/novell/Chat/ComListener.html">ComListener</A> listener,
java.net.Socket socket,
java.lang.String localName,
java.lang.String localFullName)</PRE>
<DL>
<DD>Constructor<DD><DL>
<DT><B>Parameters:</B><DD><CODE>listener</CODE> - The ComListener that will receive the communication's events.<DD><CODE>socket</CODE> - The socket it is connected at.<DD><CODE>localName</CODE> - The name of this local user.<DD><CODE>localFullName</CODE> - The fullname of this local user.</DL>
</DD>
</DL>
<!-- ============ METHOD DETAIL ========== -->
<A NAME="method_detail"><!-- --></A>
<TABLE BORDER="1" CELLPADDING="3" CELLSPACING="0" WIDTH="100%">
<TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor">
<TD COLSPAN=1><FONT SIZE="+2">
<B>Method Detail</B></FONT></TD>
</TR>
</TABLE>
<A NAME="isConnected()"><!-- --></A><H3>
isConnected</H3>
<PRE>
public boolean <B>isConnected</B>()</PRE>
<DL>
<DD>Tests to see if a connection exists by testing to see that all
three vital threads are running.<DD><DL>
</DL>
</DD>
<DD><DL>
<DT><B>Returns:</B><DD>True if connected.</DL>
</DD>
</DL>
<HR>
<A NAME="estabCom()"><!-- --></A><H3>
estabCom</H3>
<PRE>
public boolean <B>estabCom</B>()</PRE>
<DL>
<DD>Establishes communications by sending the ID message.<DD><DL>
</DL>
</DD>
<DD><DL>
<DT><B>Returns:</B><DD>True if the start was successfull.</DL>
</DD>
</DL>
<HR>
<A NAME="reEstabCom(java.lang.String)"><!-- --></A><H3>
reEstabCom</H3>
<PRE>
public boolean <B>reEstabCom</B>(java.lang.String oldKey)</PRE>
<DL>
<DD>Re-establishes communications with a server after a server transfer.<DD><DL>
</DL>
</DD>
<DD><DL>
<DT><B>Parameters:</B><DD><CODE>The</CODE> - old key to the client that is reconnecting.<DT><B>Returns:</B><DD>True if successfull.</DL>
</DD>
</DL>
<HR>
<A NAME="forceShutDown()"><!-- --></A><H3>
forceShutDown</H3>
<PRE>
public boolean <B>forceShutDown</B>()</PRE>
<DL>
<DD>Sends the message to force the shut down of the server.<DD><DL>
</DL>
</DD>
<DD><DL>
<DT><B>Returns:</B><DD>True if successfull.</DL>
</DD>
</DL>
<HR>
<A NAME="forceDisconnect(java.lang.String)"><!-- --></A><H3>
forceDisconnect</H3>
<PRE>
public boolean <B>forceDisconnect</B>(java.lang.String key)</PRE>
<DL>
<DD>Sends a message to force the disconnection of a client.<DD><DL>
</DL>
</DD>
<DD><DL>
<DT><B>Parameters:</B><DD><CODE>key</CODE> - The client to disconnect.<DT><B>Returns:</B><DD>True if successfull.</DL>
</DD>
</DL>
<HR>
<A NAME="sendUpdate()"><!-- --></A><H3>
sendUpdate</H3>
<PRE>
public void <B>sendUpdate</B>()</PRE>
<DL>
<DD>Sends an update message.<DD><DL>
</DL>
</DD>
</DL>
<HR>
<A NAME="getKey()"><!-- --></A><H3>
getKey</H3>
<PRE>
public java.lang.String <B>getKey</B>()</PRE>
<DL>
<DD>Gets the key associated with this connection.<DD><DL>
</DL>
</DD>
<DD><DL>
<DT><B>Returns:</B><DD>A string in the form of IP:Port</DL>
</DD>
</DL>
<HR>
<A NAME="getClientKey()"><!-- --></A><H3>
getClientKey</H3>
<PRE>
public java.lang.String <B>getClientKey</B>()</PRE>
<DL>
<DD>Gets the key associated with this connection.
ChatClient version.<DD><DL>
</DL>
</DD>
<DD><DL>
<DT><B>Returns:</B><DD>A string in the form of IP:Port</DL>
</DD>
</DL>
<HR>
<A NAME="disconnect()"><!-- --></A><H3>
disconnect</H3>
<PRE>
public void <B>disconnect</B>()</PRE>
<DL>
<DD>Ends the connection.<DD><DL>
</DL>
</DD>
</DL>
<HR>
<A NAME="getLocalName()"><!-- --></A><H3>
getLocalName</H3>
<PRE>
public java.lang.String <B>getLocalName</B>()</PRE>
<DL>
<DD><DL>
</DL>
</DD>
</DL>
<HR>
<A NAME="getLocalFullName()"><!-- --></A><H3>
getLocalFullName</H3>
<PRE>
public java.lang.String <B>getLocalFullName</B>()</PRE>
<DL>
<DD><DL>
</DL>
</DD>
</DL>
<HR>
<A NAME="getLocalIPAddress()"><!-- --></A><H3>
getLocalIPAddress</H3>
<PRE>
public java.lang.String <B>getLocalIPAddress</B>()</PRE>
<DL>
<DD><DL>
</DL>
</DD>
</DL>
<HR>
<A NAME="getLocalPort()"><!-- --></A><H3>
getLocalPort</H3>
<PRE>
public int <B>getLocalPort</B>()</PRE>
<DL>
<DD><DL>
</DL>
</DD>
</DL>
<HR>
<A NAME="getRemoteName()"><!-- --></A><H3>
getRemoteName</H3>
<PRE>
public java.lang.String <B>getRemoteName</B>()</PRE>
<DL>
<DD><DL>
</DL>
</DD>
</DL>
<HR>
<A NAME="getRemoteFullName()"><!-- --></A><H3>
getRemoteFullName</H3>
<PRE>
public java.lang.String <B>getRemoteFullName</B>()</PRE>
<DL>
<DD><DL>
</DL>
</DD>
</DL>
<HR>
<A NAME="getRemoteIPAddress()"><!-- --></A><H3>
getRemoteIPAddress</H3>
<PRE>
public java.lang.String <B>getRemoteIPAddress</B>()</PRE>
<DL>
<DD><DL>
</DL>
</DD>
</DL>
<HR>
<A NAME="getRemotePort()"><!-- --></A><H3>
getRemotePort</H3>
<PRE>
public int <B>getRemotePort</B>()</PRE>
<DL>
<DD><DL>
</DL>
</DD>
</DL>
<HR>
<A NAME="getColorCode()"><!-- --></A><H3>
getColorCode</H3>
<PRE>
public int <B>getColorCode</B>()</PRE>
<DL>
<DD><DL>
</DL>
</DD>
</DL>
<HR>
<A NAME="setColorCode(int)"><!-- --></A><H3>
setColorCode</H3>
<PRE>
public void <B>setColorCode</B>(int colorCode)</PRE>
<DL>
<DD><DL>
</DL>
</DD>
</DL>
<HR>
<A NAME="sendMessage(int, java.lang.String, java.lang.String)"><!-- --></A><H3>
sendMessage</H3>
<PRE>
public void <B>sendMessage</B>(int nameColor,
java.lang.String name,
java.lang.String message)</PRE>
<DL>
<DD>Sends the message from the given user.<DD><DL>
</DL>
</DD>
<DD><DL>
<DT><B>Parameters:</B><DD><CODE>nameColor</CODE> - The color to print the name in.<DD><CODE>name</CODE> - The user's name who sent it.<DD><CODE>message</CODE> - The message to send.</DL>
</DD>
</DL>
<HR>
<A NAME="sendMessage(java.lang.String, java.lang.String)"><!-- --></A><H3>
sendMessage</H3>
<PRE>
public void <B>sendMessage</B>(java.lang.String name,
java.lang.String message)</PRE>
<DL>
<DD>Sends the message from the given user.<DD><DL>
</DL>
</DD>
<DD><DL>
<DT><B>Parameters:</B><DD><CODE>name</CODE> - The user's name who sent it.<DD><CODE>message</CODE> - The message to send.</DL>
</DD>
</DL>
<HR>
<A NAME="sendTransferMessage(int)"><!-- --></A><H3>
sendTransferMessage</H3>
<PRE>
public void <B>sendTransferMessage</B>(int startColor)</PRE>
<DL>
<DD>Sends the request to transfer the control of the server to this client.<DD><DL>
</DL>
</DD>
</DL>
<HR>
<A NAME="sendTransferCommand(java.lang.String)"><!-- --></A><H3>
sendTransferCommand</H3>
<PRE>
public void <B>sendTransferCommand</B>(java.lang.String roomFullName)</PRE>
<DL>
<DD>Sends the command to transfer the control of the server to another server.<DD><DL>
</DL>
</DD>
</DL>
<HR>
<A NAME="actionPerformed(java.awt.event.ActionEvent)"><!-- --></A><H3>
actionPerformed</H3>
<PRE>
public void <B>actionPerformed</B>(java.awt.event.ActionEvent e)</PRE>
<DL>
<DD>Implements the ActionListener Interface.
Triggered when the timeOut timer expires.<DD><DL>
<DT><B>Specified by: </B><DD>actionPerformed in interface java.awt.event.ActionListener</DL>
</DD>
<DD><DL>
<DT><B>Parameters:</B><DD><CODE>e</CODE> - The ActionEvent</DL>
</DD>
</DL>
<!-- ========= END OF CLASS DATA ========= -->
<HR>
<!-- ========== START OF NAVBAR ========== -->
<A NAME="navbar_bottom"><!-- --></A>
<TABLE BORDER="0" WIDTH="100%" CELLPADDING="1" CELLSPACING="0">
<TR>
<TD COLSPAN=2 BGCOLOR="#EEEEFF" CLASS="NavBarCell1">
<A NAME="navbar_bottom_firstrow"><!-- --></A>
<TABLE BORDER="0" CELLPADDING="0" CELLSPACING="3">
<TR ALIGN="center" VALIGN="top">
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../overview-summary.html"><FONT ID="NavBarFont1"><B>Overview</B></FONT></A> </TD>
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="package-summary.html"><FONT ID="NavBarFont1"><B>Package</B></FONT></A> </TD>
<TD BGCOLOR="#FFFFFF" CLASS="NavBarCell1Rev"> <FONT CLASS="NavBarFont1Rev"><B>Class</B></FONT> </TD>
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="package-tree.html"><FONT ID="NavBarFont1"><B>Tree</B></FONT></A> </TD>
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../deprecated-list.html"><FONT ID="NavBarFont1"><B>Deprecated</B></FONT></A> </TD>
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../index-all.html"><FONT ID="NavBarFont1"><B>Index</B></FONT></A> </TD>
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../help-doc.html"><FONT ID="NavBarFont1"><B>Help</B></FONT></A> </TD>
</TR>
</TABLE>
</TD>
<TD ALIGN="right" VALIGN="top" ROWSPAN=3><EM>
</EM>
</TD>
</TR>
<TR>
<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
<A HREF="../../../com/novell/Chat/ChooseUserDlg.html"><B>PREV CLASS</B></A>
<A HREF="../../../com/novell/Chat/CreateChatRoomDialog.html"><B>NEXT CLASS</B></A></FONT></TD>
<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
<A HREF="../../../index.html" TARGET="_top"><B>FRAMES</B></A>
<A HREF="Communications.html" TARGET="_top"><B>NO FRAMES</B></A></FONT></TD>
</TR>
<TR>
<TD VALIGN="top" CLASS="NavBarCell3"><FONT SIZE="-2">
SUMMARY: INNER | <A HREF="#field_summary">FIELD</A> | <A HREF="#constructor_summary">CONSTR</A> | <A HREF="#method_summary">METHOD</A></FONT></TD>
<TD VALIGN="top" CLASS="NavBarCell3"><FONT SIZE="-2">
DETAIL: <A HREF="#field_detail">FIELD</A> | <A HREF="#constructor_detail">CONSTR</A> | <A HREF="#method_detail">METHOD</A></FONT></TD>
</TR>
</TABLE>
<!-- =========== END OF NAVBAR =========== -->
<HR>
</BODY>
</HTML>