Code:
/ DotNET / DotNET / 8.0 / untmp / whidbey / REDBITS / ndp / fx / src / Net / System / Net / HttpListenerPrefixCollection.cs / 1 / HttpListenerPrefixCollection.cs
//------------------------------------------------------------------------------ //// Copyright (c) Microsoft Corporation. All rights reserved. // //----------------------------------------------------------------------------- namespace System.Net { using System; using System.Collections; using System.Collections.Generic; internal class ListenerPrefixEnumerator:IEnumerator{ IEnumerator enumerator; internal ListenerPrefixEnumerator(IEnumerator enumerator){ this.enumerator = enumerator; } public string Current{ get{ return (string)enumerator.Current; } } public bool MoveNext(){ return enumerator.MoveNext(); } public void Dispose(){ } void System.Collections.IEnumerator.Reset(){ enumerator.Reset(); } object System.Collections.IEnumerator.Current{ get{ return enumerator.Current; } } } public class HttpListenerPrefixCollection : ICollection { private HttpListener m_HttpListener; internal HttpListenerPrefixCollection(HttpListener listener) { m_HttpListener = listener; } public void CopyTo(Array array, int offset) { m_HttpListener.CheckDisposed(); if (Count>array.Length) { throw new ArgumentOutOfRangeException("array", SR.GetString(SR.net_array_too_small)); } if (offset+Count>array.Length) { throw new ArgumentOutOfRangeException("offset"); } int index = 0; foreach (string uriPrefix in m_HttpListener.m_UriPrefixes.Keys) { array.SetValue(uriPrefix, offset + index++); } } public void CopyTo(string[] array, int offset) { m_HttpListener.CheckDisposed(); if (Count>array.Length) { throw new ArgumentOutOfRangeException("array", SR.GetString(SR.net_array_too_small)); } if (offset+Count>array.Length) { throw new ArgumentOutOfRangeException("offset"); } int index = 0; foreach (string uriPrefix in m_HttpListener.m_UriPrefixes.Keys) { array[offset + index++] = uriPrefix; } } public int Count { get { return m_HttpListener.m_UriPrefixes.Count; } } public bool IsSynchronized { get { return false; } } public bool IsReadOnly { get { return false; } } public void Add(string uriPrefix) { m_HttpListener.AddPrefix(uriPrefix); } public bool Contains(string uriPrefix) { return m_HttpListener.m_UriPrefixes.Contains(uriPrefix); } System.Collections.IEnumerator System.Collections.IEnumerable.GetEnumerator() { return null; } public IEnumerator GetEnumerator() { return new ListenerPrefixEnumerator(m_HttpListener.m_UriPrefixes.Keys.GetEnumerator()); } public bool Remove(string uriPrefix) { return m_HttpListener.RemovePrefix(uriPrefix); } public void Clear() { m_HttpListener.RemoveAll(true); } } }
Link Menu
This book is available now!
Buy at Amazon US or
Buy at Amazon UK
- updatecommandorderer.cs
- ImpersonationContext.cs
- DataList.cs
- MonitorWrapper.cs
- PropertyInformationCollection.cs
- httpapplicationstate.cs
- TypedTableBase.cs
- SqlDependencyListener.cs
- ComponentSerializationService.cs
- Knowncolors.cs
- Pen.cs
- ToolStripPanelSelectionBehavior.cs
- FrameAutomationPeer.cs
- EventData.cs
- PowerStatus.cs
- SqlConnectionFactory.cs
- AmbientEnvironment.cs
- ViewStateModeByIdAttribute.cs
- CustomValidator.cs
- WpfKnownMember.cs
- SqlRewriteScalarSubqueries.cs
- BaseProcessProtocolHandler.cs
- HttpModuleActionCollection.cs
- BufferBuilder.cs
- InvokeWebService.cs
- SplitContainer.cs
- DefaultObjectMappingItemCollection.cs
- ConfigurationSectionGroup.cs
- AuthenticateEventArgs.cs
- HtmlInputFile.cs
- Helpers.cs
- ContainerUtilities.cs
- Message.cs
- Binding.cs
- HttpModuleCollection.cs
- DataSourceControl.cs
- AdditionalEntityFunctions.cs
- WindowsBrush.cs
- TaiwanLunisolarCalendar.cs
- _ChunkParse.cs
- RuntimeComponentFilter.cs
- InternalEnumValidator.cs
- CustomBindingElement.cs
- QueryContext.cs
- QueryStringConverter.cs
- PrincipalPermission.cs
- StrokeCollection2.cs
- Debug.cs
- DataListCommandEventArgs.cs
- SqlGenericUtil.cs
- IconConverter.cs
- Int64AnimationBase.cs
- XamlDesignerSerializationManager.cs
- XmlSchemaValidator.cs
- QuaternionAnimationBase.cs
- DataBinding.cs
- _NetRes.cs
- Transform.cs
- DescendantQuery.cs
- HtmlControlAdapter.cs
- ImplicitInputBrush.cs
- TagPrefixCollection.cs
- SqlError.cs
- TimeoutException.cs
- DynamicResourceExtension.cs
- XmlEntity.cs
- ImageButton.cs
- ServiceDescription.cs
- ObjectContext.cs
- InputMethod.cs
- SchemaNamespaceManager.cs
- EncoderFallback.cs
- SafeSecurityHandles.cs
- TileBrush.cs
- RegexGroup.cs
- SqlServer2KCompatibilityAnnotation.cs
- CancelRequestedQuery.cs
- DataGridViewBand.cs
- AuthenticationModulesSection.cs
- WithParamAction.cs
- DrawListViewColumnHeaderEventArgs.cs
- SystemKeyConverter.cs
- DbConnectionStringCommon.cs
- HtmlTitle.cs
- SqlAliaser.cs
- MTConfigUtil.cs
- PropertyItem.cs
- PathStreamGeometryContext.cs
- MailAddressCollection.cs
- ProcessRequestArgs.cs
- HttpResponse.cs
- ToolStripDropDownClosingEventArgs.cs
- DataGridViewTopLeftHeaderCell.cs
- EpmContentDeSerializer.cs
- MarginsConverter.cs
- SHA384Cng.cs
- LogStore.cs
- FilteredDataSetHelper.cs
- CompositeFontInfo.cs
- KeyboardNavigation.cs