main
Class Chat

java.lang.Object
  |
  +--main.Chat
All Implemented Interfaces:
java.lang.Runnable

public class Chat
extends java.lang.Object
implements java.lang.Runnable

Hanterar en Talk-connection.

Senast ändrad $Date: 2003/02/19 15:43:48 $ av $Author: rene-fic $


Field Summary
private  ChatFrame chatFrame
          Den JFrame som används som chat-fönster.
private static int MAX_LENGTH
          Max-längd på meddelanden som kan skickas.
private  java.net.InetAddress multiGroup
          Talk-sessionens multicast-adress.
private  int port
          Multicast-socketens port.
private  java.lang.String recipient
          Talk-partnerns användarnamn.
private  java.net.MulticastSocket socket
          Talk-sessionens socket.
private  boolean stopped
          Kontrollerar om thread ska köras.
private  java.lang.Thread thread
          Lyssnartråd.
private  java.lang.String username
          Det lokala användarnamnet.
 
Constructor Summary
Chat(java.lang.String recipient)
          Skapar ett nytt Chat-objekt.
 
Method Summary
protected  void checkTalk(courses.dsv2pvt.messageclasses.Talk msg)
          Behandlar ett Talk-objekt som har skickats från servern.
private  void connect(courses.dsv2pvt.messageclasses.Talk msg)
          Kopplar upp talk-sessionen.
 void disconnect()
          Kopplar ner talk-sessionen.
protected  java.lang.String getUsername()
          Hämtar det lokala användarnamnet.
 boolean request(java.lang.String recipient)
          Skickar ett talk-request till en användare.
 void run()
          Lyssnartråd.
 void send(java.lang.String msg)
          Skickar ett meddelande till talk-partnern.
 void show()
          Visar Chat-fönstret.
private  void showMsg(java.lang.String msg, java.lang.String title)
          Visar en JOptionPane innehållande ett meddelande.
private  boolean showYesNo(java.lang.String msg, java.lang.String title)
          Visar en JOptionPane med en ja/nej-fråga.
private  void stopThread()
          Stoppar lyssnartråden.
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

multiGroup

private java.net.InetAddress multiGroup
Talk-sessionens multicast-adress.


socket

private java.net.MulticastSocket socket
Talk-sessionens socket.


port

private int port
Multicast-socketens port.


thread

private java.lang.Thread thread
Lyssnartråd.


username

private java.lang.String username
Det lokala användarnamnet.


recipient

private java.lang.String recipient
Talk-partnerns användarnamn.


MAX_LENGTH

private static final int MAX_LENGTH
Max-längd på meddelanden som kan skickas.

See Also:
Constant Field Values

chatFrame

private ChatFrame chatFrame
Den JFrame som används som chat-fönster.


stopped

private boolean stopped
Kontrollerar om thread ska köras.

Constructor Detail

Chat

public Chat(java.lang.String recipient)
Skapar ett nytt Chat-objekt.

Parameters:
recipient - Talk-partnerns användarnamn.
Method Detail

getUsername

protected java.lang.String getUsername()
Hämtar det lokala användarnamnet.

Returns:
Användarnamnet.

show

public void show()
Visar Chat-fönstret.


run

public void run()
Lyssnartråd.

Specified by:
run in interface java.lang.Runnable

showYesNo

private boolean showYesNo(java.lang.String msg,
                          java.lang.String title)
Visar en JOptionPane med en ja/nej-fråga.

Parameters:
msg - Meddelandet.
title - Fönstertitel.
Returns:
true om "ja" har valts, false annars.

showMsg

private void showMsg(java.lang.String msg,
                     java.lang.String title)
Visar en JOptionPane innehållande ett meddelande.

Parameters:
msg - Meddelandet.
title - Fönstertitel.

checkTalk

protected void checkTalk(courses.dsv2pvt.messageclasses.Talk msg)
Behandlar ett Talk-objekt som har skickats från servern.

Parameters:
msg - Talk-objektet.
See Also:
DomainFacade.checkTalk(courses.dsv2pvt.messageclasses.Talk)

request

public boolean request(java.lang.String recipient)
Skickar ett talk-request till en användare.

Parameters:
recipient - Mottagarens användarnamn.
Returns:
true om ivägskickandet lyckades, false annars

connect

private void connect(courses.dsv2pvt.messageclasses.Talk msg)
Kopplar upp talk-sessionen.

Parameters:
msg - Specificerar mot vem talk-uppkopplingen ska ske.

disconnect

public void disconnect()
Kopplar ner talk-sessionen.


stopThread

private void stopThread()
Stoppar lyssnartråden.


send

public void send(java.lang.String msg)
Skickar ett meddelande till talk-partnern.

Parameters:
msg - Meddelandet.