in Include/httpserv_xp.h [1690:1872]
class __declspec(uuid("eda2a40f-fb92-4d6d-b52b-c8c207380b4e"))
IHttpServer
{
public:
virtual
BOOL
IsCommandLineLaunch(
VOID
) const = 0;
virtual
PCWSTR
GetAppPoolName(
VOID
) const = 0;
virtual
HRESULT
AssociateWithThreadPool(
IN HANDLE hHandle,
IN LPOVERLAPPED_COMPLETION_ROUTINE completionRoutine
) = 0;
virtual
VOID
IncrementThreadCount(
VOID
) = 0;
virtual
VOID
DecrementThreadCount(
VOID
) = 0;
virtual
VOID
ReportUnhealthy(
IN PCWSTR pszReasonString,
IN HRESULT hrReason
) = 0;
virtual
VOID
RecycleProcess(
PCWSTR pszReason
) = 0;
virtual
IAppHostAdminManager *
GetAdminManager(
VOID
) const = 0;
virtual
HRESULT
GetFileInfo(
IN PCWSTR pszPhysicalPath,
IN HANDLE hUserToken,
IN PSID pSid,
IN PCWSTR pszChangeNotificationPath,
IN HANDLE hChangeNotificationToken,
IN BOOL fCache,
OUT IHttpFileInfo ** ppFileInfo,
IN IHttpTraceContext * pHttpTraceContext = NULL
) = 0;
virtual
HRESULT
FlushKernelCache(
IN PCWSTR pszUrl
) = 0;
virtual
HRESULT
DoCacheOperation(
IN CACHE_OPERATION cacheOperation,
IN IHttpCacheKey * pCacheKey,
OUT IHttpCacheSpecificData ** ppCacheSpecificData,
IN IHttpTraceContext * pHttpTraceContext = NULL
) = 0;
virtual
GLOBAL_NOTIFICATION_STATUS
NotifyCustomNotification(
ICustomNotificationProvider * pCustomOutput
) = 0;
virtual
IHttpPerfCounterInfo *
GetPerfCounterInfo(
VOID
) = 0;
virtual
VOID
RecycleApplication(
PCWSTR pszAppConfigPath
) = 0;
virtual
VOID
NotifyConfigurationChange(
PCWSTR pszPath
) = 0;
virtual
VOID
NotifyFileChange(
PCWSTR pszFileName
) = 0;
virtual
IDispensedHttpModuleContextContainer *
DispenseContainer(
VOID
) = 0;
virtual
HRESULT
AddFragmentToCache(
IN HTTP_DATA_CHUNK * pDataChunk,
PCWSTR pszFragmentName
) = 0;
virtual
HRESULT
ReadFragmentFromCache(
PCWSTR pszFragmentName,
OUT BYTE * pvBuffer,
DWORD cbSize,
OUT DWORD * pcbCopied
) = 0;
virtual
HRESULT
RemoveFragmentFromCache(
PCWSTR pszFragmentName
) = 0;
virtual
HRESULT
GetWorkerProcessSettings(
OUT IWpfSettings ** ppWorkerProcessSettings
) = 0;
virtual
HRESULT
GetProtocolManagerCustomInterface(
IN PCWSTR pProtocolManagerDll,
IN PCWSTR pProtocolManagerDllInitFunction,
IN DWORD dwCustomInterfaceId,
OUT PVOID* ppCustomInterface
) = 0;
virtual
BOOL
SatisfiesPrecondition(
PCWSTR pszPrecondition,
BOOL * pfUnknownPrecondition = NULL
) const = 0;
virtual
IHttpTraceContext *
GetTraceContext(
VOID
) const = 0;
virtual
HRESULT
RegisterFileChangeMonitor(
PCWSTR pszPath,
HANDLE hToken,
IHttpFileMonitor ** ppFileMonitor
) = 0;
virtual
HRESULT
GetExtendedInterface(
IN HTTP_SERVER_INTERFACE_VERSION version,
OUT PVOID * ppInterface
) = 0;
};