56 lines
852 B
C++
56 lines
852 B
C++
// Copyright (c) .NET Foundation. All rights reserved.
|
|
// Licensed under the MIT License. See License.txt in the project root for license information.
|
|
|
|
#pragma once
|
|
|
|
#include "irequesthandler.h"
|
|
|
|
enum APPLICATION_STATUS
|
|
{
|
|
UNKNOWN = 0,
|
|
STARTING,
|
|
RUNNING,
|
|
SHUTDOWN,
|
|
FAIL
|
|
};
|
|
|
|
struct APPLICATION_PARAMETER
|
|
{
|
|
LPCSTR pzName;
|
|
PVOID pValue;
|
|
};
|
|
|
|
class IAPPLICATION
|
|
{
|
|
public:
|
|
|
|
virtual
|
|
VOID
|
|
ShutDown() = 0;
|
|
|
|
virtual
|
|
VOID
|
|
Recycle() = 0;
|
|
|
|
virtual
|
|
~IAPPLICATION() = 0 { };
|
|
|
|
virtual
|
|
APPLICATION_STATUS
|
|
QueryStatus() = 0;
|
|
|
|
virtual
|
|
VOID
|
|
ReferenceApplication() = 0;
|
|
|
|
virtual
|
|
VOID
|
|
DereferenceApplication() = 0;
|
|
|
|
virtual
|
|
HRESULT
|
|
CreateHandler(
|
|
_In_ IHttpContext *pHttpContext,
|
|
_Out_ IREQUEST_HANDLER **pRequestHandler) = 0;
|
|
};
|