Code:
/ WCF / WCF / 3.5.30729.1 / untmp / Orcas / SP / ndp / cdf / src / WCF / ServiceModel / System / ServiceModel / Channels / BindingElementCollection.cs / 1 / BindingElementCollection.cs
//------------------------------------------------------------ // Copyright (c) Microsoft Corporation. All rights reserved. //----------------------------------------------------------- namespace System.ServiceModel.Channels { using System.ServiceModel; using System.ComponentModel; using System.Collections.Generic; using System.Collections.ObjectModel; using System.Runtime.Serialization; public class BindingElementCollection : Collection{ public BindingElementCollection() { } public BindingElementCollection(IEnumerable elements) { if (elements == null) throw DiagnosticUtility.ExceptionUtility.ThrowHelperArgumentNull("elements"); foreach (BindingElement element in elements) { base.Add(element); } } public BindingElementCollection(BindingElement[] elements) { if (elements == null) throw DiagnosticUtility.ExceptionUtility.ThrowHelperArgumentNull("elements"); for (int i = 0; i < elements.Length; i++) { base.Add(elements[i]); } } internal BindingElementCollection(BindingElementCollection elements) { if (elements == null) throw DiagnosticUtility.ExceptionUtility.ThrowHelperArgumentNull("elements"); for (int i = 0; i < elements.Count; i++) { base.Add(elements[i]); } } // returns a new collection with clones of all the elements public BindingElementCollection Clone() { BindingElementCollection result = new BindingElementCollection(); for (int i = 0; i < this.Count; i++) { result.Add(this[i].Clone()); } return result; } public void AddRange(params BindingElement[] elements) { if (elements == null) throw DiagnosticUtility.ExceptionUtility.ThrowHelperArgumentNull("elements"); for (int i = 0; i < elements.Length; i++) { base.Add(elements[i]); } } public bool Contains(Type bindingElementType) { if (bindingElementType == null) throw DiagnosticUtility.ExceptionUtility.ThrowHelperArgumentNull("bindingElementType"); for (int i = 0; i < this.Count; i++) { if (bindingElementType.IsInstanceOfType(this[i])) return true; } return false; } public T Find () { return Find (false); } public T Remove () { return Find (true); } T Find (bool remove) { for (int index = 0; index < this.Count; index++) { if (this[index] is T) { T item = (T)(object)this[index]; if (remove) { RemoveAt(index); } return item; } } return default(T); } public Collection FindAll () { return FindAll (false); } public Collection RemoveAll () { return FindAll (true); } Collection FindAll (bool remove) { Collection collection = new Collection (); for (int index = 0; index < this.Count; index++) { if (this[index] is T) { T item = (T)(object)this[index]; if (remove) { RemoveAt(index); // back up the index so we inspect the new item at this location index--; } collection.Add(item); } } return collection; } protected override void InsertItem(int index, BindingElement item) { if (item == null) throw DiagnosticUtility.ExceptionUtility.ThrowHelperArgumentNull("item"); base.InsertItem(index, item); } protected override void SetItem(int index, BindingElement item) { if (item == null) throw DiagnosticUtility.ExceptionUtility.ThrowHelperArgumentNull("item"); base.SetItem(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
- MouseEvent.cs
- SQLStringStorage.cs
- AudioSignalProblemOccurredEventArgs.cs
- TypeNameConverter.cs
- WmlLiteralTextAdapter.cs
- XmlSchemaAll.cs
- DecoderBestFitFallback.cs
- FunctionParameter.cs
- CacheVirtualItemsEvent.cs
- HttpCachePolicyWrapper.cs
- SqlMetaData.cs
- OleDbDataAdapter.cs
- hresults.cs
- CodeCatchClauseCollection.cs
- BufferedConnection.cs
- RepeatButton.cs
- CompilerGlobalScopeAttribute.cs
- VectorAnimationBase.cs
- Section.cs
- GridViewColumnCollection.cs
- CalendarAutoFormatDialog.cs
- PublisherMembershipCondition.cs
- ConstraintEnumerator.cs
- ColumnHeader.cs
- SafeBitVector32.cs
- NativeActivityFaultContext.cs
- EditorResources.cs
- SelectingProviderEventArgs.cs
- CodeCommentStatement.cs
- DESCryptoServiceProvider.cs
- InfoCardRSAOAEPKeyExchangeFormatter.cs
- TypeName.cs
- DebuggerService.cs
- ViewUtilities.cs
- InstanceDataCollection.cs
- Range.cs
- InputLanguageEventArgs.cs
- Item.cs
- IntSecurity.cs
- PeerObject.cs
- TemplateControl.cs
- SuppressMessageAttribute.cs
- LostFocusEventManager.cs
- FastPropertyAccessor.cs
- Automation.cs
- ListViewItemEventArgs.cs
- RequestCachePolicyConverter.cs
- ButtonBaseAdapter.cs
- FieldBuilder.cs
- AutoSizeComboBox.cs
- DesignTimeTemplateParser.cs
- TimeSpanConverter.cs
- ValueExpressions.cs
- AssemblyInfo.cs
- BorderGapMaskConverter.cs
- IApplicationTrustManager.cs
- XmlSchemaDocumentation.cs
- TemplateBuilder.cs
- MetadataCache.cs
- FormattedTextSymbols.cs
- EdmPropertyAttribute.cs
- TemplateBindingExtension.cs
- ListDesigner.cs
- TextBreakpoint.cs
- PropertyChangedEventManager.cs
- DataTableTypeConverter.cs
- HorizontalAlignConverter.cs
- TreeNode.cs
- AvTraceDetails.cs
- XmlAttributeCollection.cs
- PersonalizableTypeEntry.cs
- AuthenticationModuleElementCollection.cs
- ServiceOperationHelpers.cs
- OrderToken.cs
- RoleManagerModule.cs
- DeploymentExceptionMapper.cs
- NamespaceDecl.cs
- LookupNode.cs
- FixedFindEngine.cs
- Misc.cs
- WsiProfilesElement.cs
- XPathScanner.cs
- WebEventTraceProvider.cs
- AnonymousIdentificationSection.cs
- DtdParser.cs
- PartialCachingControl.cs
- WindowsRegion.cs
- CodeGeneratorOptions.cs
- HttpPostServerProtocol.cs
- ParameterCollection.cs
- UpDownEvent.cs
- GetPageCompletedEventArgs.cs
- ResolveNameEventArgs.cs
- WmfPlaceableFileHeader.cs
- _FixedSizeReader.cs
- ISCIIEncoding.cs
- VirtualPath.cs
- CrossContextChannel.cs
- GridViewUpdateEventArgs.cs
- __Error.cs