OSDN Git Service

fix: fetch fail
[pettanr/pettanr.git] / lib / local_picture.rb
index 262b9bd..6801527 100644 (file)
@@ -1,29 +1,38 @@
 require 'picture_io'
 class PictureIO
   class LocalPicture
-    def initialize base_dir = Rails.root + 'public/images/'
-      @base = base_dir
+    def initialize host_dir = Rails.root + 'public/images/', base_dir = ''
+      @host_dir = host_dir
+      @base_dir = @host_dir + base_dir
     end
     
-    def base
-      @base
+    def host_dir
+      @host_dir
     end
     
-    def base=(b)
-      @base = b
+    def host_dir=(d)
+      @host_dir = d
+    end
+    
+    def base_dir
+      @base_dir
+    end
+    
+    def base_dir=(d)
+      @base_dir = d
     end
     
     def dir(subdir = nil)
       sd = if subdir.to_s.empty?
-        self.base
+        ''
       else
-        self.base + (subdir.to_s + '/')
+        subdir.to_s + '/'
       end
-      sd
+      @base_dir + '/' + sd
     end
     
     def mkdir subdir = nil
-      Dir.mkdir(base) unless File.exist?(base)
+      Dir.mkdir(base_dir) unless File.exist?(base_dir)
       return if subdir.to_s.empty?
       Dir.mkdir(dir(subdir)) unless File.exist?(dir(subdir))
     end
@@ -33,7 +42,7 @@ class PictureIO
       begin
         res = File.exist?(dir(subdir) + filename)
       rescue
-        res = false
+        raise PictureIO::Error
       end
       res
     end
@@ -46,7 +55,7 @@ class PictureIO
           f.write bindata
         end
       rescue
-        res = false
+        raise PictureIO::Error
       end
       res
     end
@@ -58,7 +67,7 @@ class PictureIO
           bindata += f.read
         end
       rescue
-        bindata = false
+        raise PictureIO::Error
       end
       bindata
     end
@@ -68,7 +77,7 @@ class PictureIO
       begin
         File.delete(dir(subdir) + filename)
       rescue
-        res = false
+        raise PictureIO::Error
       end
       res
     end