changes
This commit is contained in:
+41
-13
@@ -38,6 +38,15 @@ bool DataStore::initialize()
|
|||||||
{
|
{
|
||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
|
if (!lockDataStore())
|
||||||
|
{
|
||||||
|
CloseHandle(m_globalMutex);
|
||||||
|
m_globalMutex = NULL;
|
||||||
|
return false;
|
||||||
|
}
|
||||||
|
bool success = true;
|
||||||
|
do
|
||||||
|
{
|
||||||
util::ensureDirectoryExists(config::file::DIRECTORY);
|
util::ensureDirectoryExists(config::file::DIRECTORY);
|
||||||
m_users.fileName = config::file::USER_FILE;
|
m_users.fileName = config::file::USER_FILE;
|
||||||
m_users.recordSize = sizeof(SerializedUser);
|
m_users.recordSize = sizeof(SerializedUser);
|
||||||
@@ -63,53 +72,72 @@ bool DataStore::initialize()
|
|||||||
m_inventoryManagementObservers.recordSize = sizeof(SerializedObserver);
|
m_inventoryManagementObservers.recordSize = sizeof(SerializedObserver);
|
||||||
if (!SharedMemory::createOrOpenMapping(m_users))
|
if (!SharedMemory::createOrOpenMapping(m_users))
|
||||||
{
|
{
|
||||||
return false;
|
success = false;
|
||||||
|
break;
|
||||||
}
|
}
|
||||||
if (!SharedMemory::createOrOpenMapping(m_notifications))
|
if (!SharedMemory::createOrOpenMapping(m_notifications))
|
||||||
{
|
{
|
||||||
return false;
|
success = false;
|
||||||
|
break;
|
||||||
}
|
}
|
||||||
if (!SharedMemory::createOrOpenMapping(m_services))
|
if (!SharedMemory::createOrOpenMapping(m_services))
|
||||||
{
|
{
|
||||||
return false;
|
success = false;
|
||||||
|
break;
|
||||||
}
|
}
|
||||||
|
|
||||||
if (!SharedMemory::createOrOpenMapping(m_comboPackages))
|
if (!SharedMemory::createOrOpenMapping(m_comboPackages))
|
||||||
{
|
{
|
||||||
return false;
|
success = false;
|
||||||
|
break;
|
||||||
}
|
}
|
||||||
if (!SharedMemory::createOrOpenMapping(m_inventoryItems))
|
if (!SharedMemory::createOrOpenMapping(m_inventoryItems))
|
||||||
{
|
{
|
||||||
return false;
|
success = false;
|
||||||
|
break;
|
||||||
}
|
}
|
||||||
if (!SharedMemory::createOrOpenMapping(m_serviceBookings))
|
if (!SharedMemory::createOrOpenMapping(m_serviceBookings))
|
||||||
{
|
{
|
||||||
return false;
|
success = false;
|
||||||
|
break;
|
||||||
}
|
}
|
||||||
if (!SharedMemory::createOrOpenMapping(m_jobCards))
|
if (!SharedMemory::createOrOpenMapping(m_jobCards))
|
||||||
{
|
{
|
||||||
return false;
|
success = false;
|
||||||
|
break;
|
||||||
}
|
}
|
||||||
if (!SharedMemory::createOrOpenMapping(m_invoices))
|
if (!SharedMemory::createOrOpenMapping(m_invoices))
|
||||||
{
|
{
|
||||||
return false;
|
success = false;
|
||||||
|
break;
|
||||||
}
|
}
|
||||||
if (!SharedMemory::createOrOpenMapping(m_payments))
|
if (!SharedMemory::createOrOpenMapping(m_payments))
|
||||||
{
|
{
|
||||||
return false;
|
success = false;
|
||||||
|
break;
|
||||||
}
|
}
|
||||||
if (!SharedMemory::createOrOpenMapping(m_serviceManagementObservers))
|
if (!SharedMemory::createOrOpenMapping(m_serviceManagementObservers))
|
||||||
{
|
{
|
||||||
return false;
|
success = false;
|
||||||
|
break;
|
||||||
}
|
}
|
||||||
if (!SharedMemory::createOrOpenMapping(m_paymentManagementObservers))
|
if (!SharedMemory::createOrOpenMapping(m_paymentManagementObservers))
|
||||||
{
|
{
|
||||||
return false;
|
success = false;
|
||||||
|
break;
|
||||||
}
|
}
|
||||||
if (!SharedMemory::createOrOpenMapping(m_inventoryManagementObservers))
|
if (!SharedMemory::createOrOpenMapping(m_inventoryManagementObservers))
|
||||||
{
|
{
|
||||||
return false;
|
success = false;
|
||||||
|
break;
|
||||||
}
|
}
|
||||||
return true;
|
} while (false);
|
||||||
|
unlockDataStore();
|
||||||
|
if (!success)
|
||||||
|
{
|
||||||
|
shutdown();
|
||||||
|
}
|
||||||
|
return success;
|
||||||
}
|
}
|
||||||
|
|
||||||
/*
|
/*
|
||||||
|
|||||||
Reference in New Issue
Block a user