Code:
/ Dotnetfx_Vista_SP2 / Dotnetfx_Vista_SP2 / 8.0.50727.4016 / DEVDIV / depot / DevDiv / releases / whidbey / NetFxQFE / ndp / fx / src / Net / System / Net / Mail / LinkedResourceCollection.cs / 1 / LinkedResourceCollection.cs
using System; using System.Collections.ObjectModel; namespace System.Net.Mail { public sealed class LinkedResourceCollection : Collection, IDisposable { bool disposed = false; internal LinkedResourceCollection() { } public void Dispose() { if(disposed){ return; } foreach (LinkedResource resource in this) { resource.Dispose(); } Clear(); disposed = true; } protected override void RemoveItem(int index){ if (disposed) { throw new ObjectDisposedException(this.GetType().FullName); } base.RemoveItem(index); } protected override void ClearItems(){ if (disposed) { throw new ObjectDisposedException(this.GetType().FullName); } base.ClearItems(); } protected override void SetItem(int index, LinkedResource item){ if (disposed) { throw new ObjectDisposedException(this.GetType().FullName); } if(item==null) { throw new ArgumentNullException("item"); } base.SetItem(index,item); } protected override void InsertItem(int index, LinkedResource item){ if (disposed) { throw new ObjectDisposedException(this.GetType().FullName); } if(item==null){ throw new ArgumentNullException("item"); } base.InsertItem(index,item); } } } // File provided for Reference Use Only by Microsoft Corporation (c) 2007. // Copyright (c) Microsoft Corporation. All rights reserved. using System; using System.Collections.ObjectModel; namespace System.Net.Mail { public sealed class LinkedResourceCollection : Collection , IDisposable { bool disposed = false; internal LinkedResourceCollection() { } public void Dispose() { if(disposed){ return; } foreach (LinkedResource resource in this) { resource.Dispose(); } Clear(); disposed = true; } protected override void RemoveItem(int index){ if (disposed) { throw new ObjectDisposedException(this.GetType().FullName); } base.RemoveItem(index); } protected override void ClearItems(){ if (disposed) { throw new ObjectDisposedException(this.GetType().FullName); } base.ClearItems(); } protected override void SetItem(int index, LinkedResource item){ if (disposed) { throw new ObjectDisposedException(this.GetType().FullName); } if(item==null) { throw new ArgumentNullException("item"); } base.SetItem(index,item); } protected override void InsertItem(int index, LinkedResource item){ if (disposed) { throw new ObjectDisposedException(this.GetType().FullName); } if(item==null){ throw new ArgumentNullException("item"); } base.InsertItem(index,item); } } } // File provided for Reference Use Only by Microsoft Corporation (c) 2007. // Copyright (c) Microsoft Corporation. All rights reserved.
Link Menu
This book is available now!
Buy at Amazon US or
Buy at Amazon UK
- HttpCacheParams.cs
- File.cs
- ConfigXmlElement.cs
- ServiceBusyException.cs
- StoreItemCollection.Loader.cs
- HttpHandlersSection.cs
- InputBuffer.cs
- CloudCollection.cs
- TrackingAnnotationCollection.cs
- COM2Properties.cs
- WebConfigurationHostFileChange.cs
- CultureInfo.cs
- RegexCapture.cs
- DataGridItemAttachedStorage.cs
- DbException.cs
- RSAOAEPKeyExchangeDeformatter.cs
- IsolatedStorageFileStream.cs
- SByteStorage.cs
- NativeRecognizer.cs
- ReadOnlyTernaryTree.cs
- ExpressionBindings.cs
- GeneralTransform3D.cs
- XmlNotation.cs
- DataGridRowClipboardEventArgs.cs
- TextBlockAutomationPeer.cs
- FixedFlowMap.cs
- ListViewTableRow.cs
- ImageSource.cs
- latinshape.cs
- ToolStripContextMenu.cs
- ShapeTypeface.cs
- IItemProperties.cs
- ImageDrawing.cs
- PageAdapter.cs
- SelectionItemPatternIdentifiers.cs
- StringDictionaryWithComparer.cs
- MetadataItem_Static.cs
- DisplayInformation.cs
- DeobfuscatingStream.cs
- HttpValueCollection.cs
- PropagatorResult.cs
- DefaultValidator.cs
- RectAnimation.cs
- StylusPointPropertyId.cs
- DesignTimeTemplateParser.cs
- WsatServiceAddress.cs
- GPRECTF.cs
- ContractValidationHelper.cs
- TextDecorationCollectionConverter.cs
- GroupQuery.cs
- _HeaderInfo.cs
- UrlAuthFailedErrorFormatter.cs
- NewArray.cs
- WebFormsRootDesigner.cs
- CodeCommentStatementCollection.cs
- MetadataWorkspace.cs
- WindowsNonControl.cs
- Hash.cs
- OleDbException.cs
- QuaternionKeyFrameCollection.cs
- ApplicationSecurityInfo.cs
- AsymmetricKeyExchangeFormatter.cs
- EventManager.cs
- GrowingArray.cs
- PipelineModuleStepContainer.cs
- DesignerAttributeInfo.cs
- XPathNodeInfoAtom.cs
- SafeFileMappingHandle.cs
- ErrorsHelper.cs
- BufferedConnection.cs
- CodeArrayIndexerExpression.cs
- CollaborationHelperFunctions.cs
- InnerItemCollectionView.cs
- ButtonFieldBase.cs
- ProtectedConfiguration.cs
- HtmlEmptyTagControlBuilder.cs
- QueryStoreStatusRequest.cs
- ExpressionDumper.cs
- RoutedPropertyChangedEventArgs.cs
- Configuration.cs
- _Semaphore.cs
- ImageSource.cs
- PrimitiveSchema.cs
- DataErrorValidationRule.cs
- BackgroundWorker.cs
- EventPrivateKey.cs
- XmlSerializerSection.cs
- Wildcard.cs
- Quad.cs
- Cursor.cs
- TypeSystemHelpers.cs
- TakeQueryOptionExpression.cs
- PrivilegedConfigurationManager.cs
- RadioButtonList.cs
- ExternalFile.cs
- MetadataItemCollectionFactory.cs
- TableLayoutPanelDesigner.cs
- RbTree.cs
- ClientUriBehavior.cs
- WarningException.cs