BSchemaTableNode::QueryIterator Class Reference
[CoreDataManagerProvider]

#include <dmprovider/SchemaTableNode.h>

Inheritance diagram for BSchemaTableNode::QueryIterator:

BGenericIterable::GenericIterator BSchemaTableNode::DataAccessor BnRandomIterator SSQLBuilder SAtom IRandomIterator BBinder IIterator IBinder IInterface SAtom SAtom List of all members.

Detailed Description

Iterator over a BSchemaTableNode.

Custom iterator implementation that uses a cursor to step over the results of a query.


Bookkeeping

Creation, destruction, locking, etc.

virtual status_t FinishAtom (const void *id)
 Return FINISH_ATOM_ASYNC, same as GenericIterator::FinishAtom().
virtual void InitAtom ()
 Call base class initializers.
 QueryIterator (const SContext &context, const sptr< BSchemaTableNode > &owner)
 Return FINISH_ATOM_ASYNC, same as GenericIterator::FinishAtom().
virtual SValue Inspect (const sptr< IBinder > &caller, const SValue &which, uint32_t flags)
 We support both IIterator and IRandomIterator.
virtual ~QueryIterator ()
 Return FINISH_ATOM_ASYNC, same as GenericIterator::FinishAtom().

Public Member Functions

virtual size_t Count () const
 This base class does not support IRandomIterator, so this is stubbed to return 0.
virtual SValue CreateSQLFilter (const SValue &filter) const
 Provide default filter on all selected rows.
virtual status_t NextLocked (uint32_t flags, SValue *key, SValue *entry)
 Move iterator to next item and return it. The 'flags' come directly from IIterator::Next().
virtual SValue Options () const
 Return the argument options that are in effect for this iterator.
virtual status_t ParseArgs (const SValue &args)
 Process arguments passed to NewIterator().
virtual size_t Position () const
 This base class does not support IRandomIterator, so this is stubbed to return 0.
virtual status_t Remove ()
 Calls back to BGenericIterable::RemoveIteratorEntryLocked().
virtual void SetPosition (size_t p)
 This base class does not support IRandomIterator, so this is stubbed to do nothing.


Constructor & Destructor Documentation

QueryIterator const SContext context,
const sptr< BSchemaTableNode > &  owner
 

Return FINISH_ATOM_ASYNC, same as GenericIterator::FinishAtom().

~QueryIterator  )  [protected, virtual]
 

Return FINISH_ATOM_ASYNC, same as GenericIterator::FinishAtom().


Member Function Documentation

size_t Count  )  const [virtual]
 

This base class does not support IRandomIterator, so this is stubbed to return 0.

Reimplemented from BGenericIterable::GenericIterator.

SValue CreateSQLFilter const SValue filter  )  const [virtual]
 

Provide default filter on all selected rows.

If a derived class has not provided their own implementation of BGenericIterable::CreateSQLFilter(), this class will generate a filter that matches if any of the selected columns match the filter text.

Reimplemented from BGenericIterable::GenericIterator.

status_t FinishAtom const void *  id  )  [virtual]
 

Return FINISH_ATOM_ASYNC, same as GenericIterator::FinishAtom().

Reimplemented from BGenericIterable::GenericIterator.

void InitAtom  )  [virtual]
 

Call base class initializers.

Reimplemented from BSchemaTableNode::DataAccessor.

SValue Inspect const sptr< IBinder > &  caller,
const SValue which,
uint32_t  flags
[protected, virtual]
 

We support both IIterator and IRandomIterator.

Reimplemented from BGenericIterable::GenericIterator.

status_t NextLocked uint32_t  flags,
SValue key,
SValue entry
[virtual]
 

Move iterator to next item and return it. The 'flags' come directly from IIterator::Next().

Implements BGenericIterable::GenericIterator.

SValue Options  )  const [virtual]
 

Return the argument options that are in effect for this iterator.

The default implementation returns B_UNDEFINED, indicating no additional arguments have been handled. Derived implementations should always try to implement this option; if you can't, re-implement this function to return only the options you do implement.

Reimplemented from BGenericIterable::GenericIterator.

status_t ParseArgs const SValue args  )  [virtual]
 

Process arguments passed to NewIterator().

The default implementation does nothing. Derived implementation should try to handle as many arguments as possible, returning those from Options().

Reimplemented from BGenericIterable::GenericIterator.

size_t Position  )  const [virtual]
 

This base class does not support IRandomIterator, so this is stubbed to return 0.

Reimplemented from BGenericIterable::GenericIterator.

status_t Remove  )  [virtual]
 

Calls back to BGenericIterable::RemoveIteratorEntryLocked().

Reimplemented from BGenericIterable::GenericIterator.

void SetPosition size_t  p  )  [virtual]
 

This base class does not support IRandomIterator, so this is stubbed to do nothing.

Reimplemented from BGenericIterable::GenericIterator.


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