Code:
/ 4.0 / 4.0 / DEVDIV_TFS / Dev10 / Releases / RTMRel / ndp / fx / src / xsp / System / Extensions / UI / AuthenticationServiceManager.cs / 1305376 / AuthenticationServiceManager.cs
//------------------------------------------------------------------------------ //// Copyright (c) Microsoft Corporation. All rights reserved. // //----------------------------------------------------------------------------- namespace System.Web.UI { using System; using System.Collections.Generic; using System.Collections.ObjectModel; using System.ComponentModel; using System.Diagnostics; using System.Text; using System.Web; using System.Web.ApplicationServices; using System.Web.Resources; using System.Web.Script.Serialization; using System.Web.Security; [ DefaultProperty("Path"), TypeConverter(typeof(EmptyStringExpandableObjectConverter)) ] public class AuthenticationServiceManager { private string _path; internal static void ConfigureAuthenticationService(ref StringBuilder sb, HttpContext context, ScriptManager scriptManager, Listproxies) { string authServiceUrl = null; AuthenticationServiceManager authManager; if(scriptManager.HasAuthenticationServiceManager) { authManager = scriptManager.AuthenticationService; // get ScriptManager.ServiceUrl authServiceUrl = authManager.Path.Trim(); if(authServiceUrl.Length > 0) { authServiceUrl = scriptManager.ResolveUrl(authServiceUrl); } } // combine proxy ServiceUrls (find the first one that has specified one) if(proxies != null) { foreach(ScriptManagerProxy proxy in proxies) { if(proxy.HasAuthenticationServiceManager) { authManager = proxy.AuthenticationService; // combine urls authServiceUrl = ApplicationServiceManager.MergeServiceUrls(authManager.Path, authServiceUrl, proxy); } } } AuthenticationServiceManager.GenerateInitializationScript(ref sb, context, scriptManager, authServiceUrl); } private static void GenerateInitializationScript(ref StringBuilder sb, HttpContext context, ScriptManager scriptManager, string serviceUrl) { bool authEnabled = ApplicationServiceHelper.AuthenticationServiceEnabled; if (authEnabled) { if (sb == null) { sb = new StringBuilder(ApplicationServiceManager.StringBuilderCapacity); } // The default path points to the built-in service (if it is enabled) // Note that the client can't default to this path because it doesn't know what the app root is, we must tell it. // We must specify the default path to the proxy even if a custom path is provided, because on the client they could // reset the path back to the default if they want. string defaultServicePath = scriptManager.ResolveClientUrl("~/" + System.Web.Script.Services.WebServiceData._authenticationServiceFileName); sb.Append("Sys.Services._AuthenticationService.DefaultWebServicePath = '"); sb.Append(HttpUtility.JavaScriptStringEncode(defaultServicePath)); sb.Append("';\n"); } bool pathSpecified = !String.IsNullOrEmpty(serviceUrl); if(pathSpecified) { if (sb == null) { sb = new StringBuilder(ApplicationServiceManager.StringBuilderCapacity); } sb.Append("Sys.Services.AuthenticationService.set_path('"); sb.Append(HttpUtility.JavaScriptStringEncode(serviceUrl)); sb.Append("');\n"); } // only emit this script if (1) the auth webservice is enabled or (2) a custom webservice url is specified if ((authEnabled || pathSpecified) && (context != null && context.Request.IsAuthenticated)) { Debug.Assert(sb != null); sb.Append("Sys.Services.AuthenticationService._setAuthenticated(true);\n"); } } [ DefaultValue(""), Category("Behavior"), NotifyParentProperty(true), ResourceDescription("ApplicationServiceManager_Path"), UrlProperty() ] public string Path { get { return _path ?? String.Empty; } set { _path = value; } } } } // File provided for Reference Use Only by Microsoft Corporation (c) 2007. //------------------------------------------------------------------------------ // // Copyright (c) Microsoft Corporation. All rights reserved. // //----------------------------------------------------------------------------- namespace System.Web.UI { using System; using System.Collections.Generic; using System.Collections.ObjectModel; using System.ComponentModel; using System.Diagnostics; using System.Text; using System.Web; using System.Web.ApplicationServices; using System.Web.Resources; using System.Web.Script.Serialization; using System.Web.Security; [ DefaultProperty("Path"), TypeConverter(typeof(EmptyStringExpandableObjectConverter)) ] public class AuthenticationServiceManager { private string _path; internal static void ConfigureAuthenticationService(ref StringBuilder sb, HttpContext context, ScriptManager scriptManager, Listproxies) { string authServiceUrl = null; AuthenticationServiceManager authManager; if(scriptManager.HasAuthenticationServiceManager) { authManager = scriptManager.AuthenticationService; // get ScriptManager.ServiceUrl authServiceUrl = authManager.Path.Trim(); if(authServiceUrl.Length > 0) { authServiceUrl = scriptManager.ResolveUrl(authServiceUrl); } } // combine proxy ServiceUrls (find the first one that has specified one) if(proxies != null) { foreach(ScriptManagerProxy proxy in proxies) { if(proxy.HasAuthenticationServiceManager) { authManager = proxy.AuthenticationService; // combine urls authServiceUrl = ApplicationServiceManager.MergeServiceUrls(authManager.Path, authServiceUrl, proxy); } } } AuthenticationServiceManager.GenerateInitializationScript(ref sb, context, scriptManager, authServiceUrl); } private static void GenerateInitializationScript(ref StringBuilder sb, HttpContext context, ScriptManager scriptManager, string serviceUrl) { bool authEnabled = ApplicationServiceHelper.AuthenticationServiceEnabled; if (authEnabled) { if (sb == null) { sb = new StringBuilder(ApplicationServiceManager.StringBuilderCapacity); } // The default path points to the built-in service (if it is enabled) // Note that the client can't default to this path because it doesn't know what the app root is, we must tell it. // We must specify the default path to the proxy even if a custom path is provided, because on the client they could // reset the path back to the default if they want. string defaultServicePath = scriptManager.ResolveClientUrl("~/" + System.Web.Script.Services.WebServiceData._authenticationServiceFileName); sb.Append("Sys.Services._AuthenticationService.DefaultWebServicePath = '"); sb.Append(HttpUtility.JavaScriptStringEncode(defaultServicePath)); sb.Append("';\n"); } bool pathSpecified = !String.IsNullOrEmpty(serviceUrl); if(pathSpecified) { if (sb == null) { sb = new StringBuilder(ApplicationServiceManager.StringBuilderCapacity); } sb.Append("Sys.Services.AuthenticationService.set_path('"); sb.Append(HttpUtility.JavaScriptStringEncode(serviceUrl)); sb.Append("');\n"); } // only emit this script if (1) the auth webservice is enabled or (2) a custom webservice url is specified if ((authEnabled || pathSpecified) && (context != null && context.Request.IsAuthenticated)) { Debug.Assert(sb != null); sb.Append("Sys.Services.AuthenticationService._setAuthenticated(true);\n"); } } [ DefaultValue(""), Category("Behavior"), NotifyParentProperty(true), ResourceDescription("ApplicationServiceManager_Path"), UrlProperty() ] public string Path { get { return _path ?? String.Empty; } set { _path = value; } } } } // 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
- LabelInfo.cs
- XNameConverter.cs
- PropertyGrid.cs
- MessageFormatterConverter.cs
- WhitespaceRuleLookup.cs
- NetworkCredential.cs
- OutputCacheProviderCollection.cs
- FileUtil.cs
- DrawingServices.cs
- DoubleStorage.cs
- UnicodeEncoding.cs
- DropAnimation.xaml.cs
- ObjRef.cs
- ContractReference.cs
- sqlcontext.cs
- TaiwanCalendar.cs
- UseManagedPresentationBindingElementImporter.cs
- WindowsFormsLinkLabel.cs
- MbpInfo.cs
- ListBoxDesigner.cs
- MarkupCompiler.cs
- ProtocolImporter.cs
- _AcceptOverlappedAsyncResult.cs
- FreezableDefaultValueFactory.cs
- TypeConstant.cs
- DrawToolTipEventArgs.cs
- MachineKeyConverter.cs
- NumberSubstitution.cs
- TraceSource.cs
- DataGridComponentEditor.cs
- TypeBuilderInstantiation.cs
- TrackingDataItem.cs
- LayoutTableCell.cs
- TreeNodeStyle.cs
- ListControlDesigner.cs
- CodeNamespaceImport.cs
- BindingNavigator.cs
- BufferedReadStream.cs
- GridItemPattern.cs
- JapaneseCalendar.cs
- WebBrowserProgressChangedEventHandler.cs
- XPathScanner.cs
- HtmlTableRowCollection.cs
- BitmapEffectDrawingContextState.cs
- GeometryHitTestParameters.cs
- SortedDictionary.cs
- InputQueueChannelAcceptor.cs
- ImageProxy.cs
- WebPartTracker.cs
- XmlSchemaFacet.cs
- TabControlAutomationPeer.cs
- XPathBuilder.cs
- DataRelationCollection.cs
- PerformanceCountersElement.cs
- SystemGatewayIPAddressInformation.cs
- PerformanceCountersElement.cs
- RightsController.cs
- SystemWebSectionGroup.cs
- WsdlImporter.cs
- BitmapMetadataBlob.cs
- WindowsScroll.cs
- HierarchicalDataSourceControl.cs
- TextEditorThreadLocalStore.cs
- AdornerHitTestResult.cs
- BamlLocalizer.cs
- HttpRawResponse.cs
- EntityContainer.cs
- AddInToken.cs
- AttributeProviderAttribute.cs
- WindowsComboBox.cs
- GZipDecoder.cs
- Process.cs
- DataContractJsonSerializerOperationBehavior.cs
- Keywords.cs
- PointHitTestResult.cs
- HtmlValidatorAdapter.cs
- TriggerActionCollection.cs
- HighContrastHelper.cs
- backend.cs
- NameValueCache.cs
- ComponentTray.cs
- DSACryptoServiceProvider.cs
- StylusPointProperties.cs
- OleDbStruct.cs
- MasterPageParser.cs
- RequestChannelBinder.cs
- HuffCodec.cs
- TextStore.cs
- BitmapSource.cs
- TableItemStyle.cs
- exports.cs
- DayRenderEvent.cs
- CompilerError.cs
- TransactionBehavior.cs
- PropertyItem.cs
- SignatureDescription.cs
- WindowsTreeView.cs
- TabControlCancelEvent.cs
- MenuEventArgs.cs
- EtwTrace.cs