Reimplement edit_file using Chef::DelayedEvaluator
authorTom Hughes <tom@compton.nu>
Sun, 24 Nov 2013 11:21:34 +0000 (11:21 +0000)
committerTom Hughes <tom@compton.nu>
Sun, 24 Nov 2013 11:21:34 +0000 (11:21 +0000)
cookbooks/chef/libraries/edit_file.rb

index 8a04a80..ea200c8 100644 (file)
@@ -1,26 +1,11 @@
 class Chef
-  class Util
-    class EditedFile
-      def initialize(file, block)
-        @file = file
-        @block = block
-      end
-
-      def kind_of?(klass)
-        klass == String || super
-      end
-
-      def to_s
-        ::File.new(@file).collect do |line|
-          line = @block.call(line)
-        end.join("")
-      end
-    end
-  end
-
   class Recipe
     def edit_file(file, &block)
-      Chef::Util::EditedFile.new(file, block)
+      Chef::DelayedEvaluator.new do
+        ::File.new(file).collect do |line|
+          line = block.call(line)
+        end.join("")
+      end
     end
   end
 end