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
- PasswordTextNavigator.cs
- TriState.cs
- ActivationServices.cs
- DispatchChannelSink.cs
- TailCallAnalyzer.cs
- CheckBoxFlatAdapter.cs
- DataPointer.cs
- ImpersonateTokenRef.cs
- System.Data.OracleClient_BID.cs
- _BasicClient.cs
- QuotedPrintableStream.cs
- ValueSerializerAttribute.cs
- CodeThrowExceptionStatement.cs
- ExtendedPropertyCollection.cs
- CodeParameterDeclarationExpression.cs
- EUCJPEncoding.cs
- ComponentManagerBroker.cs
- linebase.cs
- JsonServiceDocumentSerializer.cs
- Image.cs
- DbDataReader.cs
- WriterOutput.cs
- RadioButtonFlatAdapter.cs
- ConstructorBuilder.cs
- QilInvokeLateBound.cs
- ConfigViewGenerator.cs
- OrthographicCamera.cs
- PageParser.cs
- RTLAwareMessageBox.cs
- XhtmlMobileTextWriter.cs
- TypeUsage.cs
- DbConnectionStringBuilder.cs
- ItemCheckEvent.cs
- MetafileHeaderWmf.cs
- TableSectionStyle.cs
- DataView.cs
- ProxyElement.cs
- ToolStripMenuItem.cs
- XPathConvert.cs
- UIElementParagraph.cs
- DbCommandDefinition.cs
- ObjectToken.cs
- WebPartMinimizeVerb.cs
- AsnEncodedData.cs
- ReferenceConverter.cs
- Listen.cs
- StorageTypeMapping.cs
- TextEditorTyping.cs
- PropertyCondition.cs
- CacheModeValueSerializer.cs
- DBParameter.cs
- WebPartZone.cs
- PerformanceCountersElement.cs
- LookupNode.cs
- Collection.cs
- ViewLoader.cs
- EpmContentSerializer.cs
- Package.cs
- ByteViewer.cs
- DisposableCollectionWrapper.cs
- WorkflowOwnerAsyncResult.cs
- VersionUtil.cs
- Span.cs
- Vector3DCollection.cs
- CodeIdentifier.cs
- TargetConverter.cs
- XmlnsCompatibleWithAttribute.cs
- CssTextWriter.cs
- SchemaConstraints.cs
- IDReferencePropertyAttribute.cs
- XPathNavigatorReader.cs
- HttpHandlerAction.cs
- DeclarativeConditionsCollection.cs
- DataGridAutomationPeer.cs
- Point4D.cs
- RuleInfoComparer.cs
- AuthorizationRule.cs
- CleanUpVirtualizedItemEventArgs.cs
- CompilerWrapper.cs
- ConvertTextFrag.cs
- SynchronizationValidator.cs
- RegistryKey.cs
- DelegateSerializationHolder.cs
- CreateRefExpr.cs
- HtmlControl.cs
- ValuePattern.cs
- RuntimeWrappedException.cs
- ObjectDesignerDataSourceView.cs
- LogicalExpr.cs
- StateManagedCollection.cs
- SoapHeaders.cs
- DateTimeSerializationSection.cs
- PrintDialogException.cs
- MissingMemberException.cs
- RegexStringValidator.cs
- HtmlCalendarAdapter.cs
- NavigationPropertyEmitter.cs
- LinqDataSource.cs
- ClientSponsor.cs
- CommentAction.cs