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

List:       kde-commits
Subject:    [kdepimlibs] akonadi/src/core: Move Akonadi::Payload to Akonadi::Internal namespace
From:       Dan_Vrátil <dvratil () redhat ! com>
Date:       2015-09-22 20:18:52
Message-ID: E1ZeU1c-00052q-Qr () scm ! kde ! org
[Download RAW message or body]

Git commit d32ab99558c2431fb6b060841732844384e85121 by Dan Vrátil.
Committed on 22/09/2015 at 20:17.
Pushed by dvratil into branch 'master'.

Move Akonadi::Payload to Akonadi::Internal namespace

M  +18   -15   akonadi/src/core/item.cpp
M  +16   -13   akonadi/src/core/item.h
M  +5    -5    akonadi/src/core/item_p.h
M  +5    -8    akonadi/src/core/itempayloadinternals_p.h

http://commits.kde.org/kdepimlibs/d32ab99558c2431fb6b060841732844384e85121

diff --git a/akonadi/src/core/item.cpp b/akonadi/src/core/item.cpp
index 2d8b6d5..f6b39b5 100644
--- a/akonadi/src/core/item.cpp
+++ b/akonadi/src/core/item.cpp
@@ -47,7 +47,8 @@ namespace
 
 struct ByTypeId {
     typedef bool result_type;
-    bool operator()(const std::shared_ptr<PayloadBase> &lhs, const \
std::shared_ptr<PayloadBase> &rhs) const +    bool operator()(const \
std::shared_ptr<Internal::PayloadBase> &lhs, +                    const \
std::shared_ptr<Internal::PayloadBase> &rhs) const  {
         return strcmp(lhs->typeName(), rhs->typeName()) < 0 ;
     }
@@ -55,16 +56,17 @@ struct ByTypeId {
 
 } // anon namespace
 
-typedef QHash< QString, std::map< std::shared_ptr<PayloadBase>, std::pair<int, int>, \
ByTypeId > > LegacyMap; +typedef QHash<QString, \
std::map<std::shared_ptr<Internal::PayloadBase>, std::pair<int, int>, ByTypeId>> \
LegacyMap;  Q_GLOBAL_STATIC(LegacyMap, typeInfoToMetaTypeIdMap)
 Q_GLOBAL_STATIC_WITH_ARGS(QReadWriteLock, legacyMapLock, \
(QReadWriteLock::Recursive))  
-void Item::addToLegacyMappingImpl(const QString &mimeType, int spid, int mtid, \
std::unique_ptr<PayloadBase> &p) +void Item::addToLegacyMappingImpl(const QString \
&mimeType, int spid, int mtid, +                                  \
std::unique_ptr<Internal::PayloadBase> &p)  {
     if (!p.get()) {
         return;
     }
-    const std::shared_ptr<PayloadBase> sp(p.release());
+    const std::shared_ptr<Internal::PayloadBase> sp(p.release());
     const QWriteLocker locker(legacyMapLock());
     std::pair<int, int> &item = (*typeInfoToMetaTypeIdMap())[mimeType][sp];
     item.first = spid;
@@ -116,14 +118,15 @@ private:
 };
 }
 
-static std::shared_ptr<const std::pair<int, int> > lookupLegacyMapping(const QString \
&mimeType, PayloadBase *p) +static std::shared_ptr<const std::pair<int, int> > \
lookupLegacyMapping(const QString &mimeType, +                                        \
Internal::PayloadBase *p)  {
     MyReadLocker locker(legacyMapLock());
     const LegacyMap::const_iterator hit = \
typeInfoToMetaTypeIdMap()->constFind(mimeType);  if (hit == \
typeInfoToMetaTypeIdMap()->constEnd()) {  return std::shared_ptr<const std::pair<int, \
int> >();  }
-    const std::shared_ptr<PayloadBase> sp(p, [ = ](PayloadBase *) {
+    const std::shared_ptr<Internal::PayloadBase> sp(p, [=](Internal::PayloadBase *) \
{  /*noop*/
     });
     const LegacyMap::mapped_type::const_iterator it = hit->find(sp);
@@ -535,9 +538,9 @@ class Dummy
 };
 }
 
-Q_GLOBAL_STATIC(Payload<Dummy>, dummyPayload)
+Q_GLOBAL_STATIC(Internal::Payload<Dummy>, dummyPayload)
 
-PayloadBase *Item::payloadBase() const
+Internal::PayloadBase *Item::payloadBase() const
 {
     Q_D(const Item);
     d->tryEnsureLegacyPayload();
@@ -559,7 +562,7 @@ void ItemPrivate::tryEnsureLegacyPayload() const
     }
 }
 
-PayloadBase *Item::payloadBaseV2(int spid, int mtid) const
+Internal::PayloadBase *Item::payloadBaseV2(int spid, int mtid) const
 {
     return d_func()->payloadBaseImpl(spid, mtid);
 }
@@ -657,15 +660,15 @@ void Item::throwPayloadException(int spid, int mtid) const
 }
 #endif
 
-void Item::setPayloadBase(PayloadBase *p)
+void Item::setPayloadBase(Internal::PayloadBase *p)
 {
-    d_func()->setLegacyPayloadBaseImpl(std::unique_ptr<PayloadBase>(p));
+    d_func()->setLegacyPayloadBaseImpl(std::unique_ptr<Internal::PayloadBase>(p));
 }
 
-void ItemPrivate::setLegacyPayloadBaseImpl(std::unique_ptr<PayloadBase> p)
+void ItemPrivate::setLegacyPayloadBaseImpl(std::unique_ptr<Internal::PayloadBase> p)
 {
     if (const std::shared_ptr<const std::pair<int, int> > pair = \
                lookupLegacyMapping(mMimeType, p.get())) {
-        std::unique_ptr<PayloadBase> clone;
+        std::unique_ptr<Internal::PayloadBase> clone;
         if (p.get()) {
             clone.reset(p->clone());
         }
@@ -677,12 +680,12 @@ void \
ItemPrivate::setLegacyPayloadBaseImpl(std::unique_ptr<PayloadBase> p)  }
 }
 
-void Item::setPayloadBaseV2(int spid, int mtid, std::unique_ptr<PayloadBase> &p)
+void Item::setPayloadBaseV2(int spid, int mtid, \
std::unique_ptr<Internal::PayloadBase> &p)  {
     d_func()->setPayloadBaseImpl(spid, mtid, p, false);
 }
 
-void Item::addPayloadBaseVariant(int spid, int mtid, std::unique_ptr<PayloadBase> \
&p) const +void Item::addPayloadBaseVariant(int spid, int mtid, \
std::unique_ptr<Internal::PayloadBase> &p) const  {
     d_func()->setPayloadBaseImpl(spid, mtid, p, true);
 }
diff --git a/akonadi/src/core/item.h b/akonadi/src/core/item.h
index a761fb7..d0e1c05 100644
--- a/akonadi/src/core/item.h
+++ b/akonadi/src/core/item.h
@@ -669,13 +669,16 @@ private:
     friend class ItemModifyJobPrivate;
     friend class ItemSync;
     friend class ProtocolHelper;
-    PayloadBase *payloadBase() const;
-    void setPayloadBase(PayloadBase *p);
-    PayloadBase *payloadBaseV2(int sharedPointerId, int metaTypeId) const;
+    Internal::PayloadBase *payloadBase() const;
+    void setPayloadBase(Internal::PayloadBase *p);
+    Internal::PayloadBase *payloadBaseV2(int sharedPointerId, int metaTypeId) const;
     //std::auto_ptr<PayloadBase> takePayloadBase( int sharedPointerId, int \
                metaTypeId );
-    void setPayloadBaseV2(int sharedPointerId, int metaTypeId, \
                std::unique_ptr<PayloadBase> &p);
-    void addPayloadBaseVariant(int sharedPointerId, int metaTypeId, \
                std::unique_ptr<PayloadBase> &p) const;
-    static void addToLegacyMappingImpl(const QString &mimeType, int sharedPointerId, \
int metaTypeId, std::unique_ptr<PayloadBase> &p); +    void setPayloadBaseV2(int \
sharedPointerId, int metaTypeId, +                          \
std::unique_ptr<Internal::PayloadBase> &p); +    void addPayloadBaseVariant(int \
sharedPointerId, int metaTypeId, +                               \
std::unique_ptr<Internal::PayloadBase> &p) const; +    static void \
addToLegacyMappingImpl(const QString &mimeType, int sharedPointerId, int metaTypeId, \
+                                       std::unique_ptr<Internal::PayloadBase> &p);  
     /**
      * Try to ensure that we have a variant of the payload for metatype id @a mtid.
@@ -850,7 +853,7 @@ Item::payloadImpl() const
 
     // Check whether we have the exact payload
     // (metatype id and shared pointer type match)
-    if (const Payload<T> *const p = \
Internal::payload_cast<T>(payloadBaseV2(PayloadType::sharedPointerId, metaTypeId))) { \
+    if (const Internal::Payload<T> *const p = \
Internal::payload_cast<T>(payloadBaseV2(PayloadType::sharedPointerId, metaTypeId))) { \
return p->payload;  }
 
@@ -869,13 +872,13 @@ Item::tryToCloneImpl(T *ret, const int *) const
     typedef Internal::PayloadTrait<NewT> NewPayloadType;
 
     const int metaTypeId = PayloadType::elementMetaTypeId();
-    Akonadi::PayloadBase *payloadBase = \
                payloadBaseV2(NewPayloadType::sharedPointerId, metaTypeId);
-    if (const Payload<NewT> *const p = Internal::payload_cast<NewT>(payloadBase)) {
+    Internal::PayloadBase *payloadBase = \
payloadBaseV2(NewPayloadType::sharedPointerId, metaTypeId); +    if (const \
                Internal::Payload<NewT> *const p = \
                Internal::payload_cast<NewT>(payloadBase)) {
         // If found, attempt to make a clone (required the payload to provide \
virtual T * T::clone() const)  const T nt = PayloadType::clone(p->payload);
         if (!PayloadType::isNull(nt)) {
             // if clone succeeded, add the clone to the Item:
-            std::unique_ptr<PayloadBase> npb(new Payload<T>(nt));
+            std::unique_ptr<Internal::PayloadBase> npb(new \
                Internal::Payload<T>(nt));
             addPayloadBaseVariant(PayloadType::sharedPointerId, metaTypeId, npb);
             // and return it
             if (ret) {
@@ -964,7 +967,7 @@ Item::hasPayloadImpl() const
 
     // Check whether we have the exact payload
     // (metatype id and shared pointer type match)
-    if (const Payload<T> *const p = \
Internal::payload_cast<T>(payloadBaseV2(PayloadType::sharedPointerId, metaTypeId))) { \
+    if (const Internal::Payload<T> *const p = \
Internal::payload_cast<T>(payloadBaseV2(PayloadType::sharedPointerId, metaTypeId))) { \
return true;  }
 
@@ -999,7 +1002,7 @@ typename std::enable_if < \
!Internal::PayloadTrait<T>::isPolymorphic >::type  Item::setPayloadImpl(const T &p)
 {
     typedef Internal::PayloadTrait<T> PayloadType;
-    std::unique_ptr<PayloadBase> pb(new Payload<T>(p));
+    std::unique_ptr<Internal::PayloadBase> pb(new Internal::Payload<T>(p));
     setPayloadBaseV2(PayloadType::sharedPointerId,
                      PayloadType::elementMetaTypeId(),
                      pb);
@@ -1044,7 +1047,7 @@ void Item::addToLegacyMapping(const QString &mimeType)
 {
     typedef Internal::PayloadTrait<T> PayloadType;
     static_assert(!PayloadType::isPolymorphic, "Payload type must not be \
                polymorphic");
-    std::unique_ptr<PayloadBase> p(new Payload<T>);
+    std::unique_ptr<Internal::PayloadBase> p(new Internal::Payload<T>);
     addToLegacyMappingImpl(mimeType, PayloadType::sharedPointerId, \
PayloadType::elementMetaTypeId(), p);  }
 
diff --git a/akonadi/src/core/item_p.h b/akonadi/src/core/item_p.h
index 917a557..9ac55cf 100644
--- a/akonadi/src/core/item_p.h
+++ b/akonadi/src/core/item_p.h
@@ -223,7 +223,7 @@ public:
 };
 
 struct TypedPayload {
-    clone_ptr<PayloadBase> payload;
+    clone_ptr<Internal::PayloadBase> payload;
     int sharedPointerId;
     int metaTypeId;
 };
@@ -360,7 +360,7 @@ public:
                != mPayloads.end();
     }
 
-    PayloadBase *payloadBaseImpl(int spid, int mtid) const
+    Internal::PayloadBase *payloadBaseImpl(int spid, int mtid) const
     {
         const PayloadContainer::const_iterator it
             = std::find_if(mPayloads.begin(), mPayloads.end(),
@@ -404,7 +404,7 @@ public:
     }
 #endif
 
-    void setPayloadBaseImpl(int spid, int mtid, std::unique_ptr<PayloadBase> &p, \
bool add) const   /*sic!*/ +    void setPayloadBaseImpl(int spid, int mtid, \
std::unique_ptr<Internal::PayloadBase> &p, bool add) const   /*sic!*/  {
 
         if (!add) {
@@ -427,7 +427,7 @@ public:
         tp.metaTypeId = mtid;
     }
 
-    void setLegacyPayloadBaseImpl(std::unique_ptr<PayloadBase> p);
+    void setLegacyPayloadBaseImpl(std::unique_ptr<Internal::PayloadBase> p);
     void tryEnsureLegacyPayload() const;
 
     // Utilise the 4-bytes padding from QSharedData
@@ -438,7 +438,7 @@ public:
     QHash<QByteArray, Attribute *> mAttributes;
     QSet<QByteArray> mDeletedAttributes;
     mutable Collection *mParent;
-    mutable _detail::clone_ptr<PayloadBase> mLegacyPayload;
+    mutable _detail::clone_ptr<Internal::PayloadBase> mLegacyPayload;
     mutable PayloadContainer mPayloads;
     Item::Flags mFlags;
     Tag::List mTags;
diff --git a/akonadi/src/core/itempayloadinternals_p.h \
b/akonadi/src/core/itempayloadinternals_p.h index 5793fac..f9ae68f 100644
--- a/akonadi/src/core/itempayloadinternals_p.h
+++ b/akonadi/src/core/itempayloadinternals_p.h
@@ -402,12 +402,10 @@ template <typename T> struct PayloadTrait<std::shared_ptr<T> > \
{  static const unsigned int sharedPointerId = 3;
 };
 
-}
 
 /**
  * @internal
  * Non-template base class for the payload container.
- * @note Move to Internal namespace for KDE5
  */
 struct PayloadBase {
     virtual ~PayloadBase()
@@ -450,11 +448,9 @@ struct Payload : public PayloadBase {
  * abstract, will therefore always fail to compile for pointer payloads
  */
 template <typename T>
-struct Payload<T *> : public PayloadBase {
-};
-
-namespace Internal
+struct Payload<T *> : public PayloadBase
 {
+};
 
 /**
   @internal
@@ -470,9 +466,10 @@ template <typename T> inline Payload<T> \
*payload_cast(PayloadBase *payloadBase)  return p;
 }
 
-}
+} // namespace Internal
+
+} // namespace Akonadi
 
-}
 //@endcond
 
 #endif


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

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