Mercurial > hg > orthanc
diff Core/FileStorage/CompressedFileStorageAccessor.cpp @ 1126:bf67431a7383
handling of file content type in IStorageArea
author | Sebastien Jodogne <s.jodogne@gmail.com> |
---|---|
date | Fri, 05 Sep 2014 17:01:42 +0200 |
parents | 790ff7a5b3bf |
children | ba9fd42284d0 |
line wrap: on
line diff
--- a/Core/FileStorage/CompressedFileStorageAccessor.cpp Fri Sep 05 16:28:47 2014 +0200 +++ b/Core/FileStorage/CompressedFileStorageAccessor.cpp Fri Sep 05 17:01:42 2014 +0200 @@ -56,7 +56,7 @@ { case CompressionType_None: { - std::string uuid = storage_.Create(data, size); + std::string uuid = storage_.Create(data, size, type); return FileInfo(uuid, type, size, md5); } @@ -75,11 +75,11 @@ std::string uuid; if (compressed.size() > 0) { - uuid = storage_.Create(&compressed[0], compressed.size()); + uuid = storage_.Create(&compressed[0], compressed.size(), type); } else { - uuid = storage_.Create(NULL, 0); + uuid = storage_.Create(NULL, 0, type); } return FileInfo(uuid, type, size, md5, @@ -98,18 +98,19 @@ } void CompressedFileStorageAccessor::Read(std::string& content, - const std::string& uuid) + const std::string& uuid, + FileContentType type) { switch (compressionType_) { case CompressionType_None: - storage_.Read(content, uuid); + storage_.Read(content, uuid, type); break; case CompressionType_Zlib: { std::string compressed; - storage_.Read(compressed, uuid); + storage_.Read(compressed, uuid, type); zlib_.Uncompress(content, compressed); break; } @@ -119,20 +120,21 @@ } } - HttpFileSender* CompressedFileStorageAccessor::ConstructHttpFileSender(const std::string& uuid) + HttpFileSender* CompressedFileStorageAccessor::ConstructHttpFileSender(const std::string& uuid, + FileContentType type) { switch (compressionType_) { case CompressionType_None: { FileStorageAccessor uncompressedAccessor(storage_); - return uncompressedAccessor.ConstructHttpFileSender(uuid); + return uncompressedAccessor.ConstructHttpFileSender(uuid, type); } case CompressionType_Zlib: { std::string compressed; - storage_.Read(compressed, uuid); + storage_.Read(compressed, uuid, type); std::auto_ptr<BufferHttpSender> sender(new BufferHttpSender); zlib_.Uncompress(sender->GetBuffer(), compressed);