From dd26342123b4e3593236272d0f8d010fd7235fa4 Mon Sep 17 00:00:00 2001 From: chanywa Date: Wed, 8 Nov 2017 17:50:24 +0900 Subject: [PATCH] [Maps] Modify diposing routines Change-Id: I328cfba3e28370c18e27943175b8ae9e496af047 --- src/Tizen.Maps/Tizen.Maps/Area.cs | 10 +++++++++- src/Tizen.Maps/Tizen.Maps/Geocoordinates.cs | 10 +++++++++- src/Tizen.Maps/Tizen.Maps/GeocoordinatesList.cs | 10 +++++++++- src/Tizen.Maps/Tizen.Maps/MapService.cs | 14 +++++++++++--- src/Tizen.Maps/Tizen.Maps/MapServiceRequest.cs | 9 ++++++++- src/Tizen.Maps/Tizen.Maps/MapView.cs | 12 ++++++++++-- src/Tizen.Maps/Tizen.Maps/Marker.cs | 11 +++++++++-- src/Tizen.Maps/Tizen.Maps/Overlay.cs | 10 +++++++++- src/Tizen.Maps/Tizen.Maps/Place.cs | 11 +++++++++-- src/Tizen.Maps/Tizen.Maps/PlaceAddress.cs | 10 +++++++++- src/Tizen.Maps/Tizen.Maps/PlaceAddressList.cs | 14 +++++++++++++- src/Tizen.Maps/Tizen.Maps/PlaceCategory.cs | 9 ++++++++- src/Tizen.Maps/Tizen.Maps/PlaceFilter.cs | 10 +++++++++- src/Tizen.Maps/Tizen.Maps/PlaceList.cs | 10 +++++++++- src/Tizen.Maps/Tizen.Maps/Polygon.cs | 12 ++++++++++-- src/Tizen.Maps/Tizen.Maps/Polyline.cs | 12 ++++++++++-- src/Tizen.Maps/Tizen.Maps/Route.cs | 10 +++++++++- src/Tizen.Maps/Tizen.Maps/SearchPreference.cs | 10 +++++++++- 18 files changed, 169 insertions(+), 25 deletions(-) diff --git a/src/Tizen.Maps/Tizen.Maps/Area.cs b/src/Tizen.Maps/Tizen.Maps/Area.cs index 94a5a20..135414c 100755 --- a/src/Tizen.Maps/Tizen.Maps/Area.cs +++ b/src/Tizen.Maps/Tizen.Maps/Area.cs @@ -59,6 +59,14 @@ namespace Tizen.Maps handle = nativeHandle; } + /// + /// Destroy the Area object. + /// + ~Area() + { + Dispose(false); + } + #region IDisposable Support private bool _disposedValue = false; @@ -71,7 +79,7 @@ namespace Tizen.Maps { if (!_disposedValue) { - handle.Dispose(); + handle?.Dispose(); _disposedValue = true; } } diff --git a/src/Tizen.Maps/Tizen.Maps/Geocoordinates.cs b/src/Tizen.Maps/Tizen.Maps/Geocoordinates.cs index 59244e1..1bf6e96 100755 --- a/src/Tizen.Maps/Tizen.Maps/Geocoordinates.cs +++ b/src/Tizen.Maps/Tizen.Maps/Geocoordinates.cs @@ -45,6 +45,14 @@ namespace Tizen.Maps } /// + /// Destroy the Geocoordinates object. + /// + ~Geocoordinates() + { + Dispose(false); + } + + /// /// Gets the latitude coordinates. /// /// 3 @@ -90,7 +98,7 @@ namespace Tizen.Maps { if (!_disposedValue) { - handle.Dispose(); + handle?.Dispose(); _disposedValue = true; } } diff --git a/src/Tizen.Maps/Tizen.Maps/GeocoordinatesList.cs b/src/Tizen.Maps/Tizen.Maps/GeocoordinatesList.cs index 86b77aa..59105d9 100755 --- a/src/Tizen.Maps/Tizen.Maps/GeocoordinatesList.cs +++ b/src/Tizen.Maps/Tizen.Maps/GeocoordinatesList.cs @@ -36,6 +36,14 @@ namespace Tizen.Maps } /// + /// Destroy the GeocoordinatesList object. + /// + ~GeocoordinatesList() + { + Dispose(false); + } + + /// /// The iterator for coordinates in this list. /// internal IEnumerable Coordinates @@ -59,7 +67,7 @@ namespace Tizen.Maps { if (!_disposedValue) { - handle.Dispose(); + handle?.Dispose(); _disposedValue = true; } } diff --git a/src/Tizen.Maps/Tizen.Maps/MapService.cs b/src/Tizen.Maps/Tizen.Maps/MapService.cs index dab53f4..a4ee487 100755 --- a/src/Tizen.Maps/Tizen.Maps/MapService.cs +++ b/src/Tizen.Maps/Tizen.Maps/MapService.cs @@ -57,6 +57,14 @@ namespace Tizen.Maps } /// + /// Destroy the MapService object. + /// + ~MapService() + { + Dispose(false); + } + + /// /// Gets the list of available map service providers. /// /// 3 @@ -369,10 +377,10 @@ namespace Tizen.Maps { if (disposing) { - _filter.Dispose(); - _searchPreference.Dispose(); + _filter?.Dispose(); + _searchPreference?.Dispose(); } - handle.Dispose(); + handle?.Dispose(); _disposedValue = true; } } diff --git a/src/Tizen.Maps/Tizen.Maps/MapServiceRequest.cs b/src/Tizen.Maps/Tizen.Maps/MapServiceRequest.cs index 36c66e6..c3750cf 100755 --- a/src/Tizen.Maps/Tizen.Maps/MapServiceRequest.cs +++ b/src/Tizen.Maps/Tizen.Maps/MapServiceRequest.cs @@ -49,6 +49,14 @@ namespace Tizen.Maps } /// + /// Destroy the MapServiceRequest object. + /// + ~MapServiceRequest() + { + Dispose(false); + } + + /// /// Sends a request to the map service provider. /// /// 3 @@ -103,7 +111,6 @@ namespace Tizen.Maps if (disposing) { Cancel(); - _service.Dispose(); } _disposedValue = true; } diff --git a/src/Tizen.Maps/Tizen.Maps/MapView.cs b/src/Tizen.Maps/Tizen.Maps/MapView.cs index c20c060..54638d4 100755 --- a/src/Tizen.Maps/Tizen.Maps/MapView.cs +++ b/src/Tizen.Maps/Tizen.Maps/MapView.cs @@ -71,6 +71,14 @@ namespace Tizen.Maps } /// + /// Destroy the MapView object. + /// + ~MapView() + { + Dispose(false); + } + + /// /// Adds or removes event handlers to deliver a scrolled gesture event. /// /// Event handlers to get a scrolled gesture event. @@ -764,9 +772,9 @@ namespace Tizen.Maps { if (disposing) { - _service.Dispose(); + _handleToObjectTable?.Clear(); } - handle.Dispose(); + handle?.Dispose(); _disposedValue = true; } } diff --git a/src/Tizen.Maps/Tizen.Maps/Marker.cs b/src/Tizen.Maps/Tizen.Maps/Marker.cs index 91ae93a..54c6260 100755 --- a/src/Tizen.Maps/Tizen.Maps/Marker.cs +++ b/src/Tizen.Maps/Tizen.Maps/Marker.cs @@ -38,6 +38,14 @@ namespace Tizen.Maps } /// + /// Destroy the Marker object. + /// + ~Marker() + { + Dispose(false); + } + + /// /// Gets or sets the clicked event handlers. /// /// 3 @@ -169,12 +177,11 @@ namespace Tizen.Maps /// Performs application-defined tasks associated with freeing, releasing, or resetting unmanaged resources. /// /// If true, managed and unmanaged resources can be disposed, otherwise only unmanaged resources can be disposed. - /// 3 protected virtual void Dispose(bool disposing) { if (!_disposedValue) { - handle.Dispose(); + handle?.Dispose(); _disposedValue = true; } } diff --git a/src/Tizen.Maps/Tizen.Maps/Overlay.cs b/src/Tizen.Maps/Tizen.Maps/Overlay.cs index d1551c3..2ce79ae 100755 --- a/src/Tizen.Maps/Tizen.Maps/Overlay.cs +++ b/src/Tizen.Maps/Tizen.Maps/Overlay.cs @@ -50,6 +50,14 @@ namespace Tizen.Maps } /// + /// Destroy the Overlay object. + /// + ~Overlay() + { + Dispose(false); + } + + /// /// Gets or sets the visibility of an overlay map object. /// /// 3 @@ -137,7 +145,7 @@ namespace Tizen.Maps { if (!_disposedValue) { - handle.Dispose(); + handle?.Dispose(); _disposedValue = true; } } diff --git a/src/Tizen.Maps/Tizen.Maps/Place.cs b/src/Tizen.Maps/Tizen.Maps/Place.cs index 1b0ae6e..25714f9 100755 --- a/src/Tizen.Maps/Tizen.Maps/Place.cs +++ b/src/Tizen.Maps/Tizen.Maps/Place.cs @@ -33,6 +33,14 @@ namespace Tizen.Maps } /// + /// Destroy the Place object. + /// + ~Place() + { + Dispose(false); + } + + /// /// Gets an ID string for the place. /// /// 3 @@ -245,12 +253,11 @@ namespace Tizen.Maps /// Performs application-defined tasks associated with freeing, releasing, or resetting unmanaged resources. /// /// If true, managed and unmanaged resources can be disposed, otherwise only unmanaged resources can be disposed. - /// 3 protected virtual void Dispose(bool disposing) { if (!_disposedValue) { - handle.Dispose(); + handle?.Dispose(); _disposedValue = true; } } diff --git a/src/Tizen.Maps/Tizen.Maps/PlaceAddress.cs b/src/Tizen.Maps/Tizen.Maps/PlaceAddress.cs index 05df11b..704ee95 100755 --- a/src/Tizen.Maps/Tizen.Maps/PlaceAddress.cs +++ b/src/Tizen.Maps/Tizen.Maps/PlaceAddress.cs @@ -43,6 +43,14 @@ namespace Tizen.Maps } /// + /// Destroy the PlaceAddress object. + /// + ~PlaceAddress() + { + Dispose(false); + } + + /// /// Gets a building number for this address. /// /// 3 @@ -224,7 +232,7 @@ namespace Tizen.Maps { if (!_disposedValue) { - handle.Dispose(); + handle?.Dispose(); _disposedValue = true; } } diff --git a/src/Tizen.Maps/Tizen.Maps/PlaceAddressList.cs b/src/Tizen.Maps/Tizen.Maps/PlaceAddressList.cs index 1c7a89e..80c6e52 100755 --- a/src/Tizen.Maps/Tizen.Maps/PlaceAddressList.cs +++ b/src/Tizen.Maps/Tizen.Maps/PlaceAddressList.cs @@ -43,6 +43,14 @@ namespace Tizen.Maps } /// + /// Destroy the PlaceAddressList object. + /// + ~PlaceAddressList() + { + Dispose(false); + } + + /// /// Gets an iterator for addresses in this list. /// public IEnumerable Addresses @@ -69,7 +77,11 @@ namespace Tizen.Maps { if (!_disposedValue) { - handle.Dispose(); + if (disposing) + { + _list?.Clear(); + } + handle?.Dispose(); _disposedValue = true; } } diff --git a/src/Tizen.Maps/Tizen.Maps/PlaceCategory.cs b/src/Tizen.Maps/Tizen.Maps/PlaceCategory.cs index 9645609..8c1d2cb 100755 --- a/src/Tizen.Maps/Tizen.Maps/PlaceCategory.cs +++ b/src/Tizen.Maps/Tizen.Maps/PlaceCategory.cs @@ -41,6 +41,13 @@ namespace Tizen.Maps handle = nativeHandle; } + /// + /// Destroy the PlaceCategory object. + /// + ~PlaceCategory() + { + Dispose(false); + } /// /// Gets or sets an ID for this category. @@ -94,7 +101,7 @@ namespace Tizen.Maps { if (!_disposedValue) { - handle.Dispose(); + handle?.Dispose(); _disposedValue = true; } } diff --git a/src/Tizen.Maps/Tizen.Maps/PlaceFilter.cs b/src/Tizen.Maps/Tizen.Maps/PlaceFilter.cs index 6501c58..023a80f 100755 --- a/src/Tizen.Maps/Tizen.Maps/PlaceFilter.cs +++ b/src/Tizen.Maps/Tizen.Maps/PlaceFilter.cs @@ -37,6 +37,14 @@ namespace Tizen.Maps } /// + /// Destroy the PlaceFilter object. + /// + ~PlaceFilter() + { + Dispose(false); + } + + /// /// Gets or sets a free-formed address string for this place filter. /// /// 3 @@ -121,7 +129,7 @@ namespace Tizen.Maps { if (!_disposedValue) { - handle.Dispose(); + handle?.Dispose(); _disposedValue = true; } } diff --git a/src/Tizen.Maps/Tizen.Maps/PlaceList.cs b/src/Tizen.Maps/Tizen.Maps/PlaceList.cs index c457b1e..de5a51f 100755 --- a/src/Tizen.Maps/Tizen.Maps/PlaceList.cs +++ b/src/Tizen.Maps/Tizen.Maps/PlaceList.cs @@ -33,6 +33,14 @@ namespace Tizen.Maps } /// + /// Destroy the PlaceList object. + /// + ~PlaceList() + { + Dispose(false); + } + + /// /// Gets an iterator for the addresses in this list. /// public IEnumerable Places @@ -59,7 +67,7 @@ namespace Tizen.Maps { if (!_disposedValue) { - handle.Dispose(); + handle?.Dispose(); _disposedValue = true; } } diff --git a/src/Tizen.Maps/Tizen.Maps/Polygon.cs b/src/Tizen.Maps/Tizen.Maps/Polygon.cs index 599dd8e..67a606d 100755 --- a/src/Tizen.Maps/Tizen.Maps/Polygon.cs +++ b/src/Tizen.Maps/Tizen.Maps/Polygon.cs @@ -51,6 +51,14 @@ namespace Tizen.Maps } /// + /// Destroy the Polygon object. + /// + ~Polygon() + { + Dispose(false); + } + + /// /// Adds or removes the clicked event handlers. /// /// 3 @@ -138,9 +146,9 @@ namespace Tizen.Maps { if (disposing) { - _coordinateList.Clear(); + _coordinateList?.Clear(); } - handle.Dispose(); + handle?.Dispose(); _disposedValue = true; } } diff --git a/src/Tizen.Maps/Tizen.Maps/Polyline.cs b/src/Tizen.Maps/Tizen.Maps/Polyline.cs index 918a94f..79f9b3a 100755 --- a/src/Tizen.Maps/Tizen.Maps/Polyline.cs +++ b/src/Tizen.Maps/Tizen.Maps/Polyline.cs @@ -52,6 +52,14 @@ namespace Tizen.Maps } /// + /// Destroy the Polyline object. + /// + ~Polyline() + { + Dispose(false); + } + + /// /// Adds or removes the clicked event handlers. /// /// 3 @@ -155,9 +163,9 @@ namespace Tizen.Maps { if (disposing) { - _coordinateList.Clear(); + _coordinateList?.Clear(); } - handle.Dispose(); + handle?.Dispose(); _disposedValue = true; } } diff --git a/src/Tizen.Maps/Tizen.Maps/Route.cs b/src/Tizen.Maps/Tizen.Maps/Route.cs index 799a70b..c0312d6 100755 --- a/src/Tizen.Maps/Tizen.Maps/Route.cs +++ b/src/Tizen.Maps/Tizen.Maps/Route.cs @@ -34,6 +34,14 @@ namespace Tizen.Maps } /// + /// Destroy the Route object. + /// + ~Route() + { + Dispose(false); + } + + /// /// Gets an instance of object representing destination coordinates for this route. /// /// 3 @@ -168,7 +176,7 @@ namespace Tizen.Maps { if (!_disposedValue) { - handle.Dispose(); + handle?.Dispose(); _disposedValue = true; } } diff --git a/src/Tizen.Maps/Tizen.Maps/SearchPreference.cs b/src/Tizen.Maps/Tizen.Maps/SearchPreference.cs index e751ccf..4dd5435 100755 --- a/src/Tizen.Maps/Tizen.Maps/SearchPreference.cs +++ b/src/Tizen.Maps/Tizen.Maps/SearchPreference.cs @@ -46,6 +46,14 @@ namespace Tizen.Maps } /// + /// Destroy the SearchPreference object. + /// + ~SearchPreference() + { + Dispose(false); + } + + /// /// Gets or sets a preferred language. /// /// 3 @@ -240,7 +248,7 @@ namespace Tizen.Maps { if (!_disposedValue) { - handle.Dispose(); + handle?.Dispose(); _disposedValue = true; } } -- 2.7.4