ImagingTools Core SDK
CDatabaseAccessSettings.h
1// SPDX-License-Identifier: LGPL-2.1-or-later OR GPL-2.0-or-later OR GPL-3.0-or-later OR LicenseRef-ImtCore-Commercial
2#pragma once
3
4
5// ACF includes
6#include <iser/ISerializable.h>
7
8// ImtCore includes
9#include <imtdb/IDatabaseLoginSettings.h>
10
11
12namespace imtdb
13{
14
15
16class CDatabaseAccessSettings: virtual public IDatabaseLoginSettings, virtual public iser::ISerializable
17{
18public:
19 CDatabaseAccessSettings();
20
21 // reimplemented (IDatabaseLoginSettings)
22 virtual QString GetHost() const override;
23 virtual void SetHost(const QString& host) override;
24 virtual int GetPort() const override;
25 virtual void SetPort(int port) override;
26 virtual QString GetDatabaseName() const override;
27 virtual void SetDatabaseName(const QString& databaseName) override;
28 virtual QString GetDatabasePath() const override;
29 virtual void SetDatabasePath(const QString& databasePath) override;
30 virtual QString GetUserName() const override;
31 virtual void SetUserName(const QString& userName) override;
32 virtual QString GetPassword() const override;
33 virtual void SetPassword(const QString& password) override;
34 virtual int GetConnectionFlags() const override;
35 virtual void SetConnectionFlags(int connectionFlags) override;
36
37 // reimplemented (iser::ISerializable)
38 virtual bool Serialize(iser::IArchive& archive) override;
39
40 // reimplemented (istd::IChangeable)
41 virtual int GetSupportedOperations() const override;
42 virtual bool CopyFrom(const IChangeable& object, CompatibilityMode mode = CM_WITHOUT_REFS) override;
43 virtual bool IsEqual(const IChangeable& object) const override;
44 virtual istd::IChangeableUniquePtr CloneMe(CompatibilityMode mode = CM_WITHOUT_REFS) const override;
45 virtual bool ResetData(CompatibilityMode mode = CM_WITHOUT_REFS) override;
46
47protected:
48 QString m_host;
49 int m_port;
50 QString m_databaseName;
51 QString m_databasePath;
52 QString m_userName;
53 QString m_password;
54 int m_connectionOptionFlags = COF_NO_SECURITY;
55};
56
57
58} // namespace imtdb
59
60
@ COF_NO_SECURITY
Disable connection security (insecure mode)
Database Abstraction Layer (ORM Framework) for ImtCore applications.