Cockatrice/libcockatrice_network/libcockatrice/server/local/local_server.h
Lukas Brübach 4e7c98829a Move local/remote client and local server files.
Took 32 minutes


Took 8 seconds
2025-10-08 15:39:50 +02:00

58 lines
1.5 KiB
C++

/**
* @file local_server.h
* @ingroup Server
* @brief TODO: Document this.
*/
#ifndef LOCALSERVER_H
#define LOCALSERVER_H
#include <libcockatrice/server/server.h>
#include <libcockatrice/server/server_database_interface.h>
class LocalServerInterface;
class LocalServer : public Server
{
Q_OBJECT
public:
explicit LocalServer(QObject *parent = nullptr);
~LocalServer() override;
LocalServerInterface *newConnection();
};
class LocalServer_DatabaseInterface : public Server_DatabaseInterface
{
Q_OBJECT
private:
LocalServer *localServer;
protected:
ServerInfo_User getUserData(const QString &name, bool withId = false) override;
public:
explicit LocalServer_DatabaseInterface(LocalServer *_localServer);
~LocalServer_DatabaseInterface() override = default;
AuthenticationResult checkUserPassword(Server_ProtocolHandler *handler,
const QString &user,
const QString &password,
const QString &clientId,
QString &reasonStr,
int &secondsLeft,
bool passwordNeedsHash) override;
int getNextGameId() override
{
return localServer->getNextLocalGameId();
}
int getNextReplayId() override
{
return -1;
}
int getActiveUserCount(QString /* connectionType */) override
{
return 0;
}
};
#endif