Code:
/ WCF / WCF / 3.5.30729.1 / untmp / Orcas / SP / ndp / cdf / src / WCF / ServiceModel / System / ServiceModel / Configuration / ServicesSection.cs / 1 / ServicesSection.cs
//------------------------------------------------------------------------------ // Copyright (c) Microsoft Corporation. All rights reserved. //----------------------------------------------------------------------------- namespace System.ServiceModel.Configuration { using System.Collections; using System.Configuration; using System.Globalization; using System.Reflection; using System.Xml; using System.Security; public sealed partial class ServicesSection : ConfigurationSection, IConfigurationContextProviderInternal { ////// Critical - stores information used in a security decision /// [SecurityCritical] EvaluationContextHelper contextHelper; public ServicesSection() { } [ConfigurationProperty(ConfigurationStrings.DefaultCollectionName, Options = ConfigurationPropertyOptions.IsDefaultCollection)] public ServiceElementCollection Services { get {return (ServiceElementCollection) this[ConfigurationStrings.DefaultCollectionName]; } } internal static ServicesSection GetSection() { return (ServicesSection)ConfigurationHelpers.GetSection(ConfigurationStrings.ServicesSectionPath); } ////// Critical - calls Critical method UnsafeGetSection which elevates in order to fetch config /// caller must guard access to resultant config section /// [SecurityCritical] internal static ServicesSection UnsafeGetSection() { return (ServicesSection)ConfigurationHelpers.UnsafeGetSection(ConfigurationStrings.ServicesSectionPath); } protected override void PostDeserialize() { this.ValidateSection(); base.PostDeserialize(); } void ValidateSection() { ContextInformation context = ConfigurationHelpers.GetEvaluationContext(this); if (context != null) { foreach (ServiceElement service in this.Services) { BehaviorsSection.ValidateServiceBehaviorReference(service.BehaviorConfiguration, context, service); foreach (ServiceEndpointElement endpoint in service.Endpoints) { BehaviorsSection.ValidateEndpointBehaviorReference(endpoint.BehaviorConfiguration, context, endpoint); BindingsSection.ValidateBindingReference(endpoint.Binding, endpoint.BindingConfiguration, context, endpoint); } } } } ////// Critical - accesses critical field contextHelper /// [SecurityCritical] protected override void Reset(ConfigurationElement parentElement) { this.contextHelper.OnReset(parentElement); base.Reset(parentElement); } ContextInformation IConfigurationContextProviderInternal.GetEvaluationContext() { return this.EvaluationContext; } ////// Critical -- accesses critical field contextHelper /// RequiresReview -- the return value will be used for a security decision -- see comment in interface definition /// [SecurityCritical] ContextInformation IConfigurationContextProviderInternal.GetOriginalEvaluationContext() { return this.contextHelper.GetOriginalContext(this); } } } // 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
- CornerRadiusConverter.cs
- CellParagraph.cs
- GiveFeedbackEvent.cs
- ProfileGroupSettings.cs
- BoundingRectTracker.cs
- DBConnection.cs
- LogLogRecord.cs
- ApplicationServicesHostFactory.cs
- TransformGroup.cs
- RotateTransform.cs
- ValidationErrorCollection.cs
- AsymmetricSignatureDeformatter.cs
- HelpPage.cs
- KeyboardInputProviderAcquireFocusEventArgs.cs
- ServiceDurableInstanceContextProvider.cs
- DataGridTextBoxColumn.cs
- ToolStripItemDesigner.cs
- COM2PropertyBuilderUITypeEditor.cs
- DataMemberAttribute.cs
- InstanceOwnerException.cs
- CodeNamespace.cs
- _CommandStream.cs
- PrintingPermissionAttribute.cs
- SchemaObjectWriter.cs
- SqlBulkCopyColumnMappingCollection.cs
- BigIntegerStorage.cs
- ConstructorArgumentAttribute.cs
- MruCache.cs
- FunctionQuery.cs
- ActivityPreviewDesigner.cs
- BitmapEffectInput.cs
- XamlSerializerUtil.cs
- MatrixIndependentAnimationStorage.cs
- ServiceModelPerformanceCounters.cs
- XmlSchemaChoice.cs
- XmlImplementation.cs
- GAC.cs
- NodeFunctions.cs
- SortQueryOperator.cs
- XmlEntityReference.cs
- XmlSchemaSimpleContentRestriction.cs
- ProcessHostConfigUtils.cs
- AmbiguousMatchException.cs
- WebHttpDispatchOperationSelectorData.cs
- DataGridViewLinkCell.cs
- SystemIPGlobalStatistics.cs
- MultipleFilterMatchesException.cs
- Attachment.cs
- GraphicsPath.cs
- MeasureItemEvent.cs
- WindowsBrush.cs
- ToolStripLabel.cs
- ObjectManager.cs
- BinHexEncoder.cs
- SaveWorkflowCommand.cs
- StylusLogic.cs
- GeneralTransform3DGroup.cs
- StringDictionary.cs
- EventSinkHelperWriter.cs
- TableRowCollection.cs
- MemberDomainMap.cs
- GridViewUpdateEventArgs.cs
- Typeface.cs
- DiscreteKeyFrames.cs
- PathParser.cs
- _ProxyRegBlob.cs
- FixedSOMSemanticBox.cs
- RotateTransform3D.cs
- PrimarySelectionAdorner.cs
- __ComObject.cs
- Knowncolors.cs
- AuthorizationRuleCollection.cs
- WrappedReader.cs
- PauseStoryboard.cs
- ExceptionCollection.cs
- SynchronizedDispatch.cs
- CompleteWizardStep.cs
- BoundPropertyEntry.cs
- BitmapEffectInput.cs
- ToolStripPanelRenderEventArgs.cs
- DynamicPropertyHolder.cs
- FormViewAutoFormat.cs
- IteratorFilter.cs
- complextypematerializer.cs
- MetadataSource.cs
- HwndSubclass.cs
- DataRecordInternal.cs
- SymbolTable.cs
- MembershipPasswordException.cs
- PointHitTestParameters.cs
- WrappedIUnknown.cs
- ZoneIdentityPermission.cs
- PersonalizationStateInfoCollection.cs
- SqlResolver.cs
- FirstMatchCodeGroup.cs
- HostingPreferredMapPath.cs
- CharAnimationBase.cs
- TypeReference.cs
- X509ClientCertificateAuthenticationElement.cs
- DeviceContext.cs