backup/backup

View on GitHub
lib/backup/compressor/base.rb

Summary

Maintainability
A
0 mins
Test Coverage
module Backup
  module Compressor
    class Base
      include Utilities::Helpers
      include Config::Helpers

      ##
      # Yields to the block the compressor command and filename extension.
      def compress_with
        log!
        yield @cmd, @ext
      end

      private

      ##
      # Return the compressor name, with Backup namespace removed
      def compressor_name
        self.class.to_s.sub("Backup::", "")
      end

      ##
      # Logs a message to the console and log file to inform
      # the client that Backup is using the compressor
      def log!
        Logger.info "Using #{compressor_name} for compression.\n" \
          "  Command: '#{@cmd}'\n" \
          "  Ext: '#{@ext}'"
      end
    end
  end
end