Eigene Events erzeugen(FileExistsEvent)
-
Moin, Moin...
Ich habe ein Programm in Java geschrieben, dass in regelmäßigen Abständen(alle 5 Sek.) in einem Verzeichnis nachschaut, ob eine bestimmte Datei vorhanden ist. Findet die Anwendung diese Datei, wird sie verarbeitet.
Bislang habe ich die Anwendung mit der Methode Thread.sleep(5000) für 5 Sek. schlafen gelegt. Dann schaut sie nach der Datei und wird wieder schlafen gelegt, also eine Art von Polling.
Nun möchte ich das Ganze etwas hübscher implementieren. Ich dachte an ein selbstdefiniertes Ereignis(FileExistsEvent), dass die Anwendung erst dann aufweckt, wenn die Datei auch tatsächlich vorhanden ist. Ich habe mich also informiert über EventObject und EventListener. Mir ist aber überhaupt nicht klar, wo das konkrete Ereignis selber(die Datei existiert) definiert und implementiert wird. Irgendeine Instanz muss ja trotzdem nach der Datei schauen, ob sie vorhanden ist oder nicht. Verlagere ich dass Polling also nur? Gibt es eventuell eine einfachere und doch elegantere Lösung?
Danke im voraus...
Ciao...
-
Mir fiele jetzt auch nichts anderes ein, als in kurzen Abständen zu schauen, ob die Datei da ist.
Ich würde dafür eine eigene Klasse schreiben, die von Thread erbt, sowie eine Listener-Schnittstelle. Der Thread sendet dann Nachrichten an eine Klasse, welche diese Schnittstelle implementiert.