52 lines
1.7 KiB
C#
52 lines
1.7 KiB
C#
|
//------------------------------------------------------------------------------
|
||
|
// <copyright file="IHttpHandlerFactory.cs" company="Microsoft">
|
||
|
// Copyright (c) Microsoft Corporation. All rights reserved.
|
||
|
// </copyright>
|
||
|
//------------------------------------------------------------------------------
|
||
|
|
||
|
/*
|
||
|
* Handler factory interface
|
||
|
*/
|
||
|
namespace System.Web {
|
||
|
|
||
|
using System.Security.Permissions;
|
||
|
/*
|
||
|
* Handler factory -- gets Handler by requestType,path,file
|
||
|
*/
|
||
|
|
||
|
/// <devdoc>
|
||
|
/// <para>
|
||
|
/// Defines the contract that factories must implement to dynamically
|
||
|
/// create IHttpHandler instances.
|
||
|
/// </para>
|
||
|
/// </devdoc>
|
||
|
public interface IHttpHandlerFactory {
|
||
|
|
||
|
/// <devdoc>
|
||
|
/// <para>
|
||
|
/// Returns an instance of an IHttpHandler class.
|
||
|
/// </para>
|
||
|
/// </devdoc>
|
||
|
IHttpHandler GetHandler(HttpContext context, String requestType, String url, String pathTranslated);
|
||
|
|
||
|
/// <devdoc>
|
||
|
/// <para>
|
||
|
/// Enables a factory to recycle or re-use an existing handler
|
||
|
/// instance.
|
||
|
/// </para>
|
||
|
/// </devdoc>
|
||
|
void ReleaseHandler(IHttpHandler handler);
|
||
|
}
|
||
|
|
||
|
internal interface IHttpHandlerFactory2 : IHttpHandlerFactory {
|
||
|
|
||
|
/// <devdoc>
|
||
|
/// <para>
|
||
|
/// Returns an instance of an IHttpHandler class. Works directly with a VirtualPath object
|
||
|
/// to avoid unnecessary conversions and creations.
|
||
|
/// </para>
|
||
|
/// </devdoc>
|
||
|
IHttpHandler GetHandler(HttpContext context, String requestType, VirtualPath virtualPath, String physicalPath);
|
||
|
}
|
||
|
}
|