66 lines
1.8 KiB
C
66 lines
1.8 KiB
C
|
#ifndef _CDL_AGENT_HXX_INCLUDED
|
||
|
#define _CDL_AGENT_HXX_INCLUDED
|
||
|
|
||
|
class CDLAgentBSC;
|
||
|
|
||
|
class CCDLAgent : public CDeliveryAgent,
|
||
|
public CRunDeliveryAgentSink
|
||
|
{
|
||
|
private:
|
||
|
virtual ~CCDLAgent();
|
||
|
|
||
|
public:
|
||
|
CCDLAgent();
|
||
|
|
||
|
// virtual functions overriding CDeliveryAgent
|
||
|
|
||
|
public:
|
||
|
void CleanUp();
|
||
|
HRESULT AgentAbort(DWORD dwFlags);
|
||
|
HRESULT AgentPause(DWORD dwFlags);
|
||
|
HRESULT AgentResume(DWORD dwFlags);
|
||
|
|
||
|
protected:
|
||
|
HRESULT StartOperation();
|
||
|
HRESULT StartDownload();
|
||
|
HRESULT ModifyUpdateEnd(ISubscriptionItem *pEndItem, UINT *puiRes);
|
||
|
|
||
|
public:
|
||
|
void SetEndStatus(HRESULT hr) { CDeliveryAgent::SetEndStatus(hr); }
|
||
|
void SetErrorEndText(LPCWSTR szErrorText);
|
||
|
LPWSTR GetErrorMessage(HRESULT hr);
|
||
|
|
||
|
HRESULT StartNextDownload(LPWSTR szCodeBase, DWORD dwSize);
|
||
|
HRESULT OnAgentEnd(const SUBSCRIPTIONCOOKIE *, long, HRESULT, LPCWSTR, BOOL);
|
||
|
|
||
|
private:
|
||
|
|
||
|
IXMLElement* m_pSoftDistElement;
|
||
|
union {
|
||
|
LPWSTR m_szCDF;
|
||
|
LPWSTR m_szURL;
|
||
|
};
|
||
|
LPWSTR m_szDistUnit;
|
||
|
SOFTDISTINFO m_sdi;
|
||
|
LPWSTR m_szErrorText;
|
||
|
DWORD m_dwVersionMS;
|
||
|
DWORD m_dwVersionLS;
|
||
|
|
||
|
CDLAgentBSC *m_pCCDLAgentBSC;
|
||
|
ISoftDistExt *m_pSoftDistExt;
|
||
|
|
||
|
BOOL m_bAcceptSoftware;
|
||
|
BOOL m_bSendEmail;
|
||
|
BOOL m_bSilentMode;
|
||
|
|
||
|
DWORD m_dwChannelFlags;
|
||
|
DWORD m_dwAgentFlags;
|
||
|
DWORD m_dwMaxSizeKB;
|
||
|
DWORD m_dwCurSize;
|
||
|
|
||
|
CRunDeliveryAgent *m_pAgent;
|
||
|
};
|
||
|
|
||
|
#endif
|
||
|
|