Code:
/ 4.0 / 4.0 / untmp / DEVDIV_TFS / Dev10 / Releases / RTMRel / ndp / cdf / src / NetFx40 / System.ServiceModel.Discovery / System / ServiceModel / Discovery / DiscoveryServiceExtension.cs / 1305376 / DiscoveryServiceExtension.cs
//---------------------------------------------------------------- // Copyright (c) Microsoft Corporation. All rights reserved. //--------------------------------------------------------------- namespace System.ServiceModel.Discovery { using System; using System.Collections.ObjectModel; using System.Runtime; using SR2 = System.ServiceModel.Discovery.SR; [Fx.Tag.XamlVisible(false)] public abstract class DiscoveryServiceExtension : IExtension{ ServiceHostBase owner; PublishedEndpointCollection publishedEndpoints; ReadOnlyCollection readOnlyPublishedEndpoints; protected DiscoveryServiceExtension() { this.publishedEndpoints = new PublishedEndpointCollection(); this.readOnlyPublishedEndpoints = new ReadOnlyCollection (this.publishedEndpoints); } public ReadOnlyCollection PublishedEndpoints { get { return this.readOnlyPublishedEndpoints; } } internal Collection InternalPublishedEndpoints { get { return this.publishedEndpoints; } } void IExtension .Attach(ServiceHostBase owner) { if (owner == null) { throw FxTrace.Exception.ArgumentNull("owner"); } if (this.owner != null) { throw FxTrace.Exception.AsError(new InvalidOperationException(SR2.DiscoveryExtensionAlreadyAttached)); } this.owner = owner; } void IExtension .Detach(ServiceHostBase owner) { if (owner == null) { throw FxTrace.Exception.ArgumentNull("owner"); } if (this.owner != null) { throw FxTrace.Exception.AsError(new InvalidOperationException(SR2.DiscoveryExtensionCannotBeDetached)); } } internal DiscoveryService ValidateAndGetDiscoveryService() { DiscoveryService discoveryService = this.GetDiscoveryService(); if (discoveryService == null) { throw FxTrace.Exception.AsError( new InvalidOperationException( SR.DiscoveryMethodImplementationReturnsNull("GetDiscoveryService", this.GetType()))); } return discoveryService; } protected abstract DiscoveryService GetDiscoveryService(); class PublishedEndpointCollection : NonNullItemCollection { protected override void InsertItem(int index, EndpointDiscoveryMetadata item) { base.InsertItem(index, item); item.Open(); } protected override void SetItem(int index, EndpointDiscoveryMetadata item) { base.SetItem(index, item); item.Open(); } } } } // File provided for Reference Use Only by Microsoft Corporation (c) 2007.
Link Menu
This book is available now!
Buy at Amazon US or
Buy at Amazon UK
- Function.cs
- XamlStyleSerializer.cs
- RankException.cs
- ProtectedConfiguration.cs
- WebPermission.cs
- WSHttpSecurityElement.cs
- RNGCryptoServiceProvider.cs
- MSHTMLHost.cs
- Timer.cs
- WebBrowserNavigatedEventHandler.cs
- ProxyWebPart.cs
- TextServicesLoader.cs
- ReliableSessionElement.cs
- ExpressionTable.cs
- DynamicPropertyReader.cs
- SystemIPInterfaceStatistics.cs
- JsonFormatReaderGenerator.cs
- ObjectRef.cs
- HwndTarget.cs
- RequestTimeoutManager.cs
- pingexception.cs
- PrivateFontCollection.cs
- BinarySecretSecurityToken.cs
- QuadraticBezierSegment.cs
- WindowsTitleBar.cs
- WebBrowserUriTypeConverter.cs
- FormsIdentity.cs
- DataGridViewRowHeightInfoPushedEventArgs.cs
- CatalogPartChrome.cs
- TableCellCollection.cs
- _Rfc2616CacheValidators.cs
- CachedFontFamily.cs
- CommandManager.cs
- PictureBox.cs
- connectionpool.cs
- Brush.cs
- SessionEndingEventArgs.cs
- BufferedGraphicsManager.cs
- AssemblyFilter.cs
- DropDownList.cs
- ScriptControlManager.cs
- SizeLimitedCache.cs
- ResXResourceReader.cs
- GregorianCalendarHelper.cs
- GuidConverter.cs
- connectionpool.cs
- DataGridViewDesigner.cs
- FindCriteriaApril2005.cs
- WorkflowInstanceAbortedRecord.cs
- TiffBitmapEncoder.cs
- Message.cs
- ReturnType.cs
- RtType.cs
- BinarySerializer.cs
- DoubleCollection.cs
- PartialCachingAttribute.cs
- UIElement3D.cs
- SelectionChangedEventArgs.cs
- PauseStoryboard.cs
- unitconverter.cs
- DockPanel.cs
- SystemUnicastIPAddressInformation.cs
- ChangeConflicts.cs
- XmlValueConverter.cs
- ReliableDuplexSessionChannel.cs
- EDesignUtil.cs
- DrawItemEvent.cs
- CompoundFileReference.cs
- MasterPageParser.cs
- ChannelPoolSettings.cs
- XPathExpr.cs
- PageCatalogPart.cs
- CompareValidator.cs
- TextTreeInsertUndoUnit.cs
- AlternateView.cs
- LostFocusEventManager.cs
- KeyEventArgs.cs
- XhtmlTextWriter.cs
- RequestQueryParser.cs
- ItemType.cs
- DataBindEngine.cs
- HtmlTableRowCollection.cs
- SystemIcmpV4Statistics.cs
- ZipIOLocalFileBlock.cs
- PKCS1MaskGenerationMethod.cs
- SQLByteStorage.cs
- LambdaValue.cs
- _NetRes.cs
- ConfigurationElementCollection.cs
- ExceptionWrapper.cs
- XmlDataCollection.cs
- SqlSelectClauseBuilder.cs
- ArrayTypeMismatchException.cs
- SourceChangedEventArgs.cs
- EventLogTraceListener.cs
- TextRunCache.cs
- DiscoveryInnerClientManaged11.cs
- FixedPageStructure.cs
- IItemContainerGenerator.cs
- NativeMethods.cs