IEBrowser_client_g.h 1.5 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566
  1. #ifndef __IEBROWSER_CLIENT_G_H
  2. #define __IEBROWSER_CLIENT_G_H
  3. #pragma once
  4. // This code is generated by spgen tool!
  5. #include "IEBrowser_def_g.h"
  6. namespace IEBrowser {
  7. class BrowserService_ClientBase : public CClientSessionBase {
  8. public:
  9. explicit BrowserService_ClientBase(CEntityBase *pEntity) : m_pEntityBase(pEntity), m_bSysManaged(false) {}
  10. protected:
  11. virtual ~BrowserService_ClientBase()
  12. {
  13. /// override by user
  14. }
  15. public:
  16. ErrorCodeEnum Connect(CSmartPointer<IAsynWaitSp> &spAsyncWait)
  17. {
  18. CSmartPointer<IEntityFunction> pFunc = m_pEntityBase->GetFunction();
  19. ErrorCodeEnum Error = pFunc->ConnectRemoteEntity(this, "IEBrowser", "BrowserService", spAsyncWait);
  20. if (Error == Error_Succeed) {
  21. m_bSysManaged = true;
  22. }
  23. return Error;
  24. }
  25. ErrorCodeEnum Connect()
  26. {
  27. CSmartPointer<IAsynWaitSp> spAsyncWait;
  28. ErrorCodeEnum Error = Connect(spAsyncWait);
  29. if (Error == Error_Succeed) {
  30. Error = spAsyncWait->WaitAnswer();
  31. }
  32. return Error;
  33. }
  34. ErrorCodeEnum SendEvent(BrowserService_SendEvent_Info &Info)
  35. {
  36. CSmartPointer<IClientSessionFunction> pFunc = GetFunction();
  37. CAutoBuffer Buf = SpObject2Buffer(Info);
  38. return pFunc->OnewayCall(BrowserService_Method_SendEvent, BrowserService_MethodSignature_SendEvent, Buf);
  39. }
  40. bool SafeDelete()
  41. {
  42. if (!m_bSysManaged) {
  43. delete this;
  44. }
  45. return m_bSysManaged;
  46. }
  47. private:
  48. bool m_bSysManaged;
  49. CEntityBase *m_pEntityBase;
  50. };
  51. ///////////////////////////
  52. } // namespace IEBrowser
  53. #endif // __IEBROWSER_CLIENT_G_H