| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106 | #include "stdafx.h"#include "DBStoreFile.h"#include "DBStoreBase.h"namespace OTSSQLITE{	CString CDBStoreFile::GetFileName()	{		ASSERT(m_datastorePtr);		if (!m_datastorePtr)		{			return _T("");		}		return m_datastorePtr->GetFileName();	}	CDBStoreBasePtr CDBStoreFile::GetDatastore()	{		if (!m_datastorePtr)		{			m_datastorePtr = CreateNewSQLiteStore();		}		ASSERT(m_datastorePtr);				return m_datastorePtr;	}	CGenInfoDBPtr CDBStoreFile::GetGeneralInfoDB()	{		if (!m_generalInfoTable)		{			auto datastorePtr = GetDatastore();			if (datastorePtr)			{				m_generalInfoTable.reset(new CGenInfoDB(datastorePtr));			}		}		ASSERT(m_generalInfoTable);		return m_generalInfoTable;			}	CString CDBStoreFile::GetFileVersion()	{		auto generalInfoTable = GetGeneralInfoDB();		if (generalInfoTable && generalInfoTable->IsDBExist())		{			return generalInfoTable->GetFileVersion();		}		return _T("");	}	BOOL CDBStoreFile::Open(LPCTSTR a_sFileName, const BOOL a_bForce /*= TRUE*/)	{		Close();		auto datastorePtr = GetDatastore();		return datastorePtr->Open(a_sFileName, a_bForce);	}	BOOL CDBStoreFile::Create(LPCTSTR a_sFileName, const BOOL a_bOverwrite /*= FALSE*/)	{		Close();		auto datastorePtr = GetDatastore();		if (datastorePtr->Create(a_sFileName, a_bOverwrite))		{			return InitFile();		}		ASSERT(FALSE);		return FALSE;	}	BOOL CDBStoreFile::IsOpened()	{		if (m_datastorePtr)		{			return m_datastorePtr->IsOpened();		}		return FALSE;	}	BOOL CDBStoreFile::InitFile()	{		auto generalInfoTable = GetGeneralInfoDB();		ASSERT(generalInfoTable);		if (!generalInfoTable)		{			return FALSE;		}		return generalInfoTable->Init();	}}
 |