Code:
/ 4.0 / 4.0 / DEVDIV_TFS / Dev10 / Releases / RTMRel / ndp / fx / src / security / system / security / authentication / ExtendedProtection / ExtendedProtectionPolicyTypeConverter.cs / 1305376 / ExtendedProtectionPolicyTypeConverter.cs
//------------------------------------------------------------------------------ // // Copyright (c) Microsoft Corporation. All rights reserved. // //----------------------------------------------------------------------------- using System; using System.Collections; using System.ComponentModel; using System.ComponentModel.Design.Serialization; using System.Globalization; using System.Reflection; namespace System.Security.Authentication.ExtendedProtection { public class ExtendedProtectionPolicyTypeConverter : TypeConverter { public override bool CanConvertTo(ITypeDescriptorContext context, Type destinationType) { if (destinationType == typeof(InstanceDescriptor)) { return true; } return base.CanConvertTo(context, destinationType); } public override object ConvertTo(ITypeDescriptorContext context, CultureInfo culture, object value, Type destinationType) { if (destinationType == typeof(InstanceDescriptor)) { ExtendedProtectionPolicy policy = value as ExtendedProtectionPolicy; if (policy != null) { Type[] parameterTypes; object[] parameterValues; if (policy.PolicyEnforcement == PolicyEnforcement.Never) { parameterTypes = new Type[] { typeof(PolicyEnforcement) }; parameterValues = new object[] { PolicyEnforcement.Never }; } else { parameterTypes = new Type[] { typeof(PolicyEnforcement), typeof(ProtectionScenario), typeof(ICollection) }; object[] customServiceNames = null; if (policy.CustomServiceNames != null && policy.CustomServiceNames.Count > 0) { customServiceNames = new object[policy.CustomServiceNames.Count]; ((ICollection)policy.CustomServiceNames).CopyTo(customServiceNames, 0); } parameterValues = new object[] { policy.PolicyEnforcement, policy.ProtectionScenario, customServiceNames }; } ConstructorInfo constructor = typeof(ExtendedProtectionPolicy).GetConstructor(parameterTypes); return new InstanceDescriptor(constructor, parameterValues); } } return base.ConvertTo(context, culture, value, destinationType); } } } // File provided for Reference Use Only by Microsoft Corporation (c) 2007. //------------------------------------------------------------------------------ // // Copyright (c) Microsoft Corporation. All rights reserved. // //----------------------------------------------------------------------------- using System; using System.Collections; using System.ComponentModel; using System.ComponentModel.Design.Serialization; using System.Globalization; using System.Reflection; namespace System.Security.Authentication.ExtendedProtection { public class ExtendedProtectionPolicyTypeConverter : TypeConverter { public override bool CanConvertTo(ITypeDescriptorContext context, Type destinationType) { if (destinationType == typeof(InstanceDescriptor)) { return true; } return base.CanConvertTo(context, destinationType); } public override object ConvertTo(ITypeDescriptorContext context, CultureInfo culture, object value, Type destinationType) { if (destinationType == typeof(InstanceDescriptor)) { ExtendedProtectionPolicy policy = value as ExtendedProtectionPolicy; if (policy != null) { Type[] parameterTypes; object[] parameterValues; if (policy.PolicyEnforcement == PolicyEnforcement.Never) { parameterTypes = new Type[] { typeof(PolicyEnforcement) }; parameterValues = new object[] { PolicyEnforcement.Never }; } else { parameterTypes = new Type[] { typeof(PolicyEnforcement), typeof(ProtectionScenario), typeof(ICollection) }; object[] customServiceNames = null; if (policy.CustomServiceNames != null && policy.CustomServiceNames.Count > 0) { customServiceNames = new object[policy.CustomServiceNames.Count]; ((ICollection)policy.CustomServiceNames).CopyTo(customServiceNames, 0); } parameterValues = new object[] { policy.PolicyEnforcement, policy.ProtectionScenario, customServiceNames }; } ConstructorInfo constructor = typeof(ExtendedProtectionPolicy).GetConstructor(parameterTypes); return new InstanceDescriptor(constructor, parameterValues); } } return base.ConvertTo(context, culture, value, destinationType); } } } // 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
- ExpressionBindingCollection.cs
- SQLInt64Storage.cs
- UrlMapping.cs
- EntityTransaction.cs
- AttributeEmitter.cs
- NameTable.cs
- MinimizableAttributeTypeConverter.cs
- GraphicsPath.cs
- Exception.cs
- AudioLevelUpdatedEventArgs.cs
- HttpHandlerActionCollection.cs
- TemplateBuilder.cs
- NameValueConfigurationElement.cs
- CommonServiceBehaviorElement.cs
- Color.cs
- Certificate.cs
- ActiveXContainer.cs
- MetabaseSettings.cs
- SamlAudienceRestrictionCondition.cs
- ArcSegment.cs
- FileVersionInfo.cs
- DataGridParentRows.cs
- OleCmdHelper.cs
- MainMenu.cs
- DelegatingTypeDescriptionProvider.cs
- ListControlDesigner.cs
- SortedList.cs
- DragDeltaEventArgs.cs
- SQLGuid.cs
- StyleHelper.cs
- XmlSchemaGroupRef.cs
- ToolTipAutomationPeer.cs
- QilTypeChecker.cs
- CompilationSection.cs
- DataGridComponentEditor.cs
- DbDataSourceEnumerator.cs
- StaticFileHandler.cs
- StorageBasedPackageProperties.cs
- ScriptMethodAttribute.cs
- OdbcConnectionFactory.cs
- UriParserTemplates.cs
- Line.cs
- TextWriter.cs
- IDQuery.cs
- CodeExporter.cs
- OutputWindow.cs
- WindowsListView.cs
- ImageFormatConverter.cs
- ContentType.cs
- DataGridViewCellValueEventArgs.cs
- DbConnectionFactory.cs
- ComplusTypeValidator.cs
- GridViewColumn.cs
- ValidatingReaderNodeData.cs
- XmlDocumentSerializer.cs
- CacheMemory.cs
- X509ChainPolicy.cs
- GradientBrush.cs
- AutomationIdentifierGuids.cs
- ModelPerspective.cs
- NCryptSafeHandles.cs
- TextContainerChangedEventArgs.cs
- RenderData.cs
- PieceNameHelper.cs
- ListViewTableCell.cs
- Debug.cs
- TextDecoration.cs
- Validator.cs
- XPathDocumentIterator.cs
- HideDisabledControlAdapter.cs
- DescendentsWalker.cs
- _FtpControlStream.cs
- PackWebRequestFactory.cs
- NavigationWindowAutomationPeer.cs
- ScrollViewerAutomationPeer.cs
- EncodingNLS.cs
- ItemType.cs
- ItemCheckEvent.cs
- TimelineGroup.cs
- ScriptResourceAttribute.cs
- MbpInfo.cs
- MouseGestureConverter.cs
- safesecurityhelperavalon.cs
- XmlSerializerAssemblyAttribute.cs
- Range.cs
- XsltContext.cs
- HtmlImage.cs
- BitmapMetadataEnumerator.cs
- ToolStripManager.cs
- Literal.cs
- ObjectFactoryCodeDomTreeGenerator.cs
- _UncName.cs
- XMLSchema.cs
- ProxyElement.cs
- KerberosTokenFactoryCredential.cs
- GridProviderWrapper.cs
- DesignerSerializationVisibilityAttribute.cs
- ConfigXmlAttribute.cs
- DefaultProxySection.cs
- AmbiguousMatchException.cs