Multiple implementations of the same back-end application. The aim is to provide quick, side-by-side comparisons of different technologies (languages, frameworks, libraries) while preserving consistent business logic across all implementations.
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
 
 
 

31 lines
543 B

#pragma once
#include <atomic>
#include <condition_variable>
#include <csignal>
#include <mutex>
#include <thread>
#include <memory>
#include <autostore/AutoStore.h>
#include <autostore/ILogger.h>
namespace nxl {
class App
{
public:
App(int argc, char** argv);
~App();
int exec();
private:
static void handleSignal(int signum);
static std::condition_variable exitCv;
static std::mutex mtx;
static bool shouldExit;
std::unique_ptr<nxl::autostore::AutoStore> autoStore;
autostore::ILoggerPtr logger;
};
} // namespace nxl