Code:
/ Dotnetfx_Win7_3.5.1 / Dotnetfx_Win7_3.5.1 / 3.5.1 / DEVDIV / depot / DevDiv / releases / whidbey / NetFXspW7 / ndp / fx / src / xsp / System / Web / UI / WebParts / WebPartTracker.cs / 1 / WebPartTracker.cs
//------------------------------------------------------------------------------
//
// Copyright (c) Microsoft Corporation. All rights reserved.
//
//-----------------------------------------------------------------------------
namespace System.Web.UI.WebControls.WebParts {
using System;
using System.Collections;
using System.ComponentModel;
using System.Diagnostics;
using System.Drawing.Design;
using System.Security.Permissions;
using System.Web;
using System.Web.UI;
[AspNetHostingPermission(SecurityAction.LinkDemand, Level=AspNetHostingPermissionLevel.Minimal)]
public sealed class WebPartTracker : IDisposable {
private bool _disposed;
private WebPart _webPart;
private ProviderConnectionPoint _providerConnectionPoint;
public WebPartTracker(WebPart webPart, ProviderConnectionPoint providerConnectionPoint) {
if (webPart == null) {
throw new ArgumentNullException("webPart");
}
if (providerConnectionPoint == null) {
throw new ArgumentNullException("providerConnectionPoint");
}
if (providerConnectionPoint.ControlType != webPart.GetType()) {
throw new ArgumentException(SR.GetString(SR.WebPartManager_InvalidConnectionPoint), "providerConnectionPoint");
}
_webPart = webPart;
_providerConnectionPoint = providerConnectionPoint;
if (++Count > 1) {
webPart.SetConnectErrorMessage(SR.GetString(
SR.WebPartTracker_CircularConnection, _providerConnectionPoint.DisplayName));
}
}
public bool IsCircularConnection {
get {
return (Count > 1);
}
}
private int Count {
get {
int count;
_webPart.TrackerCounter.TryGetValue(_providerConnectionPoint, out count);
return count;
}
set {
_webPart.TrackerCounter[_providerConnectionPoint] = value;
}
}
void IDisposable.Dispose() {
if (!_disposed) {
Debug.Assert(Count >= 1);
Count--;
_disposed = true;
}
}
}
}
// File provided for Reference Use Only by Microsoft Corporation (c) 2007.
//------------------------------------------------------------------------------
//
// Copyright (c) Microsoft Corporation. All rights reserved.
//
//-----------------------------------------------------------------------------
namespace System.Web.UI.WebControls.WebParts {
using System;
using System.Collections;
using System.ComponentModel;
using System.Diagnostics;
using System.Drawing.Design;
using System.Security.Permissions;
using System.Web;
using System.Web.UI;
[AspNetHostingPermission(SecurityAction.LinkDemand, Level=AspNetHostingPermissionLevel.Minimal)]
public sealed class WebPartTracker : IDisposable {
private bool _disposed;
private WebPart _webPart;
private ProviderConnectionPoint _providerConnectionPoint;
public WebPartTracker(WebPart webPart, ProviderConnectionPoint providerConnectionPoint) {
if (webPart == null) {
throw new ArgumentNullException("webPart");
}
if (providerConnectionPoint == null) {
throw new ArgumentNullException("providerConnectionPoint");
}
if (providerConnectionPoint.ControlType != webPart.GetType()) {
throw new ArgumentException(SR.GetString(SR.WebPartManager_InvalidConnectionPoint), "providerConnectionPoint");
}
_webPart = webPart;
_providerConnectionPoint = providerConnectionPoint;
if (++Count > 1) {
webPart.SetConnectErrorMessage(SR.GetString(
SR.WebPartTracker_CircularConnection, _providerConnectionPoint.DisplayName));
}
}
public bool IsCircularConnection {
get {
return (Count > 1);
}
}
private int Count {
get {
int count;
_webPart.TrackerCounter.TryGetValue(_providerConnectionPoint, out count);
return count;
}
set {
_webPart.TrackerCounter[_providerConnectionPoint] = value;
}
}
void IDisposable.Dispose() {
if (!_disposed) {
Debug.Assert(Count >= 1);
Count--;
_disposed = true;
}
}
}
}
// 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
- QilVisitor.cs
- ClientRoleProvider.cs
- UdpRetransmissionSettings.cs
- XmlSchemaInfo.cs
- Update.cs
- SimpleFileLog.cs
- StaticSiteMapProvider.cs
- CreateRefExpr.cs
- WebExceptionStatus.cs
- PriorityQueue.cs
- CodeDOMUtility.cs
- KeyTime.cs
- RuntimeHandles.cs
- DataGridColumnStyleMappingNameEditor.cs
- HostingEnvironmentException.cs
- AssemblyBuilderData.cs
- MarginCollapsingState.cs
- BamlResourceDeserializer.cs
- ScrollableControl.cs
- Vector3DKeyFrameCollection.cs
- SRDisplayNameAttribute.cs
- WebPartVerbCollection.cs
- NotifyInputEventArgs.cs
- LicenseContext.cs
- GlobalItem.cs
- UIElementAutomationPeer.cs
- Line.cs
- PageCache.cs
- ADConnectionHelper.cs
- RegionInfo.cs
- TdsParserStaticMethods.cs
- HttpHandlersSection.cs
- X509Certificate2Collection.cs
- TypedDataSetSchemaImporterExtension.cs
- DataControlFieldCollection.cs
- XmlSerializerFactory.cs
- ISAPIRuntime.cs
- ChannelTerminatedException.cs
- RuntimeConfigurationRecord.cs
- FamilyTypeface.cs
- WebPartEditVerb.cs
- IisTraceWebEventProvider.cs
- RandomNumberGenerator.cs
- ExpressionBindings.cs
- TextLine.cs
- Literal.cs
- InlineCollection.cs
- DoubleAnimationClockResource.cs
- ClientSponsor.cs
- ProcessingInstructionAction.cs
- MsmqMessageSerializationFormat.cs
- XPSSignatureDefinition.cs
- PropertyItemInternal.cs
- UseLicense.cs
- SmiEventSink_Default.cs
- DESCryptoServiceProvider.cs
- Win32SafeHandles.cs
- VariableAction.cs
- ReadOnlyTernaryTree.cs
- EntityContainer.cs
- FixedTextPointer.cs
- PageCache.cs
- HttpContext.cs
- XPathArrayIterator.cs
- PackageStore.cs
- QueryStringParameter.cs
- ToolStripItemGlyph.cs
- PropertyPushdownHelper.cs
- _emptywebproxy.cs
- EntityContainerEmitter.cs
- FrameworkContextData.cs
- ContentPosition.cs
- DeferredElementTreeState.cs
- HtmlWindow.cs
- LocalizedNameDescriptionPair.cs
- CompiledQueryCacheEntry.cs
- DataSet.cs
- HtmlInputButton.cs
- PathFigureCollection.cs
- LineMetrics.cs
- _DigestClient.cs
- LogicalTreeHelper.cs
- XmlDomTextWriter.cs
- MapPathBasedVirtualPathProvider.cs
- RenderOptions.cs
- _ScatterGatherBuffers.cs
- RadioButtonBaseAdapter.cs
- ConfigurationLockCollection.cs
- CodeSubDirectory.cs
- CompressionTracing.cs
- CodeObjectCreateExpression.cs
- ImageListStreamer.cs
- CorrelationInitializer.cs
- CacheSection.cs
- DataGridViewCellStyleConverter.cs
- DependencyObjectProvider.cs
- SqlBooleanizer.cs
- HtmlEmptyTagControlBuilder.cs
- ExpandButtonVisibilityConverter.cs
- BulletChrome.cs