1234567891011121314151617181920212223242526272829303132333435 |
- #pragma once
- #include "SpTransactionContext.h"
- #include "sp_ses.h"
- #include "sp_mod.h"
- class SpServerSessionFunction : public IServerSessionFunction
- {
- public:
- SpServerSessionFunction(SpEntity *pEntity, CServerSessionBase *pServerSessionBase, int remote_epid, int remote_svc_id, int conn_id);
- virtual ~SpServerSessionFunction();
- ErrorCodeEnum Begin();
- virtual const char *GetRemoteEntityName();
- virtual SessionStateEnum GetCurrentState();
- virtual ErrorCodeEnum CloseSession();
- static int __get_method_attr(sp_ses_uas_t *uas, int method_id, int method_sig, int *overlap, void *user_data);
- static void __on_req(sp_ses_uas_t *uas, int tsx_id, int method_id, int method_sig, int timeout, iobuffer_t **req_pkt, void *user_data);
- static void __on_info(sp_ses_uas_t *uas, int method_id, int method_sig, iobuffer_t **info_pkt, void *user_data);
- static void __on_close(sp_ses_uas_t *uas, int error, void *user_data);
- static void __on_destroy(sp_ses_uas_t *uas, void *user_data);
- int get_method_attr(int method_id, int method_sig, int *overlap);
- void on_req(int tsx_id, int method_id, int method_sig, int timeout, iobuffer_t **req_pkt);
- void on_info(int method_id, int method_sig, iobuffer_t **info_pkt);
- void on_close(int error);
- void on_destroy();
- private:
- CServerSessionBase *m_pServerSessionBase;
- sp_ses_uas_t *m_uas;
- sp_entity_t *m_remote_ent;
- };
|