[prev in list] [next in list] [prev in thread] [next in thread]
List: kde-commits
Subject: playground/sysadmin/shaman/libshaman/backends/apt
From: Dario Freddi <drf () kde ! org>
Date: 2010-01-14 17:04:16
Message-ID: 1263488656.514774.32705.nullmailer () svn ! kde ! org
[Download RAW message or body]
SVN commit 1074736 by dafre:
Make the APT backend work with the new API changes
Signed-off-by: Dario Freddi <drf@kde.org>
M +19 -0 AptBackend.cpp
M +3 -2 AptBackend.h
--- trunk/playground/sysadmin/shaman/libshaman/backends/apt/AptBackend.cpp \
#1074735:1074736 @@ -25,6 +25,7 @@
#include "shamantransactioninterface.h"
+#include <QTimer>
using namespace KAuth;
@@ -78,6 +79,24 @@
setState(Shaman::Backend::Idling);
}
+bool AptBackend::aboutToChangeState(Shaman::Backend::State oldstate, \
Shaman::Backend::State newstate) +{
+ if (((oldstate == Shaman::Backend::Initializing && newstate == \
Shaman::Backend::Idling) || + (oldstate == Shaman::Backend::OnTransaction && \
newstate == Shaman::Backend::Idling)) && + backend()->operationMode() == \
Shaman::Base::CachedMode) { + // Time to reload, guys.
+ QTimer::singleShot(0, this, SLOT(reload()));
+ // If we're initializing, just don't reject the state transition
+ if (oldstate != Shaman::Backend::Initializing) {
+ // Otherwise do.
+ return false;
+ }
+ }
+
+ // Else we're fine with defaults
+ return Shaman::BackendInterface::aboutToChangeState(oldstate, newstate);
+}
+
bool AptBackend::cancelQueueProcessing()
{
setState(Shaman::Backend::Idling);
--- trunk/playground/sysadmin/shaman/libshaman/backends/apt/AptBackend.h \
#1074735:1074736 @@ -41,17 +41,18 @@
public:
bool cancelQueueProcessing();
+ virtual bool aboutToChangeState(Shaman::Backend::State oldstate, \
Shaman::Backend::State newstate);
//virtual void processQueue(const Shaman::BackendPackage::List &packages, \
const Shaman::ProcessQueueOption::List &options); bool cancelRepositoriesUpdate();
void updateRepositories();
- void reload();
void markAdditionalTargetsForQueue(const Shaman::ProcessQueueOption::List \
&options);
void processQueue(const Shaman::AbstractPackage::List &packages, const \
Shaman::ProcessQueueOption::List &options);
DebPackage *findPackageByVersion(const pkgCache::VerIterator &version);
-
+
protected slots:
void slotOperationReply(ActionReply reply);
void reloadingSources();
+ void reload();
private:
pkgSourceList *mList;
[prev in list] [next in list] [prev in thread] [next in thread]
Configure |
About |
News |
Add a list |
Sponsored by KoreLogic