/// <summary> /// Disposes the map object /// </summary> public void Dispose() { _disposing = true; AbortFetch(); if (DisposeLayersOnDispose) { if (Layers != null) { foreach (var disposable in Layers.OfType <IDisposable>()) { disposable.Dispose(); } } if (BackgroundLayer != null) { foreach (var disposable in BackgroundLayer.OfType <IDisposable>()) { disposable.Dispose(); } } } Layers?.Clear(); BackgroundLayer?.Clear(); }
/// <summary> /// Aborts fetching opération. /// </summary> void AbortFetch() { if (Layers != null) { foreach (var asyncFetcher in Layers.OfType <IAsyncDataFetcher>()) { asyncFetcher.AbortFetch(); } } if (BackgroundLayer != null) { foreach (var asyncFetcher in BackgroundLayer.OfType <IAsyncDataFetcher>()) { asyncFetcher.AbortFetch(); } } }