AccessAuthorization_server_g.h 8.1 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272
  1. #ifndef __ACCESSAUTHORIZATION_SERVER_G_H
  2. #define __ACCESSAUTHORIZATION_SERVER_G_H
  3. #pragma once
  4. // This code is generated by spgen tool!
  5. #include "AccessAuthorization_def_g.h"
  6. namespace AccessAuthorization {
  7. class AccessAuthService_ServerSessionBase : public CServerSessionBase
  8. {
  9. public:
  10. AccessAuthService_ServerSessionBase()
  11. {
  12. /// override by user
  13. }
  14. virtual ~AccessAuthService_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. case AccessAuthService_Method_Regist:
  25. if (dwSignature == AccessAuthService_MethodSignature_Regist) {
  26. bOverlap = true;
  27. } else {
  28. Error = Error_MethodSignatureFailed;
  29. }
  30. break;
  31. case AccessAuthService_Method_Unregist:
  32. if (dwSignature == AccessAuthService_MethodSignature_Unregist) {
  33. bOverlap = true;
  34. } else {
  35. Error = Error_MethodSignatureFailed;
  36. }
  37. break;
  38. case AccessAuthService_Method_InitDev:
  39. if (dwSignature == AccessAuthService_MethodSignature_InitDev) {
  40. bOverlap = true;
  41. } else {
  42. Error = Error_MethodSignatureFailed;
  43. }
  44. break;
  45. case AccessAuthService_Method_UpdateWK:
  46. if (dwSignature == AccessAuthService_MethodSignature_UpdateWK) {
  47. bOverlap = true;
  48. } else {
  49. Error = Error_MethodSignatureFailed;
  50. }
  51. break;
  52. case AccessAuthService_Method_InitializeNew:
  53. if (dwSignature == AccessAuthService_MethodSignature_InitializeNew) {
  54. bOverlap = true;
  55. } else {
  56. Error = Error_MethodSignatureFailed;
  57. }
  58. break;
  59. case AccessAuthService_Method_SyncTime:
  60. if (dwSignature == AccessAuthService_MethodSignature_SyncTime) {
  61. bOverlap = true;
  62. } else {
  63. Error = Error_MethodSignatureFailed;
  64. }
  65. break;
  66. case AccessAuthService_Method_GetNetMsg:
  67. if (dwSignature == AccessAuthService_MethodSignature_GetNetMsg) {
  68. bOverlap = true;
  69. } else {
  70. Error = Error_MethodSignatureFailed;
  71. }
  72. break;
  73. default:
  74. Error = Error_MethodNotFound;
  75. break;
  76. }
  77. return Error;
  78. }
  79. int CheckMessageSignature(DWORD dwMessageID, DWORD dwSignature)
  80. {
  81. ErrorCodeEnum Error = Error_Succeed;
  82. switch (dwMessageID) {
  83. case AccessAuthService_Method_Regist:
  84. if (dwSignature != AccessAuthService_MethodSignature_Regist) {
  85. Error = Error_MethodSignatureFailed;
  86. }
  87. break;
  88. case AccessAuthService_Method_Unregist:
  89. if (dwSignature != AccessAuthService_MethodSignature_Unregist) {
  90. Error = Error_MethodSignatureFailed;
  91. }
  92. break;
  93. case AccessAuthService_Method_InitDev:
  94. if (dwSignature != AccessAuthService_MethodSignature_InitDev) {
  95. Error = Error_MethodSignatureFailed;
  96. }
  97. break;
  98. case AccessAuthService_Method_UpdateWK:
  99. if (dwSignature != AccessAuthService_MethodSignature_UpdateWK) {
  100. Error = Error_MethodSignatureFailed;
  101. }
  102. break;
  103. case AccessAuthService_Method_InitializeNew:
  104. if (dwSignature != AccessAuthService_MethodSignature_InitializeNew) {
  105. Error = Error_MethodSignatureFailed;
  106. }
  107. break;
  108. case AccessAuthService_Method_SyncTime:
  109. if (dwSignature != AccessAuthService_MethodSignature_SyncTime) {
  110. Error = Error_MethodSignatureFailed;
  111. }
  112. break;
  113. case AccessAuthService_Method_GetNetMsg:
  114. if (dwSignature != AccessAuthService_MethodSignature_GetNetMsg) {
  115. Error = Error_MethodSignatureFailed;
  116. }
  117. break;
  118. default:
  119. Error = Error_MethodNotFound;
  120. break;
  121. }
  122. return Error;
  123. }
  124. virtual void Handle_Regist(SpOnewayCallContext<AccessAuthService_Regist_Info>::Pointer ctx)
  125. {
  126. /// override by user
  127. }
  128. virtual void Handle_Unregist(SpOnewayCallContext<AccessAuthService_Unregist_Info>::Pointer ctx)
  129. {
  130. /// override by user
  131. }
  132. virtual void Handle_InitDev(SpReqAnsContext<AccessAuthService_InitDev_Req, AccessAuthService_InitDev_Ans>::Pointer ctx)
  133. {
  134. /// override by user
  135. }
  136. virtual void Handle_UpdateWK(SpOnewayCallContext<AccessAuthService_UpdateWK_Info>::Pointer ctx)
  137. {
  138. /// override by user
  139. }
  140. virtual void Handle_InitializeNew(SpReqAnsContext<AccessAuthService_InitializeNew_Req, AccessAuthService_InitializeNew_Ans>::Pointer ctx)
  141. {
  142. /// override by user
  143. }
  144. virtual void Handle_SyncTime(SpOnewayCallContext<AccessAuthService_SyncTime_Info>::Pointer ctx)
  145. {
  146. /// override by user
  147. }
  148. virtual void Handle_GetNetMsg(SpReqAnsContext<AccessAuthService_GetNetMsg_Req, AccessAuthService_GetNetMsg_Ans>::Pointer ctx)
  149. {
  150. /// override by user
  151. }
  152. virtual void OnRequest(CSmartPointer<ITransactionContext> pTransactionContext)
  153. {
  154. CAutoBuffer Buf;
  155. DWORD dwMessageID;
  156. DWORD dwMessageSignature;
  157. ErrorCodeEnum Error = pTransactionContext->GetReceiveBuffer(dwMessageID, dwMessageSignature, Buf);
  158. if (Error == Error_Succeed) {
  159. #ifdef DEBUG
  160. assert(CheckMessageSignature(dwMessageID, dwMessageSignature) == Error_Succeed);
  161. #else
  162. if (CheckMessageSignature(dwMessageID, dwMessageSignature) != Error_Succeed) {
  163. pTransactionContext->SendAnswer(Error_MethodSignatureFailed);
  164. return;
  165. }
  166. #endif
  167. switch (dwMessageID) {
  168. case AccessAuthService_Method_Regist:
  169. {
  170. SpOnewayCallContext<AccessAuthService_Regist_Info>::Pointer ctx;
  171. ctx.Attach(new SpOnewayCallContext<AccessAuthService_Regist_Info>());
  172. SpBuffer2Object(Buf, ctx->Info);
  173. pTransactionContext->GetLinkContext(ctx->link);
  174. EntityResource::setLink(ctx->link);
  175. Handle_Regist(ctx);
  176. }
  177. break;
  178. case AccessAuthService_Method_Unregist:
  179. {
  180. SpOnewayCallContext<AccessAuthService_Unregist_Info>::Pointer ctx;
  181. ctx.Attach(new SpOnewayCallContext<AccessAuthService_Unregist_Info>());
  182. SpBuffer2Object(Buf, ctx->Info);
  183. pTransactionContext->GetLinkContext(ctx->link);
  184. EntityResource::setLink(ctx->link);
  185. Handle_Unregist(ctx);
  186. }
  187. break;
  188. case AccessAuthService_Method_InitDev:
  189. {
  190. SpReqAnsContext<AccessAuthService_InitDev_Req,AccessAuthService_InitDev_Ans>::Pointer ctx;
  191. ctx.Attach(new SpReqAnsContext<AccessAuthService_InitDev_Req,AccessAuthService_InitDev_Ans>(pTransactionContext));
  192. SpBuffer2Object(Buf, ctx->Req);
  193. pTransactionContext->GetLinkContext(ctx->link);
  194. EntityResource::setLink(ctx->link);
  195. Handle_InitDev(ctx);
  196. }
  197. break;
  198. case AccessAuthService_Method_UpdateWK:
  199. {
  200. SpOnewayCallContext<AccessAuthService_UpdateWK_Info>::Pointer ctx;
  201. ctx.Attach(new SpOnewayCallContext<AccessAuthService_UpdateWK_Info>());
  202. SpBuffer2Object(Buf, ctx->Info);
  203. pTransactionContext->GetLinkContext(ctx->link);
  204. EntityResource::setLink(ctx->link);
  205. Handle_UpdateWK(ctx);
  206. }
  207. break;
  208. case AccessAuthService_Method_InitializeNew:
  209. {
  210. SpReqAnsContext<AccessAuthService_InitializeNew_Req,AccessAuthService_InitializeNew_Ans>::Pointer ctx;
  211. ctx.Attach(new SpReqAnsContext<AccessAuthService_InitializeNew_Req,AccessAuthService_InitializeNew_Ans>(pTransactionContext));
  212. SpBuffer2Object(Buf, ctx->Req);
  213. pTransactionContext->GetLinkContext(ctx->link);
  214. EntityResource::setLink(ctx->link);
  215. Handle_InitializeNew(ctx);
  216. }
  217. break;
  218. case AccessAuthService_Method_SyncTime:
  219. {
  220. SpOnewayCallContext<AccessAuthService_SyncTime_Info>::Pointer ctx;
  221. ctx.Attach(new SpOnewayCallContext<AccessAuthService_SyncTime_Info>());
  222. SpBuffer2Object(Buf, ctx->Info);
  223. pTransactionContext->GetLinkContext(ctx->link);
  224. EntityResource::setLink(ctx->link);
  225. Handle_SyncTime(ctx);
  226. }
  227. break;
  228. case AccessAuthService_Method_GetNetMsg:
  229. {
  230. SpReqAnsContext<AccessAuthService_GetNetMsg_Req,AccessAuthService_GetNetMsg_Ans>::Pointer ctx;
  231. ctx.Attach(new SpReqAnsContext<AccessAuthService_GetNetMsg_Req,AccessAuthService_GetNetMsg_Ans>(pTransactionContext));
  232. SpBuffer2Object(Buf, ctx->Req);
  233. pTransactionContext->GetLinkContext(ctx->link);
  234. EntityResource::setLink(ctx->link);
  235. Handle_GetNetMsg(ctx);
  236. }
  237. break;
  238. default:
  239. assert(0);
  240. break;
  241. }
  242. } else {
  243. pTransactionContext->SendAnswer(Error);
  244. }
  245. }
  246. };
  247. ///////////////////////////
  248. } // namespace AccessAuthorization
  249. #endif // __ACCESSAUTHORIZATION_SERVER_G_H