Sha256: eaae0589ea9214ddb11b0ac83261c236b153ee8862607ef784a2497d54700d25

Contents?: true

Size: 1.14 KB

Versions: 71

Compression:

Stored size: 1.14 KB

Contents

# encoding: utf-8

module Backup
  class Logger
    class Console
      class Options
        ##
        # Disables all console output.
        #
        # This may also be set on the command line using +--quiet+.
        #
        # If +--no-quiet+ is used on the command line, console output
        # will be enabled and any setting here will be ignored.
        #
        # @param [Boolean, nil]
        # @return [Boolean, nil] Default: +false+
        attr_reader :quiet

        def initialize
          @quiet = false
        end

        def enabled?
          !quiet
        end

        def quiet=(val)
          @quiet = val unless quiet.nil?
        end
      end

      COLORS = {
        :info   => "\e[32m%s\e[0m", # green
        :warn   => "\e[33m%s\e[0m", # yellow
        :error  => "\e[31m%s\e[0m"  # red
      }

      def initialize(options = nil)
        $stdout.sync = $stderr.sync = true
      end

      def log(message)
        io = message.level == :info ? $stdout : $stderr
        lines = message.formatted_lines
        lines.map! {|line| COLORS[message.level] % line } if io.tty?
        io.puts lines
      end

    end
  end
end

Version data entries

71 entries across 71 versions & 7 rubygems

Version Path
backup-ssh-4.4.5 lib/backup/logger/console.rb
backup-remote-0.0.19 lib/backup/logger/console.rb
cm-backup-1.0.0 lib/backup/logger/console.rb
backup-ssh-4.4.4 lib/backup/logger/console.rb
backup-ssh-4.4.3 lib/backup/logger/console.rb
backup-4.4.1 lib/backup/logger/console.rb
backup-remote-0.0.18 lib/backup/logger/console.rb
backup-remote-0.0.17 lib/backup/logger/console.rb
backup-remote-0.0.16 lib/backup/logger/console.rb
backup-remote-0.0.15 lib/backup/logger/console.rb
backup-ssh-4.4.2 lib/backup/logger/console.rb
backup-ssh-4.4.1 lib/backup/logger/console.rb
backup-remote-0.0.14 lib/backup/logger/console.rb
backup-remote-0.0.13 lib/backup/logger/console.rb
backup-remote-0.0.12 lib/backup/logger/console.rb
backup-remote-0.0.11 lib/backup/logger/console.rb
backup-ssh-4.4.0 lib/backup/logger/console.rb
backup-remote-0.0.10 lib/backup/logger/console.rb
backup-remote-0.0.9 lib/backup/logger/console.rb
backup-remote-0.0.8 lib/backup/logger/console.rb