#pragma once #include #include "CommonDataPublic.h" using namespace std; namespace DBPlatformSpace { class DBPService; class DBPSession; class MetaDataManager; class InstanceDataManager; class LogManager; #define M_DPS_VERSION 3 ///数据平台初始化类 class DBPlatformNew { private: static DBPService* _spCurrService; static string _sReleaseVersion; ///<(数据平台内部用) 发布版本信息 [5/9/2022 wwu] public: static MetaDataManager* _spCurrDBPConfigMDM; ///<(数据平台内部用) static InstanceDataManager* _spCurrDBPConfigIDM; ///<(数据平台内部用) static InstanceDataManager* _spCurrDBPProjectManageIDM; ///<(数据平台内部用) static InstanceDataManager* _spCurrWorkDBIDM; ///<(数据平台内部用) static string _sPlatformStatus; ///< 平台状态,返回接口执行结果。 static string _sDefaultProjectTopFolder; ///<(数据平台内部用) static string _sXMLTemplatePath; ///<(数据平台内部用)// [5/9/2024 wwu] public: ODI DBPlatformNew(); ODI ~DBPlatformNew(); ///以元模型数据文件路径初始化 // [5/3/2022 wwu] ODI DBPlatformNew(string dbConfigDBPath); void DBPlatformNew_initial(); ///设置当前工作db文件 /** * @param [in] dbPath db文件的完整路径 *@param [in] isAutoUpgrade 设置工作文件的时候,是否自动升级(0不自动;1自动)。默认:自动1。 * @return 执行状态,状态码+返回信息字符串 */ static ODI ResultMsg setCurrentWorkDB(string dbPath,int isAutoUpgrade= 1); static ODI InstanceDataManager* getCurrentWorkDBIDM(); static ODI string getCurrentWorkDB(); //// [9/1/2023 wwu] //static ODI ResultMsg getCurrentWorkDBInfo(string &metaProjectGUID, string &metaProjectID, string &metaModelID); ///设置项目文件夹默认存储总路径 /** * @param [in] folderPath 默认目录完整路径 * @return 执行状态,状态码+返回信息字符串 */ static ODI ResultMsg setDefaultProjectTopFolder(string folderPath); ///获取项目文件夹默认存储总路径 /** * @return 路径字符串 */ static ODI string getDefaultProjectTopFolder(); ///批量提交更新命令(待细化) /** * @return 执行状态,状态码+返回信息字符串 */ static ODI ResultMsg updateCommit(); ///获取当前数据平台版本信息 static ODI string getReleaseVersion(); ///(数据平台内部用) static ResultMsg createNewDBP(string modelName, string dbFileName, string location, string desc,int modelType = 0); static ODI LogManager* LOGGER(); ///设置当前元数据db文件(*.dbp) /** * @param [in] dbPath db文件的完整路径 * @return 执行状态,状态码+返回信息字符串 */ static ODI ResultMsg setCurrDBPConfigDB(string dbPath); static ODI InstanceDataManager* getCurrDBPConfigIDM(); static ODI MetaDataManager* getCurrDBPConfigMDM(); static ODI string getCurrentDBPConfigDB();// [8/31/2023 wwu] static ODI string getCurrPlatformStatus(); // [5/3/2022 wwu] static ODI DBPService* getCurrService();// [9/4/2023 wwu] //--------------------------------------------------- //[5/9/2024 wwu] XML文件存取相关 ///设置XML输入输出格式模板路径 /** * @param [in] xtfilePath XML格式模板文件的完整路径 * @return 执行状态,状态码+返回信息字符串 */ static ODI ResultMsg setXMLTemplatePath(string xtfilePath); ///获取XML输入输出格式模板路径 /** * @return XML格式模板文件的完整路径 */ static ODI string getXMLTemplatePath(); ///检测工作数据库的版本(*.ccsp/*.dbp)// [4/23/2024 wwu] /** * @param [in] dbPath dbp文件的完整路径 * @param [out] versionType dbp文件的版本与组件数据结构版本的比较情况 * @return 执行状态,状态码+返回信息字符串 */ #define WORKDB_VERSION_H 1 //workDB文件的版本高于当前组件数据结构版本 #define WORKDB_VERSION_M 2 //workDB文件的版本等于当前组件数据结构版本 #define WORKDB_VERSION_L 3 //workDB文件的版本低于当前组件数据结构版本 static ODI ResultMsg CheckWorkDBVersionType(string dbPath, int & versionType); }; }