yadyn/server/Expirer.py
2007-11-12 11:17:25 +01:00

25 lines
884 B
Python

import threading
import time
class Expirer(threading.Thread):
def __init__(self, entries, eventLifeTime, nullAddress):
threading.Thread.__init__(self)
self.entries = entries
self.eventLifeTime = eventLifeTime
self.nullAddress = nullAddress
self.setDaemon(True)
def run(self):
while True:
print "Expiring ..."
currentTime = int(time.time())
for entry in self.entries.values():
print "Checking ", str(entry)
if entry.lastEventTime != 0 and entry.lastEventTime + self.eventLifeTime < currentTime:
print "Entry %s expired" % entry.dynid
entry.lastEventTime = 0
entry.address = self.nullAddress
print "Set in DNS: %s -> %s" % (entry.name, entry.address)
time.sleep(10)