case event
          when :open
            options.ui.logger.debug { "download(#{args[0].remote} -> #{args[0].local})" }
            options.on_progress.nil? or options.on_progress.call(:open, args)
          when :close