diff Core/FileStorage/FileStorageAccessor.h @ 1124:790ff7a5b3bf

IStorageArea abstraction
author Sebastien Jodogne <s.jodogne@gmail.com>
date Fri, 05 Sep 2014 16:28:34 +0200
parents 6c5a77637b23
children bf67431a7383
line wrap: on
line diff
--- a/Core/FileStorage/FileStorageAccessor.h	Fri Sep 05 15:59:04 2014 +0200
+++ b/Core/FileStorage/FileStorageAccessor.h	Fri Sep 05 16:28:34 2014 +0200
@@ -33,15 +33,14 @@
 #pragma once
 
 #include "StorageAccessor.h"
-#include "FilesystemStorage.h"
-#include "../HttpServer/FilesystemHttpSender.h"
+#include "IStorageArea.h"
 
 namespace Orthanc
 {
   class FileStorageAccessor : public StorageAccessor
   {
   private:
-    FilesystemStorage& storage_;
+    IStorageArea& storage_;
     
   protected:
     virtual FileInfo WriteInternal(const void* data,
@@ -49,7 +48,7 @@
                                    FileContentType type);
 
   public:
-    FileStorageAccessor(FilesystemStorage& storage) : storage_(storage)
+    FileStorageAccessor(IStorageArea& storage) : storage_(storage)
     {
     }
 
@@ -59,9 +58,6 @@
       storage_.Read(content, uuid);
     }
 
-    virtual HttpFileSender* ConstructHttpFileSender(const std::string& uuid)
-    {
-      return new FilesystemHttpSender(storage_.GetPath(uuid));
-    }
+    virtual HttpFileSender* ConstructHttpFileSender(const std::string& uuid);
   };
 }