- * A "context" for accessing a StorageService instance.\r
- * Handles are created and freed using the StorageService interface,\r
- * and can be kept for the life of the service, and shared by multiple\r
- * threads.\r
- */\r
- class XMLTOOL_API StorageHandle {\r
- MAKE_NONCOPYABLE(StorageHandle);\r
- friend class XMLTOOL_API StorageService;\r
- public:\r
- virtual ~StorageHandle() {}\r
- protected:\r
- StorageHandle(StorageService* storage) : m_storage(storage) {}\r
- StorageService* m_storage;\r
- };\r
- \r
- \r
- /**\r
- * Returns a new handle for the storage service.\r
- * The caller <strong>MUST</strong> delete the handle\r
- * before freeing the StorageService itself.\r
- * \r
- * @return a new handle\r
- */\r
- virtual StorageHandle* createHandle()=0;\r
- \r
- /**\r