mirror of
https://github.com/VCMP-SqMod/SqMod.git
synced 2025-06-19 16:47:14 +02:00
Initial implementation of the MaxmindDB module.
This commit is contained in:
32
modules/mmdb/Handle/Database.cpp
Normal file
32
modules/mmdb/Handle/Database.cpp
Normal file
@ -0,0 +1,32 @@
|
||||
// ------------------------------------------------------------------------------------------------
|
||||
#include "Handle/Database.hpp"
|
||||
|
||||
// ------------------------------------------------------------------------------------------------
|
||||
namespace SqMod {
|
||||
|
||||
// ------------------------------------------------------------------------------------------------
|
||||
DbHnd::DbHnd(CSStr filepath, Uint32 flags)
|
||||
: mDb()
|
||||
{
|
||||
// Validate the specified file path
|
||||
if (!filepath || *filepath == '\0')
|
||||
{
|
||||
STHROWF("Invalid database file path");
|
||||
}
|
||||
// Let's attempt to open the specified database
|
||||
const Int32 status = MMDB_open(filepath, flags, &mDb);
|
||||
// Validate the result of the operation
|
||||
if (status != MMDB_SUCCESS)
|
||||
{
|
||||
STHROWF("Unable to open the specified database [%s]", MMDB_strerror(status));
|
||||
}
|
||||
}
|
||||
|
||||
// ------------------------------------------------------------------------------------------------
|
||||
DbHnd::~DbHnd()
|
||||
{
|
||||
// We don't need the database handle anymore
|
||||
MMDB_close(&mDb);
|
||||
}
|
||||
|
||||
} // Namespace:: SqMod
|
Reference in New Issue
Block a user