class Core::Portable::ArchiveUtils
Archive utility functions.
#include <corepersistence.h> class ArchiveUtils { public: // structs struct AttributesPromise; struct LoadCompletionHandler; // methods static bool saveToFile( CStringPtr filename, const Attributes& attributes, Archiver::Format format = Archiver::kJSON, FileStorageContext* compressionContext = nullptr, int streamSizeEstimate = 0 ); static bool loadFromFile( Attributes& attributes, CStringPtr filename, Archiver::Format format = Archiver::kJSON, FileStorageContext* compressionContext = nullptr, int streamSizeEstimate = 0, bool inplace = false ); static bool loadFromStream( Attributes& attributes, IO::MemoryStream& stream, Archiver::Format format = Archiver::kJSON, FileStorageContext* compressionContext = nullptr, int streamSizeEstimate = 0, bool inplace = false ); static FileIOTaskID saveInBackground( CStringPtr filename, const Attributes& attributes, FileIOCompletionHandler* completionHandler = nullptr, Archiver::Format format = Archiver::kJSON, FileStorageContext::Mode mode = FileStorageContext::kCopy, int streamSizeEstimate = 0 ); static FileIOTaskID saveInBackground( CStringPtr filename, AttributesPromise* attributePromise, FileIOCompletionHandler* completionHandler = nullptr, Archiver::Format format = Archiver::kJSON, FileStorageContext::Mode mode = FileStorageContext::kCopy, int streamSizeEstimate = 0 ); static FileIOTaskID loadInBackground( CStringPtr filename, LoadCompletionHandler* completionHandler, FileStorageContext::Mode mode = FileStorageContext::kCopy ); static IO::MemoryStream* saveToStream( const Attributes& attributes, Archiver::Format format = Archiver::kJSON, int streamSizeEstimate = 0, FileStorageContext* compressionContext = nullptr ); static bool saveToStream( IO::MemoryStream& data, const Attributes& attributes, Archiver::Format format = Archiver::kJSON, int streamSizeEstimate = 0 ); };