akonadi
protocolhelper.h
00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020 #ifndef AKONADI_PROTOCOLHELPER_H
00021 #define AKONADI_PROTOCOLHELPER_H
00022
00023 #include <akonadi/cachepolicy.h>
00024 #include <akonadi/collection.h>
00025
00026 namespace Akonadi {
00027
00036 class ProtocolHelper
00037 {
00038 public:
00040 enum PartNamespace {
00041 PartGlobal,
00042 PartPayload,
00043 PartAttribute
00044 };
00045
00053 static int parseCachePolicy( const QByteArray &data, CachePolicy &policy, int start = 0 );
00054
00058 static QByteArray cachePolicyToByteArray( const CachePolicy &policy );
00059
00067 static int parseCollection( const QByteArray &data, Collection &collection, int start = 0 );
00068
00072 static QByteArray attributesToByteArray( const Entity &entity, bool ns = false );
00073
00077 static QByteArray encodePartIdentifier( PartNamespace ns, const QByteArray &label, int version = 0 );
00078
00082 static QByteArray decodePartIdentifier( const QByteArray &data, PartNamespace &ns );
00083 };
00084
00085 }
00086
00087 #endif