• Skip to content
  • Skip to link menu
KDE 4.2 API Reference
  • KDE API Reference
  • API Reference
  • Sitemap
  • Contact Us
 

soprano

Soprano::Util::AsyncModel

Soprano::Util::AsyncModel Class Reference

#include <Soprano/Server/AsyncModel>

Inheritance diagram for Soprano::Util::AsyncModel:

Inheritance graph
[legend]

List of all members.


Detailed Description

Filter model that allows to perform operations asyncroneously.

AsyncModel has two modes: AsyncModel::SingleThreaded and AsyncModel::MultiThreaded. The main purpose of the AsyncModel::SingleThreaded mode is to protect a Model against deadlocks in a single threaded situation.

AsyncModel::MultiThreaded mode provides real asyncroneous execution of Model commands.

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 67 of file asyncmodel.h.


Public Types

enum  AsyncModelMode { SingleThreaded, MultiThreaded }

Public Member Functions

AsyncResult * addStatementAsync (const Node &subject, const Node &predicate, const Node &object, const Node &context=Node())
AsyncResult * addStatementAsync (const Statement &statement)
AsyncResult * addStatementsAsync (const QList< Statement > &statements)
 AsyncModel (Model *parent=0)
AsyncResult * containsAnyStatementAsync (const Node &subject, const Node &predicate, const Node &object, const Node &context=Node()) const
AsyncResult * containsAnyStatementAsync (const Statement &statement) const
AsyncResult * containsStatementAsync (const Node &subject, const Node &predicate, const Node &object, const Node &context=Node()) const
AsyncResult * containsStatementAsync (const Statement &statement) const
AsyncResult * createBlankNodeAsync ()
AsyncResult * executeQueryAsync (const QString &query, Query::QueryLanguage language, const QString &userQueryLanguage=QString()) const
AsyncResult * isEmptyAsync () const
AsyncResult * listContextsAsync () const
AsyncResult * listStatementsAsync () const
AsyncResult * listStatementsAsync (const Node &subject, const Node &predicate, const Node &object, const Node &context=Node()) const
AsyncResult * listStatementsAsync (const Statement &statement) const
AsyncModelMode mode () const
AsyncResult * removeAllStatementsAsync (const Node &subject, const Node &predicate, const Node &object, const Node &context=Node())
AsyncResult * removeAllStatementsAsync (const Statement &statement)
AsyncResult * removeStatementAsync (const Node &subject, const Node &predicate, const Node &object, const Node &context=Node())
AsyncResult * removeStatementAsync (const Statement &statement)
AsyncResult * removeStatementsAsync (const QList< Statement > &statements)
void setMode (AsyncModelMode mode)
AsyncResult * statementCountAsync () const
 ~AsyncModel ()

Member Enumeration Documentation

enum Soprano::Util::AsyncModel::AsyncModelMode

The mode of the model, single vs.

multi threaded execution.

Since:
2.2
Enumerator:
SingleThreaded  The model uses a single thread.

Thus, commands are executed in the same thread but no two commands will ever block each other. This is the default mode for historical reasons.

MultiThreaded  The model uses multiple threads through QThreadPool.

Commands are executed in parallel. Be aware that the parent model needs to be thread-safe.

Definition at line 89 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 Node &  subject,
const Node &  predicate,
const Node &  object,
const Node &  context = Node() 
)

This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.

Since:
2.2

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::addStatementsAsync ( const QList< Statement > &  statements  ) 

This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.

Since:
2.2

AsyncResult* Soprano::Util::AsyncModel::containsAnyStatementAsync ( const Node &  subject,
const Node &  predicate,
const Node &  object,
const Node &  context = Node() 
) const

This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.

Since:
2.2

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::containsStatementAsync ( const Node &  subject,
const Node &  predicate,
const Node &  object,
const Node &  context = Node() 
) const

This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.

Since:
2.2

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::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.

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::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::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::listStatementsAsync (  )  const

This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts. Lists all statements in the Model asyncroneously.

Since:
2.2

AsyncResult* Soprano::Util::AsyncModel::listStatementsAsync ( const Node &  subject,
const Node &  predicate,
const Node &  object,
const Node &  context = Node() 
) const

This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.

Since:
2.2

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.

AsyncModelMode Soprano::Util::AsyncModel::mode (  )  const

The mode used by this model.

See also:
setMode
Since:
2.2

AsyncResult* Soprano::Util::AsyncModel::removeAllStatementsAsync ( const Node &  subject,
const Node &  predicate,
const Node &  object,
const Node &  context = Node() 
)

This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.

Since:
2.2

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::removeStatementAsync ( const Node &  subject,
const Node &  predicate,
const Node &  object,
const Node &  context = Node() 
)

This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.

Since:
2.2

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::removeStatementsAsync ( const QList< Statement > &  statements  ) 

This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.

Since:
2.2

void Soprano::Util::AsyncModel::setMode ( AsyncModelMode  mode  ) 

Set the mode to be used.

For historical reasons the default mode is SingleThreaded.

See also:
mode
Since:
2.2

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.


The documentation for this class was generated from the following file:
  • asyncmodel.h

soprano

Skip menu "soprano"
  • Main Page
  • Namespace List
  • Class Hierarchy
  • Alphabetical List
  • Class List
  • File List
  • Namespace Members
  • Class Members
  • Related Pages

API Reference

Skip menu "API Reference"
  • akonadi
  • Decibel
  • eigen
  • Eigen2
  • kdewin32
  • Phonon
  •     Backend
  • qca
  • qimageblitz
  • soprano
  • strigi
  •     searchclient
  •     streamanalyzer
  •     streams
Generated for API Reference by doxygen 1.5.4
This website is maintained by Adriaan de Groot and Allen Winter.
KDE® and the K Desktop Environment® logo are registered trademarks of KDE e.V. | Legal