kDB: Knowledge DataBase
Loading...
Searching...
No Matches
GraphsManager.h
1#pragma once
2
3#include "Transaction.h"
4
5#include <kDB/Forward.h>
6
7namespace kDB::Repository
8{
10 {
11 friend class Connection;
12 friend class SPARQLQuery;
14 GraphsManager(const Connection& _connection);
16 public:
20 cres_qresult<RDFDataset> getDataset(const knowCore::Uri& _name);
26 // TripleStore
27 cres_qresult<TripleStore> createTripleStore(const knowCore::Uri& _name,
28 const Transaction& _transaction = Transaction());
29 cres_qresult<TripleStore> getTripleStore(const knowCore::Uri& _name);
30 cres_qresult<TripleStore> getOrCreateTripleStore(const knowCore::Uri& _name,
31 const Transaction& _transaction
32 = Transaction());
33 cres_qresult<void> removeTripleStore(const knowCore::Uri& _name,
34 const Transaction& _transaction = Transaction());
35 bool hasTripleStore(const knowCore::Uri& _name);
36 QList<TripleStore> tripleStores() const;
37 // TriplesView
42 cres_qresult<void> loadViewsFrom(const QString& _directory,
43 const knowCore::ValueHash& _bindings,
44 const QStringList& _filters = {"*.sml"},
45 const QString& _format = "SML");
46 cres_qresult<TriplesView> createView(const RDFView::ViewDefinition& _definition);
47 cres_qresult<void> removeView(const knowCore::Uri& _name);
48 QList<RDFView::ViewDefinition> viewDefinitions() const;
49 cres_qresult<TriplesView> getTriplesView(const knowCore::Uri& _name);
50 bool hasTriplesView(const knowCore::Uri& _name);
51 QList<TriplesView> triplesViews() const;
52 // Union
56 cres_qresult<PersistentDatasetsUnion> getUnion(const knowCore::Uri& _name);
60 cres_qresult<PersistentDatasetsUnion> createUnion(const knowCore::Uri& _name);
64 cres_qresult<PersistentDatasetsUnion> getOrCreateUnion(const knowCore::Uri& _name);
65 cres_qresult<void> clearUnion(const knowCore::Uri& _name);
66 bool hasUnion(const knowCore::Uri& _name);
67 QList<PersistentDatasetsUnion> unions() const;
68 // Generic
69 QList<knowCore::Uri> graphs() const;
70 EmptyRDFDataset emptyGraph() const;
71 private:
72 cres_qresult<void> reload();
73 cres_qresult<void> lockAll(const Transaction& _transaction);
74 private:
75 struct Private;
76 friend struct Private;
77 Private* const d;
78 };
79} // namespace kDB::Repository
Definition Revision.h:9
Definition ViewDefinition.h:10
Definition Connection.h:26
Definition EmptyRDFDataset.h:8
Definition GraphsManager.h:10
cres_qresult< void > loadViewsFrom(const QString &_directory, const knowCore::ValueHash &_bindings, const QStringList &_filters={"*.sml"}, const QString &_format="SML")
Definition GraphsManager.cpp:213
cres_qresult< PersistentDatasetsUnion > getOrCreateUnion(const knowCore::Uri &_name)
Definition GraphsManager.cpp:322
cres_qresult< PersistentDatasetsUnion > getUnion(const knowCore::Uri &_name)
Definition GraphsManager.cpp:299
cres_qresult< PersistentDatasetsUnion > createUnion(const knowCore::Uri &_name)
Definition GraphsManager.cpp:309
cres_qresult< RDFDataset > getDataset(const knowCore::Uri &_name)
Definition GraphsManager.cpp:49
QList< RDFDataset > datasets()
Definition GraphsManager.cpp:70
Definition Transaction.h:19
Definition Uri.h:15
Definition ValueHash.h:13