Code:
/ WCF / WCF / 3.5.30729.1 / untmp / Orcas / SP / ndp / cdf / src / WCF / SMSvcHost / System / ServiceModel / Activation / App.cs / 1 / App.cs
//------------------------------------------------------------------------------ // Copyright (c) Microsoft Corporation. All rights reserved. //----------------------------------------------------------------------------- namespace System.ServiceModel.Activation { using System; using System.ServiceModel.Channels; using System.Collections.Generic; using System.Diagnostics; using System.Security.Principal; using System.ServiceModel; class App { string appKey; AppPool appPool; int siteId; IActivatedMessageQueue messageQueue; string path; bool requestBlocked; bool hasInvalidBinding; AppAction pendingAction; internal App(string appKey, string path, int siteId, AppPool appPool, bool requestsBlocked) : base() { Debug.Print("App.ctor(appKey:" + appKey + " path:" + path + " appPoolId:" + appPool.AppPoolId + ")"); this.appKey = appKey; this.path = path; this.appPool = appPool; this.siteId = siteId; this.requestBlocked = requestsBlocked; } internal AppAction PendingAction { get { return this.pendingAction; } } internal void SetPendingAction(AppAction action) { if (action != null) { DiagnosticUtility.DebugAssert(this.pendingAction == null, "There is already a pending action."); } this.pendingAction = action; } internal void RegisterQueue(IActivatedMessageQueue messageQueue) { if (this.messageQueue != null) { DiagnosticUtility.DebugAssert("a message queue was already registered"); throw DiagnosticUtility.ExceptionUtility.ThrowHelperInternal(false); } this.messageQueue = messageQueue; } internal string AppKey { get { return appKey; } } internal AppPool AppPool { get { return appPool; } } internal int SiteId { get { return siteId; } } internal IActivatedMessageQueue MessageQueue { get { return messageQueue; } } internal string Path { get { return path; } set { this.path = value; } } internal void OnAppPoolChanged(AppPool newAppPool) { this.appPool = newAppPool; } internal void SetRequestBlocked(bool requestBlocked) { if (this.requestBlocked != requestBlocked) { this.requestBlocked = requestBlocked; OnStateChanged(); } } internal void OnAppPoolStateChanged() { OnStateChanged(); } internal void OnDeleted(bool appPoolDeleted) { messageQueue.Delete(); } internal bool IsEnabled { get { return this.appPool.IsEnabled && !this.requestBlocked && !this.hasInvalidBinding; } } internal void OnInvalidBinding(bool hasInvalidBinding) { this.hasInvalidBinding = hasInvalidBinding; OnStateChanged(); } void OnStateChanged() { messageQueue.SetEnabledState(this.IsEnabled); } } } // 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
- OracleCommandBuilder.cs
- CachedPathData.cs
- ColumnResizeAdorner.cs
- DoubleAnimation.cs
- InstallerTypeAttribute.cs
- Qualifier.cs
- ForeignKeyConstraint.cs
- AsymmetricAlgorithm.cs
- PerformanceCounter.cs
- EntityDataSourceDataSelectionPanel.cs
- ComponentConverter.cs
- IisNotInstalledException.cs
- SqlCachedBuffer.cs
- EventBuilder.cs
- MDIWindowDialog.cs
- ConsoleKeyInfo.cs
- EntityCollection.cs
- WebPartConnectionsDisconnectVerb.cs
- TempFiles.cs
- DataList.cs
- SchemaImporterExtensionsSection.cs
- IntegerFacetDescriptionElement.cs
- GlobalItem.cs
- UnsafeNativeMethods.cs
- BinaryCommonClasses.cs
- SqlUserDefinedAggregateAttribute.cs
- DataGridViewSortCompareEventArgs.cs
- TableHeaderCell.cs
- ConfigurationManagerInternal.cs
- ArithmeticException.cs
- ArithmeticException.cs
- InputMethod.cs
- indexingfiltermarshaler.cs
- StringArrayConverter.cs
- HttpModuleActionCollection.cs
- ThumbButtonInfoCollection.cs
- Condition.cs
- XmlSchemaObjectCollection.cs
- ImageMap.cs
- HTTPNotFoundHandler.cs
- LeftCellWrapper.cs
- ByteConverter.cs
- SelectionList.cs
- DataControlButton.cs
- SoapFormatterSinks.cs
- ContentPresenter.cs
- PropertyOrder.cs
- RealizationDrawingContextWalker.cs
- securitycriticaldataformultiplegetandset.cs
- CustomCredentialPolicy.cs
- XmlNode.cs
- ListItemCollection.cs
- Queue.cs
- AddInControllerImpl.cs
- GenerateHelper.cs
- CharUnicodeInfo.cs
- SqlComparer.cs
- Bitmap.cs
- TypeConverterHelper.cs
- DataListCommandEventArgs.cs
- ToggleButtonAutomationPeer.cs
- RegionIterator.cs
- ObjectFactoryCodeDomTreeGenerator.cs
- WebPartCatalogCloseVerb.cs
- TextRange.cs
- ParagraphVisual.cs
- CollectionViewGroupRoot.cs
- GeometryConverter.cs
- XmlSchemaObjectCollection.cs
- cookie.cs
- SqlAliaser.cs
- BamlWriter.cs
- DataTableReaderListener.cs
- CommaDelimitedStringAttributeCollectionConverter.cs
- _WebProxyDataBuilder.cs
- DataListDesigner.cs
- QilSortKey.cs
- ScriptingProfileServiceSection.cs
- UnknownBitmapDecoder.cs
- Transaction.cs
- RangeContentEnumerator.cs
- CaseKeyBox.xaml.cs
- SessionState.cs
- BrowserInteropHelper.cs
- ConstructorNeedsTagAttribute.cs
- GridLengthConverter.cs
- Attribute.cs
- TypeElement.cs
- SourceLineInfo.cs
- UmAlQuraCalendar.cs
- HTTPNotFoundHandler.cs
- _Rfc2616CacheValidators.cs
- HijriCalendar.cs
- AudioException.cs
- SrgsRulesCollection.cs
- DocumentViewerBase.cs
- RowsCopiedEventArgs.cs
- PathNode.cs
- PageSettings.cs
- PerfCounterSection.cs