24#ifndef CALENDARSTORAGE_H
25#define CALENDARSTORAGE_H
28#include "definitions.h"
29#include "StoragePlugin.h"
30#include "StorageItem.h"
31#include "CalendarBackend.h"
33#include <buteosyncfw5/StoragePlugin.h>
34#include <buteosyncfw5/StoragePluginLoader.h>
35#include <buteosyncfw5/ProfileEngineDefs.h>
37enum STORAGE_TYPE {VCALENDAR_FORMAT,ICALENDAR_FORMAT};
54 virtual bool init(
const QMap<QString, QString>& aProperties );
64 virtual bool getAllItems( QList<Buteo::StorageItem*>& aItems );
74 virtual bool getNewItems( QList<Buteo::StorageItem*>& aNewItems,
const QDateTime& aTime );
79 virtual bool getNewItemIds( QList<QString>& aNewItemIds,
const QDateTime& aTime );
84 virtual bool getModifiedItems( QList<Buteo::StorageItem*>& aModifiedItems,
const QDateTime& aTime );
104 virtual Buteo::StorageItem*
getItem(
const QString& aItemId );
109 virtual QList<Buteo::StorageItem*>
getItems(
const QStringList& aItemIdList );
114 virtual OperationStatus
addItem( Buteo::StorageItem& aItem );
119 virtual QList<OperationStatus>
addItems(
const QList<Buteo::StorageItem*>& aItems );
124 virtual OperationStatus
modifyItem( Buteo::StorageItem& aItem );
129 virtual QList<OperationStatus>
modifyItems(
const QList<Buteo::StorageItem*>& aItems );
134 virtual OperationStatus
deleteItem(
const QString& aItemId );
139 virtual QList<OperationStatus>
deleteItems(
const QList<QString>& aItemIds );
143 KCalendarCore::Incidence::Ptr generateIncidence( Buteo::StorageItem& aItem );
145 void retrieveItems( KCalendarCore::Incidence::List& aIncidences, QList<Buteo::StorageItem*>& aItems );
147 Buteo::StorageItem* retrieveItem( KCalendarCore::Incidence::Ptr& aIncidence );
149 void retrieveIds( KCalendarCore::Incidence::List& aIncidences, QList<QString>& aIds );
151 QDateTime normalizeTime(
const QDateTime& aTime )
const;
153 QByteArray getCtCaps(
const QString& aFilename )
const;
158 STORAGE_TYPE iStorageType;
168 Q_PLUGIN_METADATA(IID
"com.buteo.plugins.storage.CalendarStoragePluginLoader")
169 Q_INTERFACES(Buteo::StoragePluginLoader)
177 Buteo::StoragePlugin*
createPlugin(
const QString& aPluginName)
override;
Calendar implementation for synchronization.
Definition CalendarBackend.h:42
ErrorStatus
Definition CalendarBackend.h:47
Definition CalendarStorage.h:166
Buteo::StoragePlugin * createPlugin(const QString &aPluginName) override
Creates calendar storage plugin.
StoragePlugin class for harmattan.
Definition CalendarStorage.h:41
virtual bool getDeletedItemIds(QList< QString > &aDeletedItemIds, const QDateTime &aTime)
virtual bool getAllItemIds(QList< QString > &aItemIds)
virtual bool getModifiedItemIds(QList< QString > &aModifiedItemIds, const QDateTime &aTime)
virtual bool getNewItemIds(QList< QString > &aNewItemIds, const QDateTime &aTime)
virtual bool getAllItems(QList< Buteo::StorageItem * > &aItems)
virtual Buteo::StorageItem * newItem()
virtual bool getNewItems(QList< Buteo::StorageItem * > &aNewItems, const QDateTime &aTime)
virtual QList< OperationStatus > modifyItems(const QList< Buteo::StorageItem * > &aItems)
virtual QList< Buteo::StorageItem * > getItems(const QStringList &aItemIdList)
CalendarStorage(const QString &aPluginName)
constructor
~CalendarStorage()
destructor
virtual bool getModifiedItems(QList< Buteo::StorageItem * > &aModifiedItems, const QDateTime &aTime)
virtual OperationStatus addItem(Buteo::StorageItem &aItem)
virtual QList< OperationStatus > addItems(const QList< Buteo::StorageItem * > &aItems)
virtual QList< OperationStatus > deleteItems(const QList< QString > &aItemIds)
virtual bool init(const QMap< QString, QString > &aProperties)
virtual OperationStatus modifyItem(Buteo::StorageItem &aItem)
virtual OperationStatus deleteItem(const QString &aItemId)
virtual Buteo::StorageItem * getItem(const QString &aItemId)