diff --git a/CHANGELOG b/CHANGELOG
index ef0aee7..5f72f57 100644
--- a/CHANGELOG
+++ b/CHANGELOG
@@ -5,6 +5,7 @@
* Add setting model to code
* #19 grid automatisch generieren
### Bugfixes
+* Add Correct Dispose Handling
### Changes
* Refactoring of all JS
* Make only one request per second instead of four per AJAX
diff --git a/Lora-Map/Lora-Map.csproj b/Lora-Map/Lora-Map.csproj
index c086843..4b6192c 100644
--- a/Lora-Map/Lora-Map.csproj
+++ b/Lora-Map/Lora-Map.csproj
@@ -53,6 +53,7 @@
+
diff --git a/Lora-Map/Model/WeatherWarnings.cs b/Lora-Map/Model/WeatherWarnings.cs
index 0dbc7dc..2956ce3 100644
--- a/Lora-Map/Model/WeatherWarnings.cs
+++ b/Lora-Map/Model/WeatherWarnings.cs
@@ -14,5 +14,8 @@ namespace Fraunhofer.Fit.IoT.LoraMap.Model {
private void StartBackgroundThread() {
}
+
+ internal void Dispose() {
+ }
}
}
diff --git a/Lora-Map/Program.cs b/Lora-Map/Program.cs
index 648a4c6..c3cfb1d 100644
--- a/Lora-Map/Program.cs
+++ b/Lora-Map/Program.cs
@@ -9,22 +9,19 @@ namespace Fraunhofer.Fit.IoT.LoraMap {
InIReader.SetSearchPath(new List() { "/etc/loramap", Environment.GetFolderPath(Environment.SpecialFolder.ApplicationData) + "\\loramap" });
if (!InIReader.ConfigExist("settings")) {
Helper.WriteError("settings.ini not found!");
- Console.ReadLine();
+ _ = Console.ReadLine();
return;
}
if(!InIReader.ConfigExist("requests")) {
Helper.WriteError("requests.ini not found!");
- Console.ReadLine();
+ _ = Console.ReadLine();
return;
}
InIReader ini = InIReader.GetInstance("settings");
Dictionary backenddata = ini.GetSection("mqtt");
backenddata.Add("topic", "lora/#;camera/#");
ADataBackend b = (ADataBackend)ABackend.GetInstance(backenddata, ABackend.BackendType.Data);
- new Server(b, ini.GetSection("webserver"), InIReader.GetInstance("requests"));
- while(true) {
- System.Threading.Thread.Sleep(1000);
- }
+ _ = new Server(b, ini.GetSection("webserver"), InIReader.GetInstance("requests"));
}
}
}
diff --git a/Lora-Map/Server.cs b/Lora-Map/Server.cs
index ef008b0..405ddf9 100644
--- a/Lora-Map/Server.cs
+++ b/Lora-Map/Server.cs
@@ -35,6 +35,8 @@ namespace Fraunhofer.Fit.IoT.LoraMap {
this.weather = new WeatherWarnings(this.settings);
this.admin.SettingsUpdate += this.settings.AdminModelUpdateSettings;
this.StartListen();
+ this.WaitForShutdown();
+ this.Dispose();
}
private void AdminModelUpdateNames(Object sender, EventArgs e) {
@@ -47,7 +49,7 @@ namespace Fraunhofer.Fit.IoT.LoraMap {
private void CheckJsonFiles() {
if(!Directory.Exists("json")) {
- Directory.CreateDirectory("json");
+ _ = Directory.CreateDirectory("json");
}
if(!File.Exists("json/names.json")) {
File.WriteAllText("json/names.json", "{}");
@@ -190,5 +192,10 @@ namespace Fraunhofer.Fit.IoT.LoraMap {
}
return ret;
}
+
+ public override void Dispose() {
+ this.weather.Dispose();
+ base.Dispose();
+ }
}
}
\ No newline at end of file