comparison Core/FileStorage/FileStorageAccessor.cpp @ 1124:790ff7a5b3bf

IStorageArea abstraction
author Sebastien Jodogne <s.jodogne@gmail.com>
date Fri, 05 Sep 2014 16:28:34 +0200
parents a811bdf8b8eb
children bf67431a7383
comparison
equal deleted inserted replaced
1123:6c5a77637b23 1124:790ff7a5b3bf
31 31
32 32
33 #include "../PrecompiledHeaders.h" 33 #include "../PrecompiledHeaders.h"
34 #include "FileStorageAccessor.h" 34 #include "FileStorageAccessor.h"
35 35
36 #include "../HttpServer/BufferHttpSender.h"
37
38 #include <memory>
39
40 #include <stdio.h>
41
36 namespace Orthanc 42 namespace Orthanc
37 { 43 {
38 FileInfo FileStorageAccessor::WriteInternal(const void* data, 44 FileInfo FileStorageAccessor::WriteInternal(const void* data,
39 size_t size, 45 size_t size,
40 FileContentType type) 46 FileContentType type)
46 Toolbox::ComputeMD5(md5, data, size); 52 Toolbox::ComputeMD5(md5, data, size);
47 } 53 }
48 54
49 return FileInfo(storage_.Create(data, size), type, size, md5); 55 return FileInfo(storage_.Create(data, size), type, size, md5);
50 } 56 }
57
58
59 HttpFileSender* FileStorageAccessor::ConstructHttpFileSender(const std::string& uuid)
60 {
61 std::auto_ptr<BufferHttpSender> sender(new BufferHttpSender);
62
63 storage_.Read(sender->GetBuffer(), uuid);
64
65 return sender.release();
66 }
67
51 } 68 }