#include "CDScriptComponentTable.h" //! Constructor CDScriptComponentTable::CDScriptComponentTable(void) { // First, get the size of the table unsigned int size = 0; auto tableSize = CDClientDatabase::ExecuteQuery("SELECT COUNT(*) FROM ScriptComponent"); while (!tableSize.eof()) { size = tableSize.getIntField(0, 0); tableSize.nextRow(); } tableSize.finalize(); // Now get the data auto tableData = CDClientDatabase::ExecuteQuery("SELECT * FROM ScriptComponent"); while (!tableData.eof()) { CDScriptComponent entry; entry.id = tableData.getIntField(0, -1); entry.script_name = tableData.getStringField(1, ""); entry.client_script_name = tableData.getStringField(2, ""); this->entries.insert(std::make_pair(entry.id, entry)); tableData.nextRow(); } tableData.finalize(); } //! Destructor CDScriptComponentTable::~CDScriptComponentTable(void) { } //! Returns the table's name std::string CDScriptComponentTable::GetName(void) const { return "ScriptComponent"; } const CDScriptComponent& CDScriptComponentTable::GetByID(unsigned int id) { std::map::iterator it = this->entries.find(id); if (it != this->entries.end()) { return it->second; } return m_ToReturnWhenNoneFound; }