aboutsummaryrefslogtreecommitdiff
path: root/vendor/supply_drop/lib/supply_drop/writer/file.rb
blob: 61454d8b895d1d55239ee87201755b19cdab41e5 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
module SupplyDrop
  module Writer
    class File
      def initialize(writer, file)
        @wrapped_writer = writer
        @logger = Capistrano::Logger.new(:output => file)
        @logger.level = Capistrano::Logger::TRACE
        @file_writer = Batched.new(@logger)
      end

      def collect_output(host, data)
        @wrapped_writer.collect_output(host, data)
        @file_writer.collect_output(host, data)
      end

      def all_output_collected
        @wrapped_writer.all_output_collected
        @file_writer.all_output_collected
        @logger.close
      end
    end
  end
end