Akonadi::FilterAction Class Reference

Base class for a filter/action for FilterActionJob. More...

#include <filteractionjob.h>

Inheritance diagram for Akonadi::FilterAction:

List of all members.

Public Member Functions

virtual ~FilterAction ()
virtual Akonadi::ItemFetchScope fetchScope () const =0
virtual bool itemAccepted (const Akonadi::Item &item) const =0
virtual Akonadi::Job * itemAction (const Akonadi::Item &item) const =0

Detailed Description

Base class for a filter/action for FilterActionJob.

Abstract class defining an interface for a filter and an action for FilterActionJob. The virtual methods must be implemented in subclasses.

 class ClearErrorAction : public Akonadi::FilterAction
 {
   public:
     // reimpl
     virtual Akonadi::ItemFetchScope fetchScope() const
     {
       ItemFetchScope scope;
       scope.fetchFullPayload( false );
       scope.fetchAttribute<ErrorAttribute>();
       return scope;
     }

     virtual bool itemAccepted( const Akonadi::Item &item ) const
     {
       return item.hasAttribute<ErrorAttribute>();
     }

     virtual Akonadi::Job *itemAction( const Akonadi::Item &item ) const
     {
       Item cp = item;
       cp.removeAttribute<ErrorAttribute>();
       return new ItemModifyJob( cp );
     }
 };
See also:
FilterActionJob
Author:
Constantin Berzan <exit3219@gmail.com>
Since:
4.4

Definition at line 72 of file filteractionjob.h.


Constructor & Destructor Documentation

FilterAction::~FilterAction (  )  [virtual]

Destroys this filter action.

A FilterActionJob will delete its FilterAction automatically.

Definition at line 88 of file filteractionjob.cpp.


Member Function Documentation

virtual Akonadi::ItemFetchScope Akonadi::FilterAction::fetchScope (  )  const [pure virtual]

Returns an ItemFetchScope to use if the FilterActionJob needs to fetch the items from a collection.

Note:
The items are not fetched unless FilterActionJob is constructed with a Collection parameter.

Implemented in MailTransport::SendQueuedAction, and MailTransport::ClearErrorAction.

virtual bool Akonadi::FilterAction::itemAccepted ( const Akonadi::Item &  item  )  const [pure virtual]

Returns true if the item is accepted by the filter and should be acted upon by the FilterActionJob.

Implemented in MailTransport::SendQueuedAction, and MailTransport::ClearErrorAction.

virtual Akonadi::Job* Akonadi::FilterAction::itemAction ( const Akonadi::Item &  item  )  const [pure virtual]

Returns a job to act on the item.

The FilterActionJob will finish when all such jobs are finished.

Implemented in MailTransport::SendQueuedAction, and MailTransport::ClearErrorAction.


The documentation for this class was generated from the following files:
KDE Home | KDE Accessibility Home | Description of Access Keys