NepomukDaemons
storage.cpp
Go to the documentation of this file.00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019 #include "storage.h"
00020 #include "nepomukcore.h"
00021
00022 #include <QtDBus/QDBusConnection>
00023 #include <QtCore/QFile>
00024
00025 #include <KDebug>
00026 #include <KGlobal>
00027 #include <KStandardDirs>
00028
00029 #include <Soprano/Backend>
00030
00031 #include <kpluginfactory.h>
00032 #include <kpluginloader.h>
00033
00034 NEPOMUK_EXPORT_SERVICE( Nepomuk::Storage, "nepomukstorage" )
00035
00036
00037 Nepomuk::Storage::Storage( QObject* parent, const QList<QVariant>& )
00038 : Service( parent, true )
00039 {
00040 QDBusConnection::sessionBus().registerService( "org.kde.NepomukStorage" );
00041
00042 m_core = new Core( this );
00043 connect( m_core, SIGNAL( initializationDone(bool) ),
00044 this, SLOT( slotNepomukCoreInitialized(bool) ) );
00045 m_core->init();
00046 }
00047
00048
00049 Nepomuk::Storage::~Storage()
00050 {
00051 }
00052
00053
00054 void Nepomuk::Storage::slotNepomukCoreInitialized( bool success )
00055 {
00056 if ( success ) {
00057 kDebug() << "Successfully initialized nepomuk core";
00058
00059
00060
00061 m_core->registerAsDBusObject();
00062
00063
00064 QString socketPath = KGlobal::dirs()->locateLocal( "data", "nepomuk/socket" );
00065 QFile::remove( socketPath );
00066 m_core->start( socketPath );
00067 }
00068 else {
00069 kDebug() << "Failed to initialize nepomuk core";
00070 }
00071
00072 setServiceInitialized( success );
00073 }
00074
00075
00076 void Nepomuk::Storage::optimize( const QString& repo )
00077 {
00078 m_core->optimize( repo );
00079 }
00080
00081
00082 QString Nepomuk::Storage::usedSopranoBackend() const
00083 {
00084
00085
00086 return Repository::activeSopranoBackend()->pluginName();
00087 }
00088
00089 #include "storage.moc"