Esempio n. 1
0
        /// <summary>
        /// Execute the disposal.
        /// </summary>
        /// <param name="disposing">True if called from <see cref="Dispose()"/>, false otherwise.</param>
        protected virtual void Dispose(bool disposing)
        {
            if (_disposed)
            {
                return;
            }

            if (disposing)
            {
                Stop();
                _cancellationSource.Dispose();
            }

            ClearServices();

            var removed = DicomServer.Unregister(this);

            if (!removed)
            {
                Logger.Warn(
                    "Could not unregister DICOM server on port {0}, either because never registered or because has already been unregistered once.",
                    Port);
            }

            _disposed = true;
        }