[prev in list] [next in list] [prev in thread] [next in thread] 

List:       kde-commits
Subject:    [kdepimlibs/akregator_port] krss: Also listen to dbus errors
From:       Frank Osterfeld <frank.osterfeld () kdemail ! net>
Date:       2012-03-31 15:16:21
Message-ID: 20120331151621.C4710A60CE () git ! kde ! org
[Download RAW message or body]

Git commit 6413840ca302df8b24dad77e18ba4e121bce49b1 by Frank Osterfeld.
Committed on 19/07/2009 at 18:59.
Pushed by osterfeld into branch 'akregator_port'.

Also listen to dbus errors

svn path=/branches/work/akonadi-ports/kdepim/; revision=999345

M  +1    -1    krss/dbushelper.cpp
M  +1    -1    krss/dbushelper_p.h
M  +8    -1    krss/importitemsjob.cpp
M  +1    -0    krss/importitemsjob.h

http://commits.kde.org/kdepimlibs/6413840ca302df8b24dad77e18ba4e121bce49b1

diff --git a/krss/dbushelper.cpp b/krss/dbushelper.cpp
index 9f36768..eb542ec 100644
--- a/krss/dbushelper.cpp
+++ b/krss/dbushelper.cpp
@@ -7,7 +7,7 @@
 using namespace KRss;
 using namespace KRss::DBusHelper;
 
-bool DBusHelper::callWithCallback( QDBusAbstractInterface* iface, const QString& \
method, const QList<QVariant>& args, QObject* receiver, const char* slot, Timeout \
timeout ) { +bool DBusHelper::callWithCallback( QDBusAbstractInterface* iface, const \
QString& method, const QList<QVariant>& args, QObject* receiver, const char* slot, \
const char* errorMethod, Timeout timeout ) {  
     QDBusMessage msg = QDBusMessage::createMethodCall( iface->service(), \
iface->path(), iface->interface(), method );  msg.setArguments( args );
diff --git a/krss/dbushelper_p.h b/krss/dbushelper_p.h
index ecd4a83..909343f 100644
--- a/krss/dbushelper_p.h
+++ b/krss/dbushelper_p.h
@@ -18,7 +18,7 @@ namespace KRss {
             NoTimeout=INT_MAX
         };
 
-        bool callWithCallback( QDBusAbstractInterface* iface, const QString& method, \
const QList<QVariant>& args, QObject* receiver, const char* slot, Timeout \
timeout=DefaultTimeout ); +        bool callWithCallback( QDBusAbstractInterface* \
iface, const QString& method, const QList<QVariant>& args, QObject* receiver, const \
char* slot, const char* errorMethod, Timeout timeout=DefaultTimeout );  }
 }
 
diff --git a/krss/importitemsjob.cpp b/krss/importitemsjob.cpp
index f3e2f73..6208cfc 100644
--- a/krss/importitemsjob.cpp
+++ b/krss/importitemsjob.cpp
@@ -38,6 +38,7 @@ public:
 
     void doStart();
     void importFinished( const QVariantMap& );
+    void importError( const QDBusError& err );
 
     QString url;
     QString sourceFile;
@@ -75,7 +76,7 @@ void ImportItemsJob::start() {
 }
 
 void ImportItemsJob::Private::doStart() {
-    if ( !DBusHelper::callWithCallback( interface, "importItems", QList<QVariant>() \
<< url << sourceFile, q, SLOT(importFinished(QVariantMap)), DBusHelper::NoTimeout ) ) \
{ +    if ( !DBusHelper::callWithCallback( interface, "importItems", \
QList<QVariant>() << url << sourceFile, q, SLOT(importFinished(QVariantMap)), \
SLOT(importError(QDBusError)), DBusHelper::NoTimeout ) ) {  q->setError( \
ImportItemsJob::ImportFailedError );  q->setErrorText( i18n( "Could not start \
import." ) );  q->emitResult();
@@ -90,5 +91,11 @@ void ImportItemsJob::Private::importFinished( const QVariantMap& \
map ) {  q->emitResult();
 }
 
+void ImportItemsJob::Private::importError( const QDBusError& err ) {
+    q->setError( ImportItemsJob::ImportFailedError );
+    q->setErrorText( i18n( "Item import failed: %1, %2" ).arg( err.name(), \
err.message() ) ); +    q->emitResult();
+}
+
 #include "importitemsjob.moc"
 
diff --git a/krss/importitemsjob.h b/krss/importitemsjob.h
index e30d61a..ca28b22 100644
--- a/krss/importitemsjob.h
+++ b/krss/importitemsjob.h
@@ -66,6 +66,7 @@ private:
     Private* const d;
     Q_PRIVATE_SLOT( d, void doStart() )
     Q_PRIVATE_SLOT( d, void importFinished(QVariantMap) )
+    Q_PRIVATE_SLOT( d, void importError(QDBusError) )
 };
 
 }


[prev in list] [next in list] [prev in thread] [next in thread] 

Configure | About | News | Add a list | Sponsored by KoreLogic