#ifndef MOD_CUSTMNGRAUTH_H #define MOD_CUSTMNGRAUTH_H #pragma once #include "SpBase.h" #ifdef RVC_OS_WIN #else #include "SpTest.h" #include "modVer.h" #endif #include "CustMngrAuth_server_g.h" #include "CustMngrAuth_def_g.h" #include "CustMngrAuthFSM.h" using namespace CustMngrAuth; class CCustMngrAuthEntity; class CustMngrAuthServerSession : public CustMngrAuthService_ServerSessionBase { public: CustMngrAuthServerSession(CCustMngrAuthEntity* pEntity):m_pEntity(pEntity){} virtual ~CustMngrAuthServerSession(){} virtual void Handle_StartAuthorize(SpReqAnsContext::Pointer ctx); virtual void Handle_QueryAuthorInfo(SpReqAnsContext::Pointer ctx); virtual void Handle_StopAuthorize(SpReqAnsContext::Pointer ctx); virtual void Handle_StopAuthorizeEx(SpReqAnsContext::Pointer ctx); virtual void Handle_CollectFingerPrint(SpReqAnsContext::Pointer ctx); virtual void Handle_CollectFingerPrintEx(SpReqAnsContext::Pointer ctx); virtual void Handle_CollectFingerPrintInfo(SpReqAnsContext::Pointer ctx); virtual void Handle_GenerateTemplate(SpReqAnsContext::Pointer ctx); virtual void Handle_StopCollect(SpReqAnsContext::Pointer ctx); virtual void Handle_SaveFingerPrint(SpReqAnsContext::Pointer ctx); virtual void Handle_CheckUkey(SpReqAnsContext::Pointer ctx); virtual void Handle_HoldOn(SpReqAnsContext::Pointer ctx); private: CCustMngrAuthEntity* m_pEntity; }; class CCustMngrAuthEntity : public CEntityBase, public IBroadcastListener, public ITimerListener { public: CCustMngrAuthEntity(); virtual ~CCustMngrAuthEntity(){} virtual const char *GetEntityName() const; #ifdef RVC_OS_WIN #else virtual const char* GetEntityVersion() const { return MODULE_VERSION_FULL; } ON_ENTITYT_TEST(); #endif virtual void OnPreStart(CAutoArray strArgs, CSmartPointer pTransactionContext); virtual void OnPreClose(EntityCloseCauseEnum eCloseCause, CSmartPointer pTransactionContext); ErrorCodeEnum __OnStart(ErrorCodeEnum preOperationError); ErrorCodeEnum __OnClose(ErrorCodeEnum preOperationError); //测试 virtual void OnPrePause(CSmartPointer pTransactionContext); virtual void OnContinued(); //实现实体服务 virtual CServerSessionBase* OnNewSession(const char*,const char*); virtual void OnTimeout(DWORD dwTimerID); virtual bool IsService() const { return true; } void StartAuthorize(SpReqAnsContext::Pointer ctx); void QueryAuthorInfo(SpReqAnsContext::Pointer ctx); void StopAuthorize(SpReqAnsContext::Pointer ctx); void StopAuthorizeEx(SpReqAnsContext::Pointer ctx); void CollectFingerPrint(SpReqAnsContext::Pointer ctx); void CollectFingerPrintEx(SpReqAnsContext::Pointer ctx); void CollectFingerPrintInfo(SpReqAnsContext::Pointer ctx); void GenerateTemplate(SpReqAnsContext::Pointer ctx); void StopCollect(SpReqAnsContext::Pointer ctx); void SaveFingerPrint(SpReqAnsContext::Pointer ctx); void CheckUkey(SpReqAnsContext::Pointer ctx); void HoldOn(SpReqAnsContext::Pointer ctx); virtual void OnBroadcastEvent(CUUID SubID, const char *pszEntityName, DWORD dwMessageId, DWORD dwMessageSignature, CAutoBuffer Buffer); protected: private: CCustMngrAuthFSM m_fsm; bool m_bNewSessionInit; }; #endif