Soprano::Util::AsyncModel Class Reference

Filter model that allows to perform operations asyncroneously. More...

#include <Soprano/Server/AsyncModel>

Inheritance diagram for Soprano::Util::AsyncModel:

Inheritance graph
[legend]

List of all members.

Public Member Functions

 AsyncModel (Model *parent=0)
 ~AsyncModel ()
AsyncResultaddStatementAsync (const Statement &statement)
AsyncResultremoveStatementAsync (const Statement &statement)
AsyncResultremoveAllStatementsAsync (const Statement &statement)
AsyncResultisEmptyAsync () const
AsyncResultstatementCountAsync () const
AsyncResultlistStatementsAsync (const Statement &statement) const
AsyncResultlistContextsAsync () const
AsyncResultexecuteQueryAsync (const QString &query, Query::QueryLanguage language, const QString &userQueryLanguage=QString()) const
AsyncResultcontainsStatementAsync (const Statement &statement) const
AsyncResultcontainsAnyStatementAsync (const Statement &statement) const
AsyncResultcreateBlankNodeAsync ()


Detailed Description

Filter model that allows to perform operations asyncroneously.

The main purpose is to protect a Model against deadlocks in a single threaded situation.

Usage:

 AsyncResult* result = model->listStatementsAsync( s );
 connect( result, SIGNAL(resultReady(AsyncResult*)),
          this, SLOT(slotResultReady(AsyncResult*)) );

Author:
Sebastian Trueg <trueg@kde.org>
Since:
2.1

Definition at line 122 of file asyncmodel.h.


Constructor & Destructor Documentation

Soprano::Util::AsyncModel::AsyncModel ( Model parent = 0  ) 

Create a new Model.

Parameters:
parent The parent model to forward the operations to.

Soprano::Util::AsyncModel::~AsyncModel (  ) 

Destructor.


Member Function Documentation

AsyncResult* Soprano::Util::AsyncModel::addStatementAsync ( const Statement statement  ) 

Asyncroneously add the Statement to the Model.

Parameters:
statement The Statement to add.
See also:
addStatement
Returns:
an AsyncResult with result type Error::ErrorCode object which will signal when the result is ready.

AsyncResult* Soprano::Util::AsyncModel::removeStatementAsync ( const Statement statement  ) 

Asyncroneously remove one statement. For removing statements with wildward matching see removeAllStatementsAsync().

Parameters:
statement The statement that should be removed. This has to be a valid statement.
See also:
removeStatement
Returns:
an AsyncResult with result type Error::ErrorCode object which will signal when the result is ready.

AsyncResult* Soprano::Util::AsyncModel::removeAllStatementsAsync ( const Statement statement  ) 

Asyncroneously remove all statements that match the partial statement. For removing one specific statement see removeStatement().

Parameters:
statement A possible partially defined statement that serves as a filter for all statements that should be removed.
See also:
removeAllStatements
Returns:
an AsyncResult with result type Error::ErrorCode object which will signal when the result is ready.

AsyncResult* Soprano::Util::AsyncModel::isEmptyAsync (  )  const

Asyncroneously check if the Model does contain any Statement.

See also:
isEmpty
Returns:
an AsyncResult with result type bool object which will signal when the result is ready.

AsyncResult* Soprano::Util::AsyncModel::statementCountAsync (  )  const

Asyncroneously determine the number of statements stored in this Model.

See also:
statementCount
Returns:
an AsyncResult with result type int object which will signal when the result is ready.

AsyncResult* Soprano::Util::AsyncModel::listStatementsAsync ( const Statement statement  )  const

Asyncroneously return an iterator over Model Statements that "partial" match the input Statement.

Parameters:
statement The partial Statement to match.
See also:
listStatements
Returns:
an AsyncResult with result type StatementIterator object which will signal when the result is ready.

AsyncResult* Soprano::Util::AsyncModel::listContextsAsync (  )  const

Asyncroneously list all contexts in the model, i.e. all named graphs.

See also:
listContexts
Returns:
an AsyncResult with result type NodeIterator object which will signal when the result is ready.

AsyncResult* Soprano::Util::AsyncModel::executeQueryAsync ( const QString query,
Query::QueryLanguage  language,
const QString userQueryLanguage = QString() 
) const

Asyncroneously execute the given query over the Model.

This is a const read-only method. As such Model implementations should not support SPARQL extensions such as INSERT or UPDATE through this method. A future version of Soprano will provide an additional API for queries that change the Model.

Parameters:
query The query to evaluate.
language The query language used to encode query.
userQueryLanguage If language equals Query::QueryLanguageUser userQueryLanguage defines the language to use.
See also:
executeQuery
Returns:
an AsyncResult with result type QueryResultIterator object which will signal when the result is ready.

AsyncResult* Soprano::Util::AsyncModel::containsStatementAsync ( const Statement statement  )  const

AsyncResult check if the model contains a statements.

Parameters:
statement The statement in question. This has to be a valid statement, i.e. subject, predicate, and object need to be defined. If the context node is empty the default graph is searched.
See also:
containsStatement
Returns:
an AsyncResult with result type bool object which will signal when the result is ready.

AsyncResult* Soprano::Util::AsyncModel::containsAnyStatementAsync ( const Statement statement  )  const

Asyncroneously check if the model contains certain statements.

Parameters:
statement A partially defined statement that serves as a pattern.
See also:
containsAnyStatement
Returns:
an AsyncResult with result type bool object which will signal when the result is ready.

AsyncResult* Soprano::Util::AsyncModel::createBlankNodeAsync (  ) 

Asyncroneously create a new blank node with a unique identifier.

See also:
createBlankNode
Returns:
an AsyncResult with result type Node object which will signal when the result is ready.


The documentation for this class was generated from the following file:

Generated on Tue Jul 22 17:39:36 2008 for Soprano by  doxygen 1.5.6