define member variables with capital letters

This commit is contained in:
Sven Czarnian
2021-10-13 12:52:29 +02:00
parent 9d69a60396
commit 1e043e2765
15 changed files with 229 additions and 223 deletions

View File

@@ -19,8 +19,8 @@ from datetime import datetime as dt
# - third element of wind data tuple: wind speed (KT)
class DwdCrawler():
def __init__(self):
self.updateTime = None
self.windData = None
self.UpdateTime = None
self.WindData = None
def parseGaforAreas(areas : str):
areas = areas.replace(':', '')
@@ -125,8 +125,8 @@ class DwdCrawler():
return nextUpdate, windInformation
def receiveWindData(self):
self.updateTime = None
self.windData = None
self.UpdateTime = None
self.WindData = None
with urllib.request.urlopen('https://www.dwd.de/DE/fachnutzer/luftfahrt/teaser/luftsportberichte/luftsportberichte_node.html') as site:
data = site.read().decode('utf-8')
@@ -141,17 +141,17 @@ class DwdCrawler():
pages.append('https://www.dwd.de/' + link['href'].split(';')[0])
# receive the wind data
self.updateTime = None
self.windData = []
self.UpdateTime = None
self.WindData = []
for page in pages:
next, wind = self.parseGaforPage(page)
if None != next:
if None == self.updateTime or self.updateTime > next:
self.updateTime = next
self.windData.extend(wind)
if None == self.UpdateTime or self.UpdateTime > next:
self.UpdateTime = next
self.WindData.extend(wind)
# indicate that new wind data is available
if None != self.updateTime:
if None != self.UpdateTime:
return True
else:
return False

View File

@@ -16,20 +16,20 @@ from threading import Thread, _active
class ReceiverThread(Thread):
def __init__(self, socket, aman):
Thread.__init__(self)
self.socket = socket
self.aman = aman
self.Socket = socket
self.AMAN = aman
def run(self):
while True:
try:
msg = self.socket.recv(zmq.NOBLOCK)
msg = self.Socket.recv(zmq.NOBLOCK)
# parse the received message
report = AircraftReport_pb2.AircraftReport()
report.ParseFromString(msg)
# try to associate the received aircraft to an airport
self.aman.updateAircraftReport(report)
self.AMAN.updateAircraftReport(report)
except zmq.ZMQError as error:
if zmq.EAGAIN == error.errno:
@@ -54,10 +54,10 @@ class ReceiverThread(Thread):
# @brief Receives and sends messages to EuroScope plugins
class Euroscope:
def __init__(self):
self.context = None
self.receiverSocket = None
self.receiverThread = None
self.notificationSocket = None
self.Context = None
self.ReceiverSocket = None
self.ReceiverThread = None
self.NotificationSocket = None
def __del__(self):
self.release()
@@ -65,7 +65,7 @@ class Euroscope:
# @brief Initializes the ZMQ socket
# @param[in] config The server configuration
def acquire(self, configPath : str, config : Server, aman):
self.context = zmq.Context()
self.Context = zmq.Context()
# find the key directories
serverKeyPath = os.path.join(os.path.join(configPath, 'keys'), 'server')
@@ -88,34 +88,36 @@ class Euroscope:
keyPair = zmq.auth.load_certificate(keyPairPath[0])
# initialize the receiver
self.receiverSocket = zmq.Socket(self.context, zmq.SUB)
self.receiverSocket.setsockopt(zmq.CURVE_PUBLICKEY, keyPair[0])
self.receiverSocket.setsockopt(zmq.CURVE_SECRETKEY, keyPair[1])
self.receiverSocket.setsockopt(zmq.CURVE_SERVER, True)
self.receiverSocket.bind('tcp://' + config.Address + ':' + str(config.PortReceiver))
self.receiverSocket.setsockopt(zmq.SUBSCRIBE, b'')
self.receiverThread = ReceiverThread(self.receiverSocket, aman)
self.receiverThread.start()
self.ReceiverSocket = zmq.Socket(self.Context, zmq.SUB)
self.ReceiverSocket.setsockopt(zmq.CURVE_PUBLICKEY, keyPair[0])
self.ReceiverSocket.setsockopt(zmq.CURVE_SECRETKEY, keyPair[1])
self.ReceiverSocket.setsockopt(zmq.CURVE_SERVER, True)
self.ReceiverSocket.bind('tcp://' + config.Address + ':' + str(config.PortReceiver))
self.ReceiverSocket.setsockopt(zmq.SUBSCRIBE, b'')
self.ReceiverThread = ReceiverThread(self.ReceiverSocket, aman)
self.ReceiverThread.start()
print('Listening to tcp://' + config.Address + ':' + str(config.PortReceiver))
# initialize the notification
self.notificationSocket = zmq.Socket(self.context, zmq.PUB)
self.notificationSocket.setsockopt(zmq.CURVE_PUBLICKEY, keyPair[0])
self.notificationSocket.setsockopt(zmq.CURVE_SECRETKEY, keyPair[1])
self.notificationSocket.setsockopt(zmq.CURVE_SERVER, True)
self.notificationSocket.bind('tcp://' + config.Address + ':' + str(config.PortNotification))
self.NotificationSocket = zmq.Socket(self.Context, zmq.PUB)
self.NotificationSocket.setsockopt(zmq.CURVE_PUBLICKEY, keyPair[0])
self.NotificationSocket.setsockopt(zmq.CURVE_SECRETKEY, keyPair[1])
self.NotificationSocket.setsockopt(zmq.CURVE_SERVER, True)
self.NotificationSocket.bind('tcp://' + config.Address + ':' + str(config.PortNotification))
print('Publishing to tcp://' + config.Address + ':' + str(config.PortNotification))
def release(self):
if None != self.receiverThread:
self.receiverThread.stopThread()
self.receiverThread.join()
self.receiverThread = None
if None != self.ReceiverThread:
self.ReceiverThread.stopThread()
self.ReceiverThread.join()
self.ReceiverThread = None
if None != self.receiverSocket:
self.receiverSocket.close()
self.receiverSocket = None
if None != self.ReceiverSocket:
self.ReceiverSocket.close()
self.ReceiverSocket = None
if None != self.notificationSocket:
self.notificationSocket.close()
self.notificationSocket = None
if None != self.NotificationSocket:
self.NotificationSocket.close()
self.NotificationSocket = None
self.Context = None

View File

@@ -14,19 +14,19 @@ class Weather(Thread):
def __init__(self):
Thread.__init__(self)
self.nextUpdate = None
self.lastUpdateTried = None
self.stopThread = False
self.provider = None
self.NextUpdate = None
self.LastUpdateTried = None
self.StopThread = False
self.Provider = None
def acquire(self, config : aman.config.Weather.Weather):
self.nextUpdate = dt.utcfromtimestamp(int(time.time()))
self.lastUpdateTried = None
self.stopThread = False
self.provider = None
self.NextUpdate = dt.utcfromtimestamp(int(time.time()))
self.LastUpdateTried = None
self.StopThread = False
self.Provider = None
if 'DWD' == config.Provider.upper():
self.provider = DwdCrawler()
self.Provider = DwdCrawler()
else:
sys.stderr.write('Invalid or unknown weather-provider defined')
sys.exit(-1)
@@ -34,7 +34,7 @@ class Weather(Thread):
self.start()
def release(self):
self.stopThread = True
self.StopThread = True
self.join()
def currentClock():
@@ -42,15 +42,15 @@ class Weather(Thread):
return clock
def run(self):
while False == self.stopThread and None != self.provider:
while False == self.StopThread and None != self.Provider:
now = Weather.currentClock()
# check if an update is required
if None != self.provider.updateTime and self.provider.updateTime > now:
if None != self.Provider.UpdateTime and self.Provider.UpdateTime > now:
time.sleep(1)
continue
if None == self.lastUpdateTried or self.lastUpdateTried <= now:
if True == self.provider.receiveWindData():
self.nextUpdate = self.provider.updateTime
if None == self.LastUpdateTried or self.LastUpdateTried <= now:
if True == self.Provider.receiveWindData():
self.NextUpdate = self.Provider.UpdateTime
print('Received new wind data')