📄 stafrequestmanager.h
字号:
/*****************************************************************************//* Software Testing Automation Framework (STAF) *//* (C) Copyright IBM Corp. 2001 *//* *//* This software is licensed under the Common Public License (CPL) V1.0. *//*****************************************************************************/#ifndef STAF_RequestManager#define STAF_RequestManager#include <map>#include <vector>#include "STAFString.h"#include "STAFRefPtr.h"#include "STAFOSTypes.h"#include "STAF.h"#include "STAFProc.h"#include "STAFError.h"#include "STAFMutexSem.h"#include "STAFTimestamp.h"#include "STAFService.h"// STAFRequestManager - This class manages all the requests used by// STAFProc. class STAFRequestManager{public: typedef std::map<STAFRequestNumber_t, STAFServiceRequestPtr> RequestMap; STAFRequestManager(); STAFServiceRequestPtr getNewServiceRequest(); STAFRC_t add(STAFServiceRequestPtr &serviceRequest); STAFRC_t requestCompleted(STAFRequestNumber_t request, const STAFServiceResult &result); STAFRC_t getResult(STAFRequestNumber_t request, STAFServiceResult *result); STAFRC_t freeRequest(STAFRequestNumber_t request, STAFServiceResult *result); STAFRC_t deleteRequest(STAFRequestNumber_t request); STAFRC_t getRequestData(STAFRequestNumber_t request, STAFServiceRequestPtr &serviceRequest); STAFRC_t getStatus(STAFRequestNumber_t request, STAFServiceRequestState_t *status); bool requestExists(STAFRequestNumber_t request); RequestMap getRequestMapCopy();private: // Don't allow copy construction or assignment STAFRequestManager(const STAFRequestManager &); STAFRequestManager &operator=(const STAFRequestManager &); STAFRC_t doGetResult(STAFRequestNumber_t request, STAFServiceResult *result); STAFRC_t doGetStatus(STAFRequestNumber_t request, STAFServiceRequestState_t *status); STAFRequestNumber_t fNextRequest; STAFMutexSem fRequestMapSem; RequestMap fRequestMap;};#endif
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -