logplus/Workflow/WFEngine/WorkflowEngine/include/WorkflowFileParser.h

76 lines
2.2 KiB
C
Raw Normal View History

2026-01-16 17:18:41 +08:00
/**
* @file WorkflowFileParser.h
* @brief
*
* @author
* @date 2011-7-27
*/
#ifndef PAI_FRAME_WORKFLOWENGINE_WORKFLOWFILEPARSER_H
#define PAI_FRAME_WORKFLOWENGINE_WORKFLOWFILEPARSER_H
#include "WorkFlowFile.h"
namespace pai {
namespace workflow {
/**
* @brief
*
*
* (1)()
* (2)()
*
*
*/
class CWorkflowFileParser
{
public:
/*
* @brief @ref CWolkFlowFile对象
*
*
* @ref CheckWorkFlowFile方法去校验格式
*
* @param[in] strFilePath
* @param[in/out] workFlowFile
* @pre CWolkFlowFile对象
*/
virtual bool Parse(const std::string& strFilePath, CWorkFlowFile* workFlowFile) = 0;
/*
* @brief
*
* errorMsg里
*
* @param[in] workFlowFile
* @param[in/out] errorMsg
* @pre errorMsg
* @return
*/
virtual bool CheckWorkFlowFile(CWorkFlowFile* workFlowFile, std::string& errorMsg) = 0;
/*
* @brief CWorkFlowFile对象到文件
*
* CheckWorkFlowFile校验
*
* @param[in] workFlowFile
* @param[in] strFilePath
*/
virtual bool Serialize(CWorkFlowFile* workFlowFile, const std::string& strFilePath) = 0;
virtual std::string Serialize(CWorkFlowFile* workFlowFile)=0;
virtual bool ParseFromString(const std::string& jsonStr, CWorkFlowFile* workFlowFile, bool isWorkflow=false) = 0;
public:
CWorkflowFileParser();
virtual ~CWorkflowFileParser();
};
}
}
#endif