1#ifndef _KDB_REPOSITORY_CONNECTION_H_
2#define _KDB_REPOSITORY_CONNECTION_H_
4#include <QSharedPointer>
7#include <kDB/Forward.h>
8#include <knowCore/ValueHash.h>
9#include <knowCore/WeakReference.h>
11#include "NamedTypes.h"
12#include "RDFEnvironment.h"
16namespace Cyqlops::Crypto
27 class knowDBCConnectionInterface;
28 template<
typename _T_>
30 friend class ConnectionHandle;
33 friend class SPARQLQuery;
48 friend class knowDBCConnectionInterface;
49 Connection(
const QString& _host,
int _port,
const QString& _database =
"kDB");
51 static Connection create(
const HostName& _host,
int _port,
const QString& _database =
"kDB");
52 static Connection create(
const SectionName& _section,
const StoreName& _store,
int _port,
53 const QString& _database =
"kDB");
54 static Connection create(
const StoreName& _store,
int _port,
55 const QString& _database =
"kDB");
57 template<
typename _T_>
58 requires std::same_as<_T_, Connection>
63 bool operator==(
const Connection& _rhs)
const {
return d == _rhs.d; }
64 bool operator!=(
const Connection& _rhs)
const {
return d != _rhs.d; }
78 cres_qresult<void>
connect(
bool _initialise_database =
false);
86 cres_qresult<void> executeQueryFromFile(
const QString& _fileName)
const;
87 cres_qresult<void> executeQuery(
const QString& _query)
const;
88 cres_qresult<TripleStore> defaultTripleStore()
const;
89 cres_qresult<TripleStore> infoTripleStore()
const;
90 QUuid serverUuid()
const;
102 cres_qresult<quint64>
oid(
const QString& _type)
const;
122 void removeExecuteDisconnection(
const QUuid& _uuid)
const;
127 void removeExecuteConnection(
const QUuid& _uuid)
const;
140 const QString& _query = QString(),
147 template<
typename _T_>
156 template<
typename _T_>
163 void increaseSelfPCount();
164 void decreaseSelfPCount();
171 template<
typename _T_>
172 requires std::same_as<_T_, Connection>
175 increaseSelfPCount();
177 template<
typename _T_>
182 template<
typename _T_>
185 _T_* t =
new _T_(*
this);
187 if constexpr(std::is_base_of_v<Interfaces::QueryFactory, _T_>)
Definition Connection.h:26
Cyqlops::Crypto::RSAAlgorithm rsaAlgorithm() const
Definition Connection.cpp:862
bool isValid() const
Definition Connection.cpp:523
bool isExtensionEnabled(const QString &_extension) const
Definition Connection.cpp:886
void createExtensionObject()
Definition Connection.h:183
QUuid executeDisconnection(const std::function< void()> &_function) const
Definition Connection.cpp:894
knowDBC::Query createSPARQLQuery(const RDFEnvironment &_environment=RDFEnvironment(), const QString &_query=QString(), const knowCore::ValueHash &_bindings=knowCore::ValueHash(), const knowCore::ValueHash &_options=knowCore::ValueHash()) const
Definition Connection.cpp:928
krQuery::Engine * krQueryEngine() const
Definition Connection.cpp:960
knowDBC::Query createSQLQuery(const QString &_query=QString(), const knowCore::ValueHash &_bindings=knowCore::ValueHash(), const knowCore::ValueHash &_options=knowCore::ValueHash()) const
Definition Connection.cpp:917
knowCore::Uri serverUri() const
Definition Connection.cpp:856
bool isConnected() const
Definition Connection.cpp:817
cres_qresult< void > enableExtension(const QString &_extension)
Definition Connection.cpp:866
cres_qresult< quint64 > oid(const QString &_type) const
Definition Connection.cpp:864
_T_ * extensionObject() const
Definition Connection.h:178
void disconnect()
Definition Connection.cpp:525
QUuid executeConnection(const std::function< void(const Connection &)> &_function) const
Definition Connection.cpp:906
cres_qresult< void > connect(bool _initialise_database=false)
Definition Connection.cpp:527
QUuid connectionUuid() const
Definition Connection.cpp:892
Definition BinaryMarshalsRegistry.h:8
Definition RDFTermBinaryMarshal.h:15
Definition RDFValueBinaryMarshal.h:16
Definition SQLCopyData.h:7
Definition SQLInterface_p.h:13
Definition SQLQueryExecutor.h:12
Definition SQLResult_p.h:11
Definition GraphsManager.h:10
Definition QueryFactory.h:11
Definition NotificationsManager.h:11
Definition QueryConnectionInfo.h:8
Definition RDFEnvironment.h:15
Definition SPARQLAlgebraToPostgresSQL_p.h:8
Definition SPARQLFunctionsManager.h:11
Definition Transaction.h:19
Definition TripleStore.h:19
Definition TriplesView.h:19
Definition ValueHash.h:13
Definition WeakReference.h:18
Definition Connection.h:18
Definition Connection_p.h:22
Definition QueryExecutorVisitor_p.h:17
Definition SPARQLAlgebraToPostgresSQL.cpp:69