You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
97 lines
3.8 KiB
97 lines
3.8 KiB
//-----------------------------------------------------------------------------
|
|
//
|
|
//
|
|
// File: aqintrnl.idl
|
|
//
|
|
// Description: IDL file that defines the internal AQueue COM interfaces.
|
|
//
|
|
// Author: Mike Swafford (MikeSwa)
|
|
//
|
|
// History:
|
|
// 7/19/99 - MikeSwa Split from aqueue.idl.
|
|
//
|
|
// Copyright (C) 1997, 1999 Microsoft Corporation
|
|
//
|
|
//-----------------------------------------------------------------------------
|
|
|
|
import "oaidl.idl";
|
|
import "ocidl.idl";
|
|
import "mailmsg.idl";
|
|
|
|
//---[ IConnectionRetryManager ]-----------------------------------------------
|
|
//
|
|
//
|
|
// Description: Public interface that exposes methods that allow scheduled
|
|
// connections and specialized retry logic.
|
|
//
|
|
//
|
|
//-----------------------------------------------------------------------------
|
|
[
|
|
object,
|
|
uuid(B870CE2B-A755-11d2-A6A9-00C04FA3490A),
|
|
helpstring("IConnectionRetryManager Interface"),
|
|
pointer_default(unique)
|
|
]
|
|
interface IConnectionRetryManager : IUnknown
|
|
{
|
|
[helpstring("method RetryLink")] HRESULT RetryLink(
|
|
[in] DWORD cbDomainName,
|
|
[in, size_is(cbDomainName + 1)] CHAR szDomainName[],
|
|
[in] DWORD dwScheduleID,
|
|
[in] GUID guidTransportSink);
|
|
};
|
|
|
|
//---[ IConnectionRetrySink ]---------------------------------------------------
|
|
//
|
|
//
|
|
// Description: Interface used handle retry logic.
|
|
//
|
|
// Note: If the fAllowImmediateRetry is
|
|
// set to TRUE, the given <domain, schedule> will be immediately put back
|
|
// into the pool from which connections are made. If FALSE, a call to
|
|
// RetryLink() must be made before any connections will
|
|
// be allocated for the given <domain, schedule>.
|
|
//-----------------------------------------------------------------------------
|
|
[
|
|
object,
|
|
uuid(B870CE2A-A755-11d2-A6A9-00C04FA3490A),
|
|
helpstring("IConnectionRetrySink Interface"),
|
|
pointer_default(unique)
|
|
]
|
|
interface IConnectionRetrySink : IUnknown
|
|
{
|
|
//Notification when a connection is released
|
|
[helpstring("method ConnectionReleased")] HRESULT ConnectionReleased(
|
|
[in] DWORD cbDomainName,
|
|
[in, size_is(cbDomainName+1)] CHAR szDomainName[],
|
|
[in] DWORD dwDomainInfoFlags, //DomainInfo configuration Flags
|
|
[in] DWORD dwScheduleID,
|
|
[in] GUID guidRouting,
|
|
[in] DWORD dwConnectionStatus, //eConnectionStatus
|
|
[in] DWORD cFailedMessages, //# of failed message for *this* connection
|
|
[in] DWORD cTriedMessages, //# of tried messages for *this* connection
|
|
[in] DWORD cConsecutiveConnectionFailures,//# of other active connections for this domain
|
|
[out] BOOL *pfAllowImmediateRetry,
|
|
[out] FILETIME *pftNextRetryAttempt);
|
|
|
|
};
|
|
|
|
//---[ IAQServerEvent ]--------------------------------------------------------
|
|
//
|
|
//
|
|
// Description: Internal interface used for fireing server events.
|
|
//
|
|
//-----------------------------------------------------------------------------
|
|
[
|
|
object,
|
|
uuid(ADF14E9C-B756-423c-AEF5-31C53A6CDC0B),
|
|
helpstring("IAQServerEvent"),
|
|
pointer_default(unique),
|
|
local
|
|
]
|
|
interface IAQServerEvent : IUnknown
|
|
{
|
|
HRESULT TriggerServerEvent(
|
|
[in] DWORD dwEventID,
|
|
[in] PVOID pvContext);
|
|
};
|