Code:
/ DotNET / DotNET / 8.0 / untmp / Orcas / RTM / ndp / fx / src / xsp / System / Web / Extensions / Script / Services / RestHandlerFactory.cs / 1 / RestHandlerFactory.cs
//------------------------------------------------------------------------------ //// Copyright (c) Microsoft Corporation. All rights reserved. // //----------------------------------------------------------------------------- namespace System.Web.Script.Services { internal class RestHandlerFactory : IHttpHandlerFactory { internal const string ClientProxyRequestPathInfo = "/js"; internal const string ClientDebugProxyRequestPathInfo = "/jsdebug"; public virtual IHttpHandler GetHandler(HttpContext context, string requestType, string url, string pathTranslated) { if (context == null) { throw new ArgumentNullException("context"); } if (IsClientProxyRequest(context.Request.PathInfo)) { // It's a request for client side proxies return new RestClientProxyHandler(); } else { // The request is an actual call to a server method return RestHandler.CreateHandler(context); } } public virtual void ReleaseHandler(IHttpHandler handler) { } // Detects if this is a request we want to intercept, i.e. invocation or proxy request internal static bool IsRestRequest(HttpContext context) { return IsRestMethodCall(context.Request) || IsClientProxyRequest(context.Request.PathInfo); } // Detects if this is a method invocation, i.e. webservice call or page method call internal static bool IsRestMethodCall(HttpRequest request) { return !String.IsNullOrEmpty(request.PathInfo) && (request.ContentType.StartsWith("application/json;", StringComparison.OrdinalIgnoreCase) || string.Equals(request.ContentType, "application/json", StringComparison.OrdinalIgnoreCase)); } internal static bool IsClientProxyDebugRequest(string pathInfo) { return string.Equals(pathInfo, ClientDebugProxyRequestPathInfo, StringComparison.OrdinalIgnoreCase); } internal static bool IsClientProxyRequest(string pathInfo) { return (string.Equals(pathInfo, ClientProxyRequestPathInfo, StringComparison.OrdinalIgnoreCase) || IsClientProxyDebugRequest(pathInfo)); } } } // 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
- ConvertersCollection.cs
- SafeWaitHandle.cs
- CopyNodeSetAction.cs
- OperatingSystem.cs
- FormViewDeletedEventArgs.cs
- UserControl.cs
- SmtpNtlmAuthenticationModule.cs
- EntityTypeEmitter.cs
- DiagnosticTrace.cs
- RowType.cs
- EmptyCollection.cs
- ListControlConvertEventArgs.cs
- panel.cs
- SystemColorTracker.cs
- TripleDES.cs
- Bezier.cs
- ReadOnlyDictionary.cs
- ListParagraph.cs
- CFGGrammar.cs
- CodeBinaryOperatorExpression.cs
- Win32.cs
- Line.cs
- MTConfigUtil.cs
- FileLogRecordEnumerator.cs
- BindingNavigator.cs
- UrlPropertyAttribute.cs
- TaskFactory.cs
- SecureEnvironment.cs
- FixedTextBuilder.cs
- BaseInfoTable.cs
- ScrollEventArgs.cs
- OracleDataAdapter.cs
- UIInitializationException.cs
- ToolStripPanel.cs
- MissingManifestResourceException.cs
- ChannelEndpointElementCollection.cs
- CompiledRegexRunner.cs
- HttpRuntimeSection.cs
- DataKeyArray.cs
- OrderByQueryOptionExpression.cs
- AsyncCompletedEventArgs.cs
- TextRunTypographyProperties.cs
- DoubleCollectionValueSerializer.cs
- CodeParameterDeclarationExpressionCollection.cs
- DataGridComponentEditor.cs
- SID.cs
- SurrogateEncoder.cs
- XmlMtomReader.cs
- SemaphoreSecurity.cs
- MailDefinition.cs
- InputLanguageSource.cs
- WindowsEditBoxRange.cs
- QilSortKey.cs
- OleDbConnectionFactory.cs
- ComponentSerializationService.cs
- DispatcherTimer.cs
- StringFreezingAttribute.cs
- Tuple.cs
- DefaultObjectMappingItemCollection.cs
- BaseUriHelper.cs
- PeerContact.cs
- BamlLocalizerErrorNotifyEventArgs.cs
- XmlSchemaGroup.cs
- EntityDataSourceStatementEditorForm.cs
- Compiler.cs
- TeredoHelper.cs
- DefaultParameterValueAttribute.cs
- NumberFormatInfo.cs
- GridLengthConverter.cs
- SpellerInterop.cs
- TTSEngineProxy.cs
- ClientWindowsAuthenticationMembershipProvider.cs
- DynamicValueConverter.cs
- SQLRoleProvider.cs
- PerspectiveCamera.cs
- ActivityStateQuery.cs
- OlePropertyStructs.cs
- ResourceIDHelper.cs
- XmlSchemaGroup.cs
- XsdBuildProvider.cs
- DateTimeOffsetStorage.cs
- DivideByZeroException.cs
- RemoteWebConfigurationHostServer.cs
- VScrollBar.cs
- GlobalAclOperationRequirement.cs
- SchemaDeclBase.cs
- XmlSchemaSimpleTypeRestriction.cs
- Expressions.cs
- ListViewTableRow.cs
- EmptyStringExpandableObjectConverter.cs
- ScriptResourceHandler.cs
- Configuration.cs
- UnsafeNativeMethods.cs
- Visual3D.cs
- DataRowChangeEvent.cs
- ListViewItem.cs
- NavigationExpr.cs
- ListViewItemMouseHoverEvent.cs
- EntityRecordInfo.cs
- TabItemWrapperAutomationPeer.cs