Go to the documentation of this file.00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020
00021
00022
00023 #ifndef _SOPRANO_SPARQL_MODEL_H_
00024 #define _SOPRANO_SPARQL_MODEL_H_
00025
00026 #include "model.h"
00027 #include "soprano_export.h"
00028 #include "asyncresult.h"
00029
00030
00031 namespace Soprano {
00032 namespace Client {
00050 class SOPRANO_CLIENT_EXPORT SparqlModel : public Soprano::Model
00051 {
00052 Q_OBJECT
00053
00054 public:
00066 SparqlModel( const QString& host = QString(),
00067 quint16 port = 80,
00068 const QString& user = QString(),
00069 const QString& password = QString() );
00070
00074 ~SparqlModel();
00075
00077
00084 void setHost( const QString& host, quint16 port = 80 );
00085
00093 void setUser( const QString& user, const QString& password = QString() );
00094
00102 void setPath( const QString& path );
00104
00106
00117 Error::ErrorCode addStatement( const Statement& statement );
00118
00130 Error::ErrorCode removeStatement( const Statement& statement );
00131
00145 Error::ErrorCode removeAllStatements( const Statement& statement );
00147
00149
00152 Soprano::StatementIterator listStatements( const Statement& partial ) const;
00153
00164 Soprano::Util::AsyncResult* listStatementsAsync( const Statement& statement ) const;
00165
00177 Soprano::QueryResultIterator executeQuery( const QString& query,
00178 Query::QueryLanguage language = Query::QueryLanguageSparql,
00179 const QString& userQueryLanguage = QString() ) const;
00180
00181
00182
00196 Soprano::Util::AsyncResult* executeQueryAsync( const QString& query,
00197 Query::QueryLanguage language = Query::QueryLanguageSparql,
00198 const QString& userQueryLanguage = QString() ) const;
00199
00203 NodeIterator listContexts() const;
00204
00215 Soprano::Util::AsyncResult* listContextsAsync() const;
00216
00220 bool containsStatement( const Statement& statement ) const;
00221
00225 bool containsAnyStatement( const Statement& statement ) const;
00227
00229
00234 int statementCount() const;
00235
00241 bool isEmpty() const;
00243
00249 Node createBlankNode();
00250
00251 using Model::addStatement;
00252 using Model::removeStatement;
00253 using Model::removeAllStatements;
00254 using Model::listStatements;
00255 using Model::containsStatement;
00256 using Model::containsAnyStatement;
00257
00258 private Q_SLOTS:
00259 void slotRequestFinished( int id, bool error, const QByteArray& data );
00260
00261 private:
00262 class Private;
00263 Private* const d;
00264 };
00265 }
00266 }
00267
00268 #endif