Upload_client_g.h 1.5 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980
  1. #ifndef __UPLOAD_CLIENT_G_H
  2. #define __UPLOAD_CLIENT_G_H
  3. #pragma once
  4. // This code is generated by spgen tool!
  5. #include "Upload_def_g.h"
  6. namespace Upload {
  7. class UploadService_ClientBase : public CClientSessionBase {
  8. public:
  9. explicit UploadService_ClientBase(CEntityBase *pEntity) : m_pEntityBase(pEntity), m_bSysManaged(false) {}
  10. UploadService_ClientBase* operator () (const linkContext &curLink)
  11. {
  12. m_context = curLink;
  13. return this;
  14. }
  15. protected:
  16. virtual ~UploadService_ClientBase()
  17. {
  18. /// override by user
  19. }
  20. public:
  21. void OnConnectSucceed()
  22. {
  23. bSessionClosed = false;
  24. }
  25. void OnClose(ErrorCodeEnum)
  26. {
  27. bSessionClosed = true;
  28. }
  29. bool QuerySessionClosed()
  30. {
  31. return bSessionClosed;
  32. }
  33. ErrorCodeEnum Connect(CSmartPointer<IAsynWaitSp> &spAsyncWait)
  34. {
  35. CSmartPointer<IEntityFunction> pFunc = m_pEntityBase->GetFunction();
  36. ErrorCodeEnum Error = pFunc->ConnectRemoteEntity(this, "Upload", "UploadService", spAsyncWait);
  37. if (Error == Error_Succeed) {
  38. m_bSysManaged = true;
  39. bSessionClosed = false;
  40. }
  41. return Error;
  42. }
  43. ErrorCodeEnum Connect()
  44. {
  45. CSmartPointer<IAsynWaitSp> spAsyncWait;
  46. ErrorCodeEnum Error = Connect(spAsyncWait);
  47. if (Error == Error_Succeed) {
  48. Error = spAsyncWait->WaitAnswer();
  49. }
  50. return Error;
  51. }
  52. bool SafeDelete()
  53. {
  54. if (!m_bSysManaged) {
  55. delete this;
  56. }
  57. return m_bSysManaged;
  58. }
  59. protected:
  60. bool m_bSysManaged;
  61. CEntityBase *m_pEntityBase;
  62. linkContext m_context;
  63. bool bSessionClosed;
  64. };
  65. ///////////////////////////
  66. } // namespace Upload
  67. #endif // __UPLOAD_CLIENT_G_H