relayServer
Class RelayServer

java.lang.Object
  extended by java.lang.Thread
      extended by relayServer.RelayServer
All Implemented Interfaces:
java.lang.Runnable

public class RelayServer
extends java.lang.Thread

Deze klasse zorgt ervoor dat e-mails die niet op de lokale server thuis horen, doorgestuurd worden naar een andere server. Normaal wordt dit via een MX DNS look-up gedaan. Echter doordat relaying vaak dichtstaat, wordt er gebruik gemaakt van een hostfile. Deze staat onder settings/relayservers, hierin staat het domein en ip adres van de bekende servers.

Version:
0.50 TODO Logging wegschrijven TODO Verbeteren controle bestaan van bestanden in sent folder. TODO Mogelijkheid om settingsvariabelen te kunnen veranderen (evt. via constructors). TODO [OPT] Toevoegen van een default relaying server. TODO [OPT] Invoegen van DNS MX lookup. TODO [OPT] Zorgen dat HELO ook de lokale domeinnaam meestuurt.

Nested Class Summary
 
Nested classes/interfaces inherited from class java.lang.Thread
java.lang.Thread.State, java.lang.Thread.UncaughtExceptionHandler
 
Field Summary
 
Fields inherited from class java.lang.Thread
MAX_PRIORITY, MIN_PRIORITY, NORM_PRIORITY
 
Constructor Summary
RelayServer()
           
 
Method Summary
 void checkAndSent()
          Controlleert of er berichten klaar staan en verstuurd deze.
 java.lang.String getInput()
          Leest de input van geconnecteerde server.
 void run()
          De run start de server, deze wordt aangeroepen met object.start().
 void setOutput(java.lang.String command)
          Schrijf naar de geconnecteerde server.
 void setState(RLYState state)
          Zorgt ervoor dat de status veranderd kan worden.
 
Methods inherited from class java.lang.Thread
activeCount, checkAccess, countStackFrames, currentThread, destroy, dumpStack, enumerate, getAllStackTraces, getContextClassLoader, getDefaultUncaughtExceptionHandler, getId, getName, getPriority, getStackTrace, getState, getThreadGroup, getUncaughtExceptionHandler, holdsLock, interrupt, interrupted, isAlive, isDaemon, isInterrupted, join, join, join, resume, setContextClassLoader, setDaemon, setDefaultUncaughtExceptionHandler, setName, setPriority, setUncaughtExceptionHandler, sleep, sleep, start, stop, stop, suspend, toString, yield
 
Methods inherited from class java.lang.Object
equals, getClass, hashCode, notify, notifyAll, wait, wait, wait
 

Constructor Detail

RelayServer

public RelayServer()
Method Detail

run

public void run()
De run start de server, deze wordt aangeroepen met object.start(). Anders wordt er geen nieuwe thread gestart.

Specified by:
run in interface java.lang.Runnable
Overrides:
run in class java.lang.Thread

checkAndSent

public void checkAndSent()
Controlleert of er berichten klaar staan en verstuurd deze. Berichten worden opgepikt in (relayPath). Er wordt gekeken of de domain van deze berichten bekend is, zo ja wordt er geprobeerd deze berichten door te sturen.


setState

public void setState(RLYState state)
Zorgt ervoor dat de status veranderd kan worden.

Parameters:
state -

setOutput

public void setOutput(java.lang.String command)
Schrijf naar de geconnecteerde server. Wordt gebruikt om commando's door te sturen (HELO, MAIL, etc.)

Parameters:
command -

getInput

public java.lang.String getInput()
Leest de input van geconnecteerde server.

Returns:
input