#ifndef MOD_CUSTMNGRAUTH_H #define MOD_CUSTMNGRAUTH_H #pragma once #include "SpBase.h" #include "SpTest.h" #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_StopAuthorize(SpReqAnsContext::Pointer ctx); virtual void Handle_CollectFingerPrint(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; ON_ENTITYT_TEST(); 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 StopAuthorize(SpReqAnsContext::Pointer ctx); void CollectFingerPrint(SpReqAnsContext::Pointer ctx); void StopCollect(SpReqAnsContext::Pointer ctx); void SaveFingerPrint(SpReqAnsContext::Pointer ctx); void CheckUkey(SpReqAnsContext::Pointer ctx); void HoldOn(SpReqAnsContext::Pointer ctx); void FeatureDownloadStressTest(); void testFingerPrint(); virtual void OnBroadcastEvent(CUUID SubID, const char *pszEntityName, DWORD dwMessageId, DWORD dwMessageSignature, CAutoBuffer Buffer); protected: private: CCustMngrAuthFSM m_fsm; CUUID m_uuidFRMsg, m_uuidUkMsg; bool m_bNewSessionInit; }; #endif