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

Syndication Library

  • Syndication
  • Loader
Signals | Public Member Functions | Static Public Member Functions | List of all members
Syndication::Loader Class Reference

#include <loader.h>

Inheritance diagram for Syndication::Loader:
Inheritance graph
[legend]

Signals

void loadingComplete (Syndication::Loader *loader, Syndication::FeedPtr feed, Syndication::ErrorCode error)
 

Public Member Functions

void abort ()
 
KUrl discoveredFeedURL () const
 
ErrorCode errorCode () const
 
void loadFrom (const KUrl &url, DataRetriever *retriever)
 
void loadFrom (const KUrl &url)
 
int retrieverError () const
 
- Public Member Functions inherited from QObject
 QObject (QObject *parent)
 
 QObject (QObject *parent, const char *name)
 
bool blockSignals (bool block)
 
QObject * child (const char *objName, const char *inheritsClass, bool recursiveSearch) const
 
const QObjectList & children () const
 
const char * className () const
 
bool connect (const QObject *sender, const char *signal, const char *method, Qt::ConnectionType type) const
 
void deleteLater ()
 
void destroyed (QObject *obj)
 
bool disconnect (const QObject *receiver, const char *method)
 
bool disconnect (const char *signal, const QObject *receiver, const char *method)
 
void dumpObjectInfo ()
 
void dumpObjectTree ()
 
QList< QByteArray > dynamicPropertyNames () const
 
virtual bool event (QEvent *e)
 
virtual bool eventFilter (QObject *watched, QEvent *event)
 
T findChild (const QString &name) const
 
QList< T > findChildren (const QRegExp &regExp) const
 
QList< T > findChildren (const QString &name) const
 
bool inherits (const char *className) const
 
void insertChild (QObject *object)
 
void installEventFilter (QObject *filterObj)
 
bool isA (const char *className) const
 
bool isWidgetType () const
 
void killTimer (int id)
 
virtual const QMetaObject * metaObject () const
 
void moveToThread (QThread *targetThread)
 
const char * name () const
 
const char * name (const char *defaultName) const
 
QString objectName () const
 
QObject * parent () const
 
QVariant property (const char *name) const
 
void removeChild (QObject *object)
 
void removeEventFilter (QObject *obj)
 
void setName (const char *name)
 
void setObjectName (const QString &name)
 
void setParent (QObject *parent)
 
bool setProperty (const char *name, const QVariant &value)
 
bool signalsBlocked () const
 
int startTimer (int interval)
 
QThread * thread () const
 

Static Public Member Functions

static Loader * create ()
 
static Loader * create (QObject *object, const char *slot)
 
- Static Public Member Functions inherited from QObject
bool connect (const QObject *sender, const char *signal, const QObject *receiver, const char *method, Qt::ConnectionType type)
 
bool connect (const QObject *sender, const QMetaMethod &signal, const QObject *receiver, const QMetaMethod &method, Qt::ConnectionType type)
 
bool disconnect (const QObject *sender, const char *signal, const QObject *receiver, const char *method)
 
bool disconnect (const QObject *sender, const QMetaMethod &signal, const QObject *receiver, const QMetaMethod &method)
 
QString tr (const char *sourceText, const char *disambiguation, int n)
 
QString trUtf8 (const char *sourceText, const char *disambiguation, int n)
 

Additional Inherited Members

- Protected Member Functions inherited from QObject
bool checkConnectArgs (const char *signal, const QObject *object, const char *method)
 
virtual void childEvent (QChildEvent *event)
 
virtual void connectNotify (const char *signal)
 
virtual void customEvent (QEvent *event)
 
virtual void disconnectNotify (const char *signal)
 
int receivers (const char *signal) const
 
QObject * sender () const
 
int senderSignalIndex () const
 
virtual void timerEvent (QTimerEvent *event)
 
- Static Protected Member Functions inherited from QObject
QByteArray normalizeSignalSlot (const char *signalSlot)
 
- Properties inherited from QObject
 objectName
 

Detailed Description

This class is the preferred way of loading feed sources.

Usage is very straightforward:

Loader *loader = Loader::create();
connect(loader, SIGNAL(loadingComplete(Loader*, FeedPtr, ErrorCode)),
this, SLOT(slotLoadingComplete(Loader*, FeedPtr, ErrorCode)));
loader->loadFrom("http://www.blah.org/foobar.rdf");

This creates a Loader object, connects it's loadingComplete() signal to your custom slot and then makes it load the file 'http://www.blah.org/foobar.rdf'. You could've done something like this as well:

// create the Loader, connect it's signal...
loader->loadFrom("/home/myself/some-script.py", new OutputRetriever);

That'd make the Loader use a custom algorithm for retrieving the RSS data; 'OutputRetriever' will make it execute the script '/home/myself/some-script.py' and assume whatever that script prints to stdout is RSS/Azom markup. This is e.g. handy for conversion scripts, which download a HTML file and convert it's contents into RSS markup.

No matter what kind of retrieval algorithm you employ, your 'slotLoadingComplete' method might look like this:

void MyClass::slotLoadingComplete(Loader* loader, FeedPtr feed, ErrorCode status)
{
// Note that Loader::~Loader() is private, so you cannot delete Loader instances.
// You don't need to do that anyway since Loader instances delete themselves.
if (status != Syndication::Success)
return;
QString title = feed->title();
// do whatever you want with the information.
}

Definition at line 75 of file loader.h.

Member Function Documentation

void Syndication::Loader::abort ( )

aborts the loading process

Definition at line 103 of file loader.cpp.

Loader * Syndication::Loader::create ( )
static

Constructs a Loader instance.

This is pretty much what the default constructor would do, except that it ensures that all Loader instances have been allocated on the heap (this is required so that Loader's can delete themselves safely after they emitted the loadingComplete() signal.).

Returns
A pointer to a new Loader instance.

Definition at line 51 of file loader.cpp.

Loader * Syndication::Loader::create ( QObject *  object,
const char *  slot 
)
static

Convenience method.

Does the same as the above method except that it also does the job of connecting the loadingComplete() signal to the given slot for you.

Parameters
objectA QObject which features the specified slot
slotWhich slot to connect to.

Definition at line 56 of file loader.cpp.

KUrl Syndication::Loader::discoveredFeedURL ( ) const

returns the URL of a feed discovered in the feed source

Definition at line 116 of file loader.cpp.

Syndication::ErrorCode Syndication::Loader::errorCode ( ) const

Retrieves the error code of the last loading process (if any).

Definition at line 98 of file loader.cpp.

void Syndication::Loader::loadFrom ( const KUrl &  url,
DataRetriever *  retriever 
)

Loads the feed source referenced by the given URL using the specified retrieval algorithm.

Make sure that you connected to the loadingComplete() signal before calling this method so that you're guaranteed to get notified when the loading finished.

Note
A Loader object cannot load from multiple URLs simultaneously; consequently, subsequent calls to loadFrom will be discarded silently, only the first loadFrom request will be executed.
Parameters
urlA URL referencing the input file.
retrieverA subclass of DataRetriever which implements a specialized retrieval behaviour. Note that the ownership of the retriever is transferred to the Loader, i.e. the Loader will delete it when it doesn't need it anymore.
See also
DataRetriever, Loader::loadingComplete()

Definition at line 79 of file loader.cpp.

void Syndication::Loader::loadFrom ( const KUrl &  url)

Convenience method.

Does the same as the above method, where FileRetriever is used as retriever implementation.

Parameters
urlA URL referencing the input file.

Definition at line 74 of file loader.cpp.

void Syndication::Loader::loadingComplete ( Syndication::Loader *  loader,
Syndication::FeedPtr  feed,
Syndication::ErrorCode  error 
)
signal

This signal gets emitted when the loading process triggered by calling loadFrom() finished.

Parameters
loaderA pointer pointing to the loader object which emitted this signal; this is handy in case you connect multiple loaders to a single slot.
feedIn case errortus is Success, this parameter holds the parsed feed. If fetching/parsing failed, feed is NULL.
errorAn error code telling whether there were any problems while retrieving or parsing the data.
See also
Feed, ErrorCode
int Syndication::Loader::retrieverError ( ) const

the error code returned from the retriever.

Use this if you use your custom retriever implementation and need the specific error, not covered by errorCode().

Definition at line 93 of file loader.cpp.


The documentation for this class was generated from the following files:
  • loader.h
  • loader.cpp
This file is part of the KDE documentation.
Documentation copyright © 1996-2020 The KDE developers.
Generated on Mon Jun 22 2020 13:37:32 by doxygen 1.8.7 written by Dimitri van Heesch, © 1997-2006

KDE's Doxygen guidelines are available online.

Syndication Library

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

kdepimlibs API Reference

Skip menu "kdepimlibs 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

Search



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