[SystemInfo] Unregister all listeners in destructor.
authorTomasz Marciniak <t.marciniak@samsung.com>
Mon, 18 May 2015 07:11:50 +0000 (09:11 +0200)
committerTomasz Marciniak <t.marciniak@samsung.com>
Mon, 18 May 2015 07:11:50 +0000 (09:11 +0200)
[Verification] Code compiles without errors.
SystemInfo_addPropertyValueChangeListener_with_options passes.

Change-Id: Ibe408f0a3288c1df4035f80088c1e75d1bf51c6f
Signed-off-by: Tomasz Marciniak <t.marciniak@samsung.com>
src/systeminfo/systeminfo_instance.cc

index 3eced3ea98173b0dc8b4fd0cd9bf6f8a56be2457..acf3af9199d1ca0afd0b066f65cd74b10ea23f6d 100644 (file)
@@ -129,6 +129,21 @@ SysteminfoInstance::SysteminfoInstance() {
 }
 
 SysteminfoInstance::~SysteminfoInstance() {
+  LoggerD("Entered");
+  //TODO Below solution is temporary
+  //Implementation should be changed that each SysteminfoInstance object
+  //should have own SystemInfoListeners manager
+  SysteminfoUtils::UnregisterBatteryListener();
+  SysteminfoUtils::UnregisterCpuListener();
+  SysteminfoUtils::UnregisterStorageListener();
+  SysteminfoUtils::UnregisterDisplayListener();
+  SysteminfoUtils::UnregisterDeviceOrientationListener();
+  SysteminfoUtils::UnregisterLocaleListener();
+  SysteminfoUtils::UnregisterNetworkListener();
+  SysteminfoUtils::UnregisterWifiNetworkListener();
+  SysteminfoUtils::UnregisterCellularNetworkListener();
+  SysteminfoUtils::UnregisterPeripheralListener();
+  SysteminfoUtils::UnregisterMemoryListener();
 }
 
 void SysteminfoInstance::GetCapabilities(const picojson::value& args, picojson::object& out) {