Upload_server_g.h 1.7 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283
  1. #ifndef __UPLOAD_SERVER_G_H
  2. #define __UPLOAD_SERVER_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_ServerSessionBase : public CServerSessionBase
  8. {
  9. public:
  10. UploadService_ServerSessionBase()
  11. {
  12. /// override by user
  13. }
  14. virtual ~UploadService_ServerSessionBase()
  15. {
  16. /// override by user
  17. }
  18. virtual bool IsExclusive() { return false; }
  19. virtual bool IsSessionOverlap() { return true; }
  20. virtual ErrorCodeEnum GetMessageAttr(DWORD dwMessageID, DWORD dwSignature, bool &bOverlap)
  21. {
  22. ErrorCodeEnum Error = Error_Succeed;
  23. switch (dwMessageID) {
  24. default:
  25. Error = Error_MethodNotFound;
  26. break;
  27. }
  28. return Error;
  29. }
  30. int CheckMessageSignature(DWORD dwMessageID, DWORD dwSignature)
  31. {
  32. ErrorCodeEnum Error = Error_Succeed;
  33. switch (dwMessageID) {
  34. default:
  35. Error = Error_MethodNotFound;
  36. break;
  37. }
  38. return Error;
  39. }
  40. virtual void OnRequest(CSmartPointer<ITransactionContext> pTransactionContext)
  41. {
  42. CAutoBuffer Buf;
  43. DWORD dwMessageID;
  44. DWORD dwMessageSignature;
  45. ErrorCodeEnum Error = pTransactionContext->GetReceiveBuffer(dwMessageID, dwMessageSignature, Buf);
  46. if (Error == Error_Succeed) {
  47. #ifdef DEBUG
  48. assert(CheckMessageSignature(dwMessageID, dwMessageSignature) == Error_Succeed);
  49. #else
  50. if (CheckMessageSignature(dwMessageID, dwMessageSignature) != Error_Succeed) {
  51. pTransactionContext->SendAnswer(Error_MethodSignatureFailed);
  52. return;
  53. }
  54. #endif
  55. switch (dwMessageID) {
  56. default:
  57. assert(0);
  58. break;
  59. }
  60. } else {
  61. pTransactionContext->SendAnswer(Error);
  62. }
  63. }
  64. };
  65. ///////////////////////////
  66. } // namespace Upload
  67. #endif // __UPLOAD_SERVER_G_H