/// <summary> /// Performs an actions need to be done for finalization of the data provider. /// <para> /// Holders can provide various scenarious of disposing resources /// for spatial data providers of the same class. /// </para> /// </summary> /// <param name="providerName">A name of the spatial data provider</param> /// <param name="provider">A provider instance for finalization</param> public void ReleaseProviderIfNeeded(string providerName, ISpatialDataProvider provider) { lock (_syncRoot) { foreach (SpatialDataProviderHolderBase holder in _registeredProviders) { if (holder.Name == providerName) { holder.ReleaseProviderIfNeeded(provider); return; } } } }
/// <summary> /// Выполняет процедуру финализации для пространственного поставщика данных. /// Эта реализация ничего не делает. /// </summary> /// <param name="provider">Экземпляр провайдера Пространственных данных</param> public override void ReleaseProviderIfNeeded(ISpatialDataProvider provider) { }
/// <summary> /// Performs an actions need to be done for finalization of the data provider. /// <para> /// Holders can provide various scenarious of disposing resources /// for spatial data providers of the same class. /// </para> /// </summary> /// <param name="providerName">A name of the spatial data provider</param> /// <param name="provider">A provider instance for finalization</param> public void ReleaseProviderIfNeeded(string providerName, ISpatialDataProvider provider) { lock (_syncRoot) { foreach (SpatialDataProviderHolderBase holder in _registeredProviders) if (holder.Name == providerName) { holder.ReleaseProviderIfNeeded(provider); return; } } }
/// <summary> /// Performs a finalization procedure for the spatial data provider, if needed. /// </summary> /// <param name="provider">Spatial data provider instance</param> public abstract void ReleaseProviderIfNeeded(ISpatialDataProvider provider);
/// <summary> /// Performs a finalization procedure for the spatial data provider. /// This implementation do nothing. /// </summary> /// <param name="provider">Spatial data provider instance</param> public override void ReleaseProviderIfNeeded(ISpatialDataProvider provider) { }