net.gobbz.nachrichten
Class Nachrichtenliste

java.lang.Object
  extended by net.gobbz.nachrichten.Nachrichtenliste

public class Nachrichtenliste
extends java.lang.Object

Diese Klasse stellt Methoden bereit, um Nachrichten von einem Posteingangsserver abzurufen und in einer Liste zu speichern, sie dient dazu neue Nachrichten über einen Postausgangsserver zu verschicken und Nachrichten auf einem Posteingangsserver zu löschen. Sie kapselt in sich die Zugangsdaten zum Server nebst Sicherungs- und Verschlüsselungsart


Field Summary
protected  java.lang.String benutzername
          Benutzername für die Anmeldung
protected  boolean debug
          Verbindung mit Posteingangsserver im Debug-Modus öffnen
static int KEINE_SICHERUNG
          Verbindungsaufbau zu den Servern erfolg ungesichert
static int KENNWORTAUTHENTIFIZIERUNG
          Posteingangs- und -ausgangsserver erfordern Anmeldung mittels gesicherter Kennwortauthentifizierung (SPA)
protected  java.lang.String passwort
          Passwort für die Anmeldung
protected  java.lang.String popserver
          Adresse des Posteingangsserver
protected  int sicherungsart
          Sicherungs- und Verschlüsselungsart
protected  boolean smtpAfterPop
          Vor dem Senden den Posteingangsserver abfragen
protected  java.lang.String smtpserver
          Adresse des Postausgangsservers
static int SSL_VERSCHLUESSELUNG
          Posteingangs- und -ausgangsserver erfordern verschlüsselte Verbindung (SSL)
 
Constructor Summary
Nachrichtenliste(java.lang.String popserver, java.lang.String smtpserver, java.lang.String benutzername, java.lang.String passwort, int sicherungsart, boolean debug, boolean smtpAfterPop)
          Legt eine neue Nachrichtenliste mit den Zugangsdaten zu den Servern an.
 
Method Summary
 Nachricht[] getNachrichten()
          Verbindet sich mit dem Posteingangsserver und ruft die Nachrichten vom Posteingangsserver ab, belässt diese aber noch am Server.
 void getNachrichtenDummy()
          Verbindet sich mit dem Posteingangsserver, ruft aber keine Nachrichten ab.
 int loescheNachrichten(Nachricht[] nachricht)
          Löscht jene Nachrichten vom Server, die in der übergebenen Nachrichtenliste enthalten sind.
 int sendeNachricht(Nachricht nachricht)
          Verbindet sich mit dem Postausgangsserver und sendet die übergebene Nachricht, welche keine Anlagen enthält
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

KEINE_SICHERUNG

public static final int KEINE_SICHERUNG
Verbindungsaufbau zu den Servern erfolg ungesichert

See Also:
Constant Field Values

SSL_VERSCHLUESSELUNG

public static final int SSL_VERSCHLUESSELUNG
Posteingangs- und -ausgangsserver erfordern verschlüsselte Verbindung (SSL)

See Also:
Constant Field Values

KENNWORTAUTHENTIFIZIERUNG

public static final int KENNWORTAUTHENTIFIZIERUNG
Posteingangs- und -ausgangsserver erfordern Anmeldung mittels gesicherter Kennwortauthentifizierung (SPA)

See Also:
Constant Field Values

popserver

protected java.lang.String popserver
Adresse des Posteingangsserver


smtpserver

protected java.lang.String smtpserver
Adresse des Postausgangsservers


benutzername

protected java.lang.String benutzername
Benutzername für die Anmeldung


passwort

protected java.lang.String passwort
Passwort für die Anmeldung


sicherungsart

protected int sicherungsart
Sicherungs- und Verschlüsselungsart


debug

protected boolean debug
Verbindung mit Posteingangsserver im Debug-Modus öffnen


smtpAfterPop

protected boolean smtpAfterPop
Vor dem Senden den Posteingangsserver abfragen

Constructor Detail

Nachrichtenliste

public Nachrichtenliste(java.lang.String popserver,
                        java.lang.String smtpserver,
                        java.lang.String benutzername,
                        java.lang.String passwort,
                        int sicherungsart,
                        boolean debug,
                        boolean smtpAfterPop)
                 throws NachrichtenException
Legt eine neue Nachrichtenliste mit den Zugangsdaten zu den Servern an. Werden popserver, smtpserver, benutzername und passwort nicht übergeben oder wird die Sicherungsart nicht auf einen gültigen Wert gesetzt, so wird ein NachrichtenException mit der entsprechenden Fehlermeldung geworfen

Parameters:
popserver -
smtpserver -
benutzername -
passwort -
sicherungsart -
debug -
smtpAfterPop -
Throws:
NachrichtenException
Method Detail

getNachrichten

public Nachricht[] getNachrichten()
                           throws NachrichtenException
Verbindet sich mit dem Posteingangsserver und ruft die Nachrichten vom Posteingangsserver ab, belässt diese aber noch am Server. Die Nachrichten werden in einem Feld des Typs Nachricht zurück geliefert

Returns:
Feld vom Typ Nachricht. Sind keine Nachrichten am Server vorhanden, wird null zurück geliefert
Throws:
NachrichtenException - wenn ein Übertragungsfehler aufgetreten ist

sendeNachricht

public int sendeNachricht(Nachricht nachricht)
                   throws NachrichtenException
Verbindet sich mit dem Postausgangsserver und sendet die übergebene Nachricht, welche keine Anlagen enthält

Parameters:
nachricht - die zu sendende Nachricht
Returns:
0 falls das Senden erfolgreich durchgeführt werden konnte
-1 falls keine Nachricht übergeben wurde
Throws:
NachrichtenException - falls Übertragungsfehler stattgefunden haben

getNachrichtenDummy

public void getNachrichtenDummy()
                         throws NachrichtenException
Verbindet sich mit dem Posteingangsserver, ruft aber keine Nachrichten ab. Diese Methode dient dazu SMTP-After-POP zu realisieren

Throws:
NachrichtenException

loescheNachrichten

public int loescheNachrichten(Nachricht[] nachricht)
                       throws NachrichtenException
Löscht jene Nachrichten vom Server, die in der übergebenen Nachrichtenliste enthalten sind. Ist am Server noch eine Nachricht vorhanden, welche in der Nachrichtenliste nicht vorkommt, so wird diese vom Server nicht gelöscht. Die Nachrichten werden verglichen, indem der Absender, das Sendedatum und der Betreff verglichen werden. Es werden nur jene Nachrichten vom Server gelöscht, die auch in der übergebenen Nachrichtenliste vorhanden sind

Parameters:
nachricht - das Feld der zu löschenden Nachrichten
Returns:
Anzahl der nach dem Löschvorgang am Server noch verbliebenen nicht gelöschten Nachrichten
-1 falls keine Nachrichtenliste übergeben wurde oder diese keine Nachrichten enthält
-2 falls am Server keine Nachrichten vorhanden sind
Throws:
NachrichtenException - wenn Übertragungsfehler aufgetreten sind