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
- XmlSchemaSimpleContentRestriction.cs
- SudsWriter.cs
- XmlConvert.cs
- TemplatePropertyEntry.cs
- RTLAwareMessageBox.cs
- XamlStream.cs
- LiteralControl.cs
- TaskDesigner.cs
- DataSourceConverter.cs
- MemberInfoSerializationHolder.cs
- PartBasedPackageProperties.cs
- RecordBuilder.cs
- Span.cs
- MimeWriter.cs
- Highlights.cs
- ColorConvertedBitmap.cs
- Classification.cs
- CodeTypeOfExpression.cs
- HybridWebProxyFinder.cs
- XmlSchemaAttributeGroupRef.cs
- PersianCalendar.cs
- EventData.cs
- WindowsListViewItem.cs
- ConfigurationStrings.cs
- SqlError.cs
- FamilyMap.cs
- TimeSpanValidator.cs
- ActivityInfo.cs
- RowToParametersTransformer.cs
- WebPartConnectionsCancelVerb.cs
- SizeAnimationUsingKeyFrames.cs
- CacheChildrenQuery.cs
- UpDownEvent.cs
- HotSpot.cs
- SafeLibraryHandle.cs
- CopyAttributesAction.cs
- MobileTextWriter.cs
- HwndStylusInputProvider.cs
- DbProviderFactories.cs
- Brushes.cs
- WebServicesInteroperability.cs
- MenuCommands.cs
- SpnEndpointIdentityExtension.cs
- SchemaImporterExtensionsSection.cs
- MultilineStringConverter.cs
- XmlnsDefinitionAttribute.cs
- OdbcConnectionStringbuilder.cs
- userdatakeys.cs
- HttpEncoder.cs
- DataGridItemCollection.cs
- ProviderCommandInfoUtils.cs
- MethodBody.cs
- ObjectCache.cs
- SafeThreadHandle.cs
- PrintPreviewGraphics.cs
- DeliveryStrategy.cs
- StringResourceManager.cs
- Logging.cs
- TerminateWorkflow.cs
- HttpServerChannel.cs
- PreviewKeyDownEventArgs.cs
- WebPartManager.cs
- ColumnTypeConverter.cs
- CodeAttributeArgument.cs
- CodePropertyReferenceExpression.cs
- DBCommand.cs
- CacheOutputQuery.cs
- RadioButtonFlatAdapter.cs
- ClientTargetSection.cs
- ObjectIDGenerator.cs
- CodeDefaultValueExpression.cs
- SponsorHelper.cs
- ConfigXmlDocument.cs
- Deflater.cs
- TableAutomationPeer.cs
- COM2Properties.cs
- Operators.cs
- GPRECT.cs
- XmlSchemaProviderAttribute.cs
- GraphicsContext.cs
- IsolatedStorageFile.cs
- KeyboardDevice.cs
- CompositeDataBoundControl.cs
- SqlCaseSimplifier.cs
- DbConnectionClosed.cs
- XmlDataFileEditor.cs
- ExpandableObjectConverter.cs
- HtmlInputSubmit.cs
- WindowsFormsHost.cs
- FieldBuilder.cs
- SoapMessage.cs
- BaseCodeDomTreeGenerator.cs
- ApplicationServiceHelper.cs
- Funcletizer.cs
- PropertyGridCommands.cs
- GridLengthConverter.cs
- OracleTimeSpan.cs
- MediaEntryAttribute.cs
- BooleanExpr.cs
- TemplateApplicationHelper.cs