Teil 4: Chatsystem unter AJAX
Als Nächstes braucht das Chat-System zwei Klassen, um Nachrichten zu speichern. Die Klasse Nachricht speichert die eingegebenen Daten. Jede Nachricht erhält durch die Methode currentTimeMillis() eine eindeutige IDKennung in Form der aktuellen Uhrzeit. Der Programmierer ruft diese ID-Kennung über ...
Als Nächstes braucht das Chat-System zwei Klassen, um Nachrichten zu speichern. Die Klasse Nachricht speichert die eingegebenen Daten. Jede Nachricht erhält durch die Methode currentTimeMillis() eine eindeutige IDKennung in Form der aktuellen Uhrzeit. Der Programmierer ruft diese ID-Kennung über die Methode getId() ab. Den Inhalt des Nachrichten- Objekts rufen Sie per getText() ab.

Die Nachricht speichert die String-Variable text, während Sie die Uhrzeit in der Variablen id vom Typ long unterbringen. Ein Objekt dieser Klasse erzeugen Sie mit einem Konstruktor. Dem Konstruktor ist ein String-Objekt als Parameter anzugeben, welcher die zu speichernde Nachricht darstellt. Also schreiben Sie den Sourcecode der Klasse Nachricht:
public class Nachricht
{public Nachricht(String neuertext)
{text = neuerwtext;
if (text.length() > 256)
{text = text.substring(0, 256);}
text = text.replace('<',
'[').replace('&', '_');}
public long getId()
{ return id; }
public String getText()
{ return text; }
long id = System.currentTimeMillis();
String text;}
Nun soll die Hauptklasse des Chats die Nachrichten verarbeiten. Dazu speichern Sie jede Nachricht in der Collectionklasse LinkedList mit der Methode addMessage(). Die Methode getMessages() liefert die Objektliste aller Nachrichten zurück. In der Variablen messages vom Typ LinkedList speichern Sie vorläufig die gesamte Liste. Dies im Detail:
import java.util.LinkedList;
import java.util.List;
public class Chat
{public List addMessage(String text)
{if (text != null &&
text.trim().length() > 0)
{messages.addFirst(new
Message(text));
while (messages.size() > 10)
{messages.removeLast();} }
return messages; }
public List getMessages()
{ return messages; }
private static LinkedList messages =
new LinkedList(); }