• Skip to content
  • Skip to link menu
  • KDE API Reference
  • kdepimlibs-4.11.3 API Reference
  • KDE Home
  • Contact Us
 

mailtransport

  • Akonadi
  • FilterAction
Public Member Functions | List of all members
Akonadi::FilterAction Class Referenceabstract

#include <filteractionjob_p.h>

Inheritance diagram for Akonadi::FilterAction:
MailTransport::ClearErrorAction MailTransport::DispatchManualTransportAction MailTransport::SendQueuedAction

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, Akonadi::FilterActionJob *parent) 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,
* Akonadi::FilterActionJob *parent ) const
* {
* Item cp = item;
* cp.removeAttribute<ErrorAttribute>();
* return new ItemModifyJob( cp, parent );
* }
* };
*
See Also
FilterActionJob
Author
Constantin Berzan exit3.nosp@m.219@.nosp@m.gmail.nosp@m..com
Since
4.4

Definition at line 75 of file filteractionjob_p.h.

Constructor & Destructor Documentation

FilterAction::~FilterAction ( )
virtual

Destroys this filter action.

A FilterActionJob will delete its FilterAction automatically.

Definition at line 87 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::DispatchManualTransportAction, MailTransport::ClearErrorAction, and MailTransport::SendQueuedAction.

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::DispatchManualTransportAction, MailTransport::ClearErrorAction, and MailTransport::SendQueuedAction.

virtual Akonadi::Job* Akonadi::FilterAction::itemAction ( const Akonadi::Item &  item,
Akonadi::FilterActionJob *  parent 
) const
pure virtual

Returns a job to act on the item.

The FilterActionJob will finish when all such jobs are finished.

Parameters
itemthe item to work on
parentthe parent job

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


The documentation for this class was generated from the following files:
  • filteractionjob_p.h
  • filteractionjob.cpp
This file is part of the KDE documentation.
Documentation copyright © 1996-2013 The KDE developers.
Generated on Tue Nov 26 2013 09:03:01 by doxygen 1.8.5 written by Dimitri van Heesch, © 1997-2006

KDE's Doxygen guidelines are available online.

mailtransport

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

kdepimlibs-4.11.3 API Reference

Skip menu "kdepimlibs-4.11.3 API Reference"
  • akonadi
  •   contact
  •   kmime
  •   socialutils
  • kabc
  • kalarmcal
  • kblog
  • kcal
  • kcalcore
  • kcalutils
  • kholidays
  • kimap
  • kioslave
  •   imap4
  •   mbox
  •   nntp
  • kldap
  • kmbox
  • kmime
  • kontactinterface
  • kpimidentities
  • kpimtextedit
  • kpimutils
  • kresources
  • ktnef
  • kxmlrpcclient
  • mailtransport
  • microblog
  • qgpgme
  • syndication
  •   atom
  •   rdf
  •   rss2
Report problems with this website to our bug tracking system.
Contact the specific authors with questions and comments about the page contents.

KDE® and the K Desktop Environment® logo are registered trademarks of KDE e.V. | Legal