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 / Configuration / ProtocolsConfigurationEntry.cs / 1 / ProtocolsConfigurationEntry.cs
//------------------------------------------------------------------------------
//
// Copyright (c) Microsoft Corporation. All rights reserved.
//
//-----------------------------------------------------------------------------
namespace System.Web.Configuration {
using System.IO;
using System.Runtime.Serialization.Formatters;
using System.Threading;
using System.Runtime.InteropServices;
using System.ComponentModel;
using System.Collections;
using System.Configuration;
using System.Reflection;
using System.Globalization;
using System.Web.Hosting;
using System.Web.Security;
using System.Web.Util;
using System.Xml;
internal class ProtocolsConfigurationEntry {
private String _id;
private String _processHandlerTypeName;
private Type _processHandlerType;
private String _appDomainHandlerTypeName;
private Type _appDomainHandlerType;
private bool _typesValidated;
private String _configFileName;
private int _configFileLine;
internal ProtocolsConfigurationEntry(
String id,
String processHandlerType,
String appDomainHandlerType,
bool validate,
String configFileName,
int configFileLine) {
_id = id;
_processHandlerTypeName = processHandlerType;
_appDomainHandlerTypeName = appDomainHandlerType;
_configFileName = configFileName;
_configFileLine = configFileLine;
if (validate) {
ValidateTypes();
}
}
private void ValidateTypes() {
if (_typesValidated)
return;
// check process protocol handler
Type processHandlerType;
try {
processHandlerType = Type.GetType(_processHandlerTypeName, true /*throwOnError*/);
}
catch (Exception e) {
throw new ConfigurationErrorsException(e.Message, e, _configFileName, _configFileLine);
}
HandlerBase.CheckAssignableType(_configFileName, _configFileLine, typeof(ProcessProtocolHandler), processHandlerType);
// check app domain protocol handler
Type appDomainHandlerType;
try {
appDomainHandlerType = Type.GetType(_appDomainHandlerTypeName, true /*throwOnError*/);
}
catch (Exception e) {
throw new ConfigurationErrorsException(e.Message, e, _configFileName, _configFileLine);
}
HandlerBase.CheckAssignableType(_configFileName, _configFileLine, typeof(AppDomainProtocolHandler), appDomainHandlerType);
// remember types
_processHandlerType = processHandlerType;
_appDomainHandlerType = appDomainHandlerType;
_typesValidated = true;
}
}
}
// File provided for Reference Use Only by Microsoft Corporation (c) 2007.
//------------------------------------------------------------------------------
//
// Copyright (c) Microsoft Corporation. All rights reserved.
//
//-----------------------------------------------------------------------------
namespace System.Web.Configuration {
using System.IO;
using System.Runtime.Serialization.Formatters;
using System.Threading;
using System.Runtime.InteropServices;
using System.ComponentModel;
using System.Collections;
using System.Configuration;
using System.Reflection;
using System.Globalization;
using System.Web.Hosting;
using System.Web.Security;
using System.Web.Util;
using System.Xml;
internal class ProtocolsConfigurationEntry {
private String _id;
private String _processHandlerTypeName;
private Type _processHandlerType;
private String _appDomainHandlerTypeName;
private Type _appDomainHandlerType;
private bool _typesValidated;
private String _configFileName;
private int _configFileLine;
internal ProtocolsConfigurationEntry(
String id,
String processHandlerType,
String appDomainHandlerType,
bool validate,
String configFileName,
int configFileLine) {
_id = id;
_processHandlerTypeName = processHandlerType;
_appDomainHandlerTypeName = appDomainHandlerType;
_configFileName = configFileName;
_configFileLine = configFileLine;
if (validate) {
ValidateTypes();
}
}
private void ValidateTypes() {
if (_typesValidated)
return;
// check process protocol handler
Type processHandlerType;
try {
processHandlerType = Type.GetType(_processHandlerTypeName, true /*throwOnError*/);
}
catch (Exception e) {
throw new ConfigurationErrorsException(e.Message, e, _configFileName, _configFileLine);
}
HandlerBase.CheckAssignableType(_configFileName, _configFileLine, typeof(ProcessProtocolHandler), processHandlerType);
// check app domain protocol handler
Type appDomainHandlerType;
try {
appDomainHandlerType = Type.GetType(_appDomainHandlerTypeName, true /*throwOnError*/);
}
catch (Exception e) {
throw new ConfigurationErrorsException(e.Message, e, _configFileName, _configFileLine);
}
HandlerBase.CheckAssignableType(_configFileName, _configFileLine, typeof(AppDomainProtocolHandler), appDomainHandlerType);
// remember types
_processHandlerType = processHandlerType;
_appDomainHandlerType = appDomainHandlerType;
_typesValidated = 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
- XPathNavigatorReader.cs
- XmlDictionaryString.cs
- XMLSchema.cs
- DataGridrowEditEndingEventArgs.cs
- MDIControlStrip.cs
- ExpressionCopier.cs
- PenContext.cs
- SemaphoreSecurity.cs
- PenThreadPool.cs
- XmlUrlResolver.cs
- WebPartDisplayModeCancelEventArgs.cs
- DataGridCellItemAutomationPeer.cs
- LayoutManager.cs
- Base64Stream.cs
- DataGridPagerStyle.cs
- ConfigurationLocationCollection.cs
- ProcessHost.cs
- XmlSchemaIdentityConstraint.cs
- IndicCharClassifier.cs
- MaterialCollection.cs
- StateManagedCollection.cs
- TrackingProfile.cs
- ImageIndexConverter.cs
- ContainerVisual.cs
- CodeAttributeArgument.cs
- SystemIPInterfaceProperties.cs
- ParameterToken.cs
- ListViewCancelEventArgs.cs
- HostedElements.cs
- ImageFormat.cs
- translator.cs
- XmlWrappingReader.cs
- ColumnMapVisitor.cs
- DataView.cs
- Environment.cs
- TextSpanModifier.cs
- initElementDictionary.cs
- serverconfig.cs
- ExpandCollapsePattern.cs
- MailSettingsSection.cs
- SecureConversationServiceElement.cs
- PipeException.cs
- SafeNativeMethodsMilCoreApi.cs
- StreamInfo.cs
- ColorIndependentAnimationStorage.cs
- PostBackOptions.cs
- SQLGuidStorage.cs
- WebPartChrome.cs
- GeometryModel3D.cs
- WebPartHelpVerb.cs
- Closure.cs
- GradientSpreadMethodValidation.cs
- Currency.cs
- CodeCastExpression.cs
- NonClientArea.cs
- FixedFindEngine.cs
- BorderGapMaskConverter.cs
- RewritingProcessor.cs
- HttpMethodAttribute.cs
- UseLicense.cs
- printdlgexmarshaler.cs
- CompiledRegexRunnerFactory.cs
- InvalidFilterCriteriaException.cs
- HtmlButton.cs
- QilPatternFactory.cs
- CustomTypeDescriptor.cs
- LinkTarget.cs
- CodeExpressionCollection.cs
- Camera.cs
- CircleHotSpot.cs
- OleDbStruct.cs
- DebugHandleTracker.cs
- CurrentTimeZone.cs
- ReflectionTypeLoadException.cs
- StringUtil.cs
- OutputScopeManager.cs
- NumericPagerField.cs
- AssemblyBuilder.cs
- NativeObjectSecurity.cs
- ClientBuildManagerCallback.cs
- DataGridHeaderBorder.cs
- DateTimeParse.cs
- DataGridViewBindingCompleteEventArgs.cs
- Visual3D.cs
- XmlIgnoreAttribute.cs
- Underline.cs
- PageTheme.cs
- ConstructorBuilder.cs
- HostnameComparisonMode.cs
- HttpInputStream.cs
- SerializationAttributes.cs
- DocumentViewer.cs
- IsolatedStorageFile.cs
- CaseInsensitiveOrdinalStringComparer.cs
- RealizationDrawingContextWalker.cs
- ICollection.cs
- DynamicObject.cs
- FileVersion.cs
- BaseUriHelper.cs
- CodeDOMProvider.cs