Code:
/ WCF / WCF / 3.5.30729.1 / untmp / Orcas / SP / ndp / cdf / src / WCF / SMSvcHost / System / ServiceModel / Activation / TcpPortSharing.cs / 1 / TcpPortSharing.cs
//------------------------------------------------------------------------------ // Copyright (c) Microsoft Corporation. All rights reserved. //----------------------------------------------------------------------------- namespace System.ServiceModel.Activation { using System.ServiceProcess; using System.Threading; using System.ServiceModel.Activation.Diagnostics; using System.Diagnostics; using System.ServiceModel.Diagnostics; class TcpPortSharing : ServiceBase { TcpPortSharingCore serviceCore; internal TcpPortSharing() : base() { this.serviceCore = new TcpPortSharingCore(); this.ServiceName = ListenerConstants.TcpPortSharingServiceName; this.CanPauseAndContinue = true; this.CanHandlePowerEvent = SharingService.CanHandlePowerEvent; this.AutoLog = SharingService.AutoLog; this.CanStop = SharingService.CanStop; this.CanShutdown = SharingService.CanShutdown; } internal bool IsPaused { get { return serviceCore.IsPaused; } } protected override void OnContinue() { if (DiagnosticUtility.ShouldTraceInformation) { ListenerTraceUtility.TraceEvent(TraceEventType.Information, TraceCode.ServiceContinue, this); } serviceCore.OnContinue(); } #if DEBUG protected override void OnCustomCommand(int command) { serviceCore.OnCustomCommand(command); } #endif protected override void OnPause() { if (DiagnosticUtility.ShouldTraceInformation) { ListenerTraceUtility.TraceEvent(TraceEventType.Information, TraceCode.ServicePause, this); } serviceCore.OnPause(); } protected override void OnShutdown() { if (DiagnosticUtility.ShouldTraceInformation) { ListenerTraceUtility.TraceEvent(TraceEventType.Information, TraceCode.ServiceShutdown, this); } base.RequestAdditionalTime(ListenerConstants.ServiceStopTimeout); serviceCore.OnShutdown(); Stop(); } protected override void OnStart(string[] args) { try { if (DiagnosticUtility.ShouldTraceInformation) { ListenerTraceUtility.TraceEvent(TraceEventType.Information, TraceCode.ServiceStart, this); } ListenerConfig.EnsureInitializedForNetTcp(); #if DEBUG if (DebuggableService.DelayStart(ServiceName)) { (new Thread(new ThreadStart(Start))).Start(); return; } #endif Start(); } catch (Exception exception) { // Log the error to eventlog. ListenerTraceUtility.EventLog.LogEvent(TraceEventType.Error, System.ServiceModel.Diagnostics.EventLogCategory.SharingService, System.ServiceModel.Diagnostics.EventLogEventId.ServiceStartFailed, false, exception.ToString()); throw; } } void Start() { #if DEBUG DebuggableService.WaitForDebugger(ServiceName); #endif serviceCore.Start(); } protected override void OnStop() { if (DiagnosticUtility.ShouldTraceInformation) { ListenerTraceUtility.TraceEvent(TraceEventType.Information, TraceCode.ServiceStop, this); } base.RequestAdditionalTime(ListenerConstants.ServiceStopTimeout); serviceCore.OnStop(); } class TcpPortSharingCore : SharingService { internal TcpPortSharingCore() : base(TransportType.Tcp, ListenerConstants.TcpPortSharingServiceName, ListenerConstants.TcpSharedMemoryName) { } } } } // 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
- XmlSchemaAnyAttribute.cs
- SqlTriggerAttribute.cs
- ArglessEventHandlerProxy.cs
- DeclaredTypeElementCollection.cs
- WindowsFormsHost.cs
- Substitution.cs
- ExpressionNode.cs
- Peer.cs
- StorageFunctionMapping.cs
- PenContext.cs
- smtpconnection.cs
- DesignSurfaceEvent.cs
- DrawingImage.cs
- GridViewRowEventArgs.cs
- ArraySet.cs
- HttpListenerRequest.cs
- ZipIOCentralDirectoryFileHeader.cs
- XmlChildEnumerator.cs
- WebPageTraceListener.cs
- XmlEncoding.cs
- HtmlEmptyTagControlBuilder.cs
- RequestCachingSection.cs
- GB18030Encoding.cs
- ASCIIEncoding.cs
- CaseStatement.cs
- GridItemCollection.cs
- DecimalAverageAggregationOperator.cs
- ExpressionNormalizer.cs
- WizardPanel.cs
- Deflater.cs
- TextSpan.cs
- PreservationFileWriter.cs
- MobileDeviceCapabilitiesSectionHandler.cs
- TaiwanLunisolarCalendar.cs
- ProjectionCamera.cs
- HttpCookie.cs
- LinqDataSourceStatusEventArgs.cs
- SafeBitVector32.cs
- BooleanSwitch.cs
- DataGridCommandEventArgs.cs
- OleDbErrorCollection.cs
- ViewGenerator.cs
- DoubleCollectionValueSerializer.cs
- EdgeModeValidation.cs
- ObjectDataSourceMethodEditor.cs
- FileVersionInfo.cs
- MetadataImporterQuotas.cs
- MultiSelectRootGridEntry.cs
- SoapSchemaImporter.cs
- ToolStripItemImageRenderEventArgs.cs
- SqlBuffer.cs
- InsufficientMemoryException.cs
- CodeNamespaceImportCollection.cs
- EdmToObjectNamespaceMap.cs
- XmlSchemaSimpleContent.cs
- EnvelopedPkcs7.cs
- DispatchRuntime.cs
- SafePEFileHandle.cs
- ComponentSerializationService.cs
- sortedlist.cs
- StringReader.cs
- KeyConverter.cs
- LockedBorderGlyph.cs
- GridToolTip.cs
- ColumnResult.cs
- ExtendedProperty.cs
- FormClosedEvent.cs
- AstNode.cs
- DBParameter.cs
- DesignTimeVisibleAttribute.cs
- UriExt.cs
- SqlUtils.cs
- ReferenceCountedObject.cs
- TextDecorationLocationValidation.cs
- GestureRecognizer.cs
- StylusTip.cs
- StorageModelBuildProvider.cs
- QilNode.cs
- LineServicesCallbacks.cs
- EdgeModeValidation.cs
- ChangeProcessor.cs
- StringUtil.cs
- PropertyPath.cs
- FileDialog.cs
- DockPatternIdentifiers.cs
- DrawListViewSubItemEventArgs.cs
- Wildcard.cs
- ListSortDescription.cs
- DataGridGeneralPage.cs
- ClientEndpointLoader.cs
- AsnEncodedData.cs
- EntityDataSourceDesignerHelper.cs
- WebResourceUtil.cs
- ListViewTableCell.cs
- TagMapCollection.cs
- RIPEMD160Managed.cs
- StatusBar.cs
- TableItemProviderWrapper.cs
- OrderedDictionary.cs
- RefreshEventArgs.cs