logplus/Workflow/WFEngine/Module/include/ModuleCheckResult.h

117 lines
3.7 KiB
C
Raw Normal View History

2026-01-16 17:18:41 +08:00
/**
* @file ModuleCheckResult.h
* @brief
* @author Haidong Wang
* @date 2011-10-21
*/
#ifndef PAI_FRAME_MODULEAPI_MODULECHECKRESULT_H
#define PAI_FRAME_MODULEAPI_MODULECHECKRESULT_H
#include <string>
#include <vector>
#include "Turtle.h"
namespace pai {
namespace module {
/**
* @class CModuleParameterErrorInfo
* @brief , CModuleCheckResult使用.
* @see CModuleCheckResult
*/
class CModuleParameterErrorInfo
{
public:
/**
* @brief
* @param[in] strParameterItemID ID
* @param[in] strMessage
*/
CModuleParameterErrorInfo(const std::string& strParameterItemID,const std::string& strMessage);
/**
* @brief
*/
virtual ~CModuleParameterErrorInfo(){};
/**
* @brief ID
* @return id
*/
std::string GetParameterItemID() const;
/**
* @brief Validate后产生的错误信息
* @return
*/
std::string GetMessage() const;
/**
* @brief
* @param[in] strMessage
*/
void SetMessage(const std::string& strMessage);
private:
std::string m_strParamItemID; ///< 模块参数项在对应模块的参数容器中的ID
std::string m_strMessage; ///< 模块参数Validate后产生的错误信息
};
/**
* @class CModuleCheckResult
* @brief ,,
*/
class PAI_MODULE_EXPORT CModuleCheckResult
{
public:
/**
* @brief
* @param[in] iModuleStepID id
*/
CModuleCheckResult(int iModuleStepID);
/**
* @brief
*/
virtual ~CModuleCheckResult(){};
/**
* @brief
* @return truefalse
*/
bool IsEmpty() const;
/**
* @brief
* @param[in] strParameterItemID ID
* @param[in] strMessage
*/
void AddParameterErroInfo(const std::string& strParameterItemID,const std::string& strMessage);
/**
* @brief , <code>AddParameterErroInfo(std::string, std::string)</code>
* @see CModuleCheckResult#AddParameterErroInfo(std::string, std::string)
* @param[in] parameterErroInfo
*/
void AddParameterErroInfo(const CModuleParameterErrorInfo& parameterErroInfo);
/**
* @brief
* @param[in] strParameterItemID ID
* @return truefalse
*/
bool RemoveParameterErroInfo(const std::string& strParameterItemID);
/**
* @brief
* @brief[out] vecParameterItemIDs ID
*/
void GetErroInfoParameterIDs(std::vector<std::string>& vecParameterItemIDs) const;
/**
* @brief
* @param[in] strParameterItemID ID
* @return
*/
std::string GetErrorMessage(const std::string& strParameterItemID) const;
/**
* @brief
*/
void Clear();
private:
int m_iModuleStepID; ///< 模块在对应工作流中的ID
std::vector<CModuleParameterErrorInfo> m_vecParameterErroInfos; ///< 多个参数的错误提示集合
};
}
}
#endif