Kanzi Connect  3.9.8
Kanzi Connect C++ API
kanzi::connect::ContentSubscription Class Reference

A class that represents one content query that was received by the Content Manager. More...

#include <content_subscription.hpp>

Inheritance diagram for kanzi::connect::ContentSubscription:
kanzi::connect::ContentProvider::Observer

Public Types

typedef function< void(const string &uri, int reason, int startRow, int endRow)> ContentInvalidationCallback
 Callback function for content invalidation. More...
 
typedef function< void(const string &uri, ContentDataSharedPtr data)> ContentResultCallback
 Callback function for content result. More...
 

Public Member Functions

 ContentSubscription (shared_ptr< ContentServiceConcept::Session > session, const string &uri, const string &contentUri, const vector< string > &columns, const string &filter, const string &limit, const string &sort, ContentResultCallback callback, ContentInvalidationCallback invalidationCallback)
 Constructor. More...
 
 ContentSubscription (shared_ptr< ContentServiceConcept::Session > session, const string &contentUri, ContentQueryArgumentsSharedPtr args, ContentResultCallback callback, ContentInvalidationCallback invalidationCallback)
 Builds a content subscription object. More...
 
const vector< string > & getColumns () const
 Retrieve Table columns for the database projection. More...
 
const string & getContentUri () const
 Retrieve content table in the encapsulated database. More...
 
shared_ptr< ContentServiceConcept::Session > getSession () const
 Retrieve the session that initiated the query. More...
 
const string & getUri () const
 Retrieve complete content URI for the content query. More...
 
virtual void onChanged (ContentProvider *provider, const string &uri, bool) override
 See ContentProvider::Observer::onChanged. More...
 
virtual void onInvalidated (ContentProvider *provider, const string &uri, int reason, int startRow, int endRow) override
 Callback to notify invalidation of content provider. More...
 
void update (ContentProvider *provider)
 Asks the content subscription to update. More...
 
void useDiagnosticsTrafficDataSink (DiagnosticsTrafficDataSinkSharedPtr dataSink)
 Configures diagnostics data sink to be used by the class. More...
 
virtual ~ContentSubscription ()
 Destructor. More...
 
- Public Member Functions inherited from kanzi::connect::ContentProvider::Observer
virtual ~Observer ()
 Virtual destructor (for SWIG). More...
 

Detailed Description

A class that represents one content query that was received by the Content Manager.

Member Typedef Documentation

◆ ContentInvalidationCallback

typedef function<void(const string& uri, int reason, int startRow, int endRow)> kanzi::connect::ContentSubscription::ContentInvalidationCallback

Callback function for content invalidation.

◆ ContentResultCallback

Callback function for content result.

Constructor & Destructor Documentation

◆ ContentSubscription() [1/2]

kanzi::connect::ContentSubscription::ContentSubscription ( shared_ptr< ContentServiceConcept::Session >  session,
const string &  uri,
const string &  contentUri,
const vector< string > &  columns,
const string &  filter,
const string &  limit,
const string &  sort,
ContentResultCallback  callback,
ContentInvalidationCallback  invalidationCallback 
)

Constructor.

Parameters
sessionSession that initiated the content query.
uriComplete content URI for the query.
contentUriContent table in the encapsulated database.
columnsTable columns for the database projection.
filter'Where' clause for filtering output rows.
limit'Limit' clause for selecting output rows.
sort'Order by' clause for sorting output rows.
callbackCallback for content result, invoked whenever content subscription is updated.
invalidationCallbackCallback for content invalidation notification.

◆ ContentSubscription() [2/2]

kanzi::connect::ContentSubscription::ContentSubscription ( shared_ptr< ContentServiceConcept::Session >  session,
const string &  contentUri,
ContentQueryArgumentsSharedPtr  args,
ContentResultCallback  callback,
ContentInvalidationCallback  invalidationCallback 
)

Builds a content subscription object.

Parameters
sessionthe session
argsquery arguments
callbackfor content result, invoked whenever subscription is updated.
invalidationCallbackCallback for content invalidation notification.

◆ ~ContentSubscription()

virtual kanzi::connect::ContentSubscription::~ContentSubscription ( )
virtual

Destructor.

Member Function Documentation

◆ getColumns()

const vector<string>& kanzi::connect::ContentSubscription::getColumns ( ) const

Retrieve Table columns for the database projection.

Returns
Table columns for the database projection.

◆ getContentUri()

const string& kanzi::connect::ContentSubscription::getContentUri ( ) const

Retrieve content table in the encapsulated database.

Returns
Content table in the encapsulated database.

◆ getSession()

shared_ptr<ContentServiceConcept::Session> kanzi::connect::ContentSubscription::getSession ( ) const

Retrieve the session that initiated the query.

Returns
Session that initiated the query.

◆ getUri()

const string& kanzi::connect::ContentSubscription::getUri ( ) const

Retrieve complete content URI for the content query.

Returns
Content URI for the query.

◆ onChanged()

virtual void kanzi::connect::ContentSubscription::onChanged ( ContentProvider provider,
const string &  uri,
bool   
)
overridevirtual

◆ onInvalidated()

virtual void kanzi::connect::ContentSubscription::onInvalidated ( ContentProvider provider,
const string &  uri,
int  reason,
int  beginRow,
int  endRow 
)
overridevirtual

Callback to notify invalidation of content provider.

Parameters
providerContent provider that changed.
reasonthe reason for invalidation. Not currently used.
beginRowinclusive start row of the change. Not currently used.
endRowinclusive end row of the change. Not currently used.

Reimplemented from kanzi::connect::ContentProvider::Observer.

◆ update()

void kanzi::connect::ContentSubscription::update ( ContentProvider provider)

Asks the content subscription to update.

Causes it to re-perform the content query.

Parameters
providerContent provider that manages data for this subscription.

◆ useDiagnosticsTrafficDataSink()

void kanzi::connect::ContentSubscription::useDiagnosticsTrafficDataSink ( DiagnosticsTrafficDataSinkSharedPtr  dataSink)

Configures diagnostics data sink to be used by the class.


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