#include "StdAfx.h" #include "MBVault.h" IMPLEMENT_DYNAMIC(CMBVault, CMBAbstBaseObj) CMBVault::CMBVault(void) { m_nSubCount = 0; m_nObjCount = 0; m_bCanSyncToClient = false; m_pVaultCatalogMgr = new CMBVaultCatalogMgr(); m_pObjMgr = new CMBTNXXXObjMgr(); } CMBVault::~CMBVault(void) { if( NULL != m_pVaultCatalogMgr ) { delete m_pVaultCatalogMgr; m_pVaultCatalogMgr = NULL; } if( NULL != m_pObjMgr ) { delete m_pObjMgr; m_pObjMgr = NULL; } } CMBVaultCatalogMgr *CMBVault::GetVaultCatalogMgr() { return m_pVaultCatalogMgr; } CMBTNXXXObjMgr *CMBVault::GetObjMgr() { return m_pObjMgr; } bool CMBVault::ParseXml(CString &strXml,CString &strErrInfo) { if( strXml.IsEmpty() ) { strErrInfo = _T("½âÎöµÄxmlΪ¿Õ£¡"); return false; } pugi::xml_document xmlDoc; if (!xmlDoc.load(strXml)) { return false; } pugi::xml_node node = xmlDoc.child(_T("Vault")); if( NULL == node ) return false; m_strID = node.attribute(_T("ID")).value(); // µç×Ó²Ö¿âID m_strName = node.child_value(_T("Name")); // µç×Ó²Ö¿âÃû³Æ m_strBAK = node.attribute(_T("BAK")).value(); // ±¸×¢ m_strClsID = node.attribute(_T("ClassID")).value(); // µç×Ó²Ö¿â¹ÜÀíµÄÊý¾Ý¶ÔÏóÀàID m_strAdminstrator = node.attribute(_T("AdminName")).value(); // ¹ÜÀíÕßÃû³Æ m_strAdminstratorID = node.attribute(_T("AdminLogin")).value(); // ¹ÜÀíÕßID m_strAce = node.attribute(_T("Ace")).value(); // ±íʾÊÇ·ñÓÐÓÐACEÏÞÖÆ //m_nStatus = node.attribute(_T("Status")).as_int(); // ÊÇ·ñ¿ÉÓà //m_strCreatorID = node.attribute(_T("Creator")).value(); m_strCreatorName = node.attribute(_T("CreatorName")).value(); m_strTCreate = node.attribute(_T("DTCreate")).value(); // ´´½¨ÈÕÆÚ //m_nType = node.attribute(_T("Type")).as_int(); // Êý¾Ý²Ö¿âÀàÐÍ //m_strPID = node.attribute(_T("PID")).value(); // ÏîÄ¿ ID m_strPName = node.attribute(_T("PName")).value(); // ÏîÄ¿Ãû³Æ m_nBkColor = node.attribute(_T("BkColor")).value(); // µç×Ó²Ö¿â°´Å¥µÄ±³¾°ÑÕÉ« m_strImgFontStyle = node.attribute(_T("ImgFontStyle")).value(); // ͼ±ê×ÖÌåÑùʽ //m_nOwnerType = node.attribute(_T("OwnerType")).as_int(); // ËùÓÐÕßÀàÐÍ //m_strOwnerID = node.attribute(_T("Owner")).value(); // ËùÓÐÕß±êʶ //m_strOwerName = node.attribute(_T("OwerName")).value(); // ËùÓÐÕßÃû³Æ //m_strViewName = node.attribute(_T("ViewName")).value(); // ´´½¨µÄ²éѯÊÓͼ±êʶ m_strQueryClsAttr = node.attribute(_T("QueryClsAttr")).value(); // ¿ÉÒÔ²éѯµÄÀà×ֶΣ¬¿ÉÒÔû¶¨Ò壬û¶¨Òå¸ù¾ÝÀàÖе͍Òå m_strExtAdmin = node.attribute(_T("ExtAdmin")).value(); // À©Õ¹³öÀ´µÄ¹ÜÀíÔ±£¬¿ÉÒÔ×öÒ»Ð©ÒÆ¶¯£¬Ä¿Â¼É¾³ýÔö¼Ó£¬´ò±êÇ©µÈ²Ù×÷ m_strExtParamter = node.attribute(_T("ExtParamter")).value(); // À©Õ¹²ÎÊý //m_strArchiveAdmin = node.attribute(_T("ArchiveAdmin")).value(); // ÊÇ·ñÓÐÔ¤¹éµµ //m_strMemo = node.child_value(_T("Memo")); //m_bCanSyncToClient = node.attribute(_T("CanSyncToClient")).as_bool(); return true; } // //testtest CString CMBVault::GenXml() { CString strXml; strXml.Format(_T("%s"),m_strID,m_strBAK,m_strClsID,m_strAdminstrator,m_strAdminstratorID,m_strAce, m_strCreatorName,m_strTCreate,m_strPName,m_nBkColor, m_strImgFontStyle, m_strQueryClsAttr, m_strExtAdmin,m_strExtParamter,m_strName); return strXml; }