-require 'digest'
-require 'ethon'
-
-module OSDN; module CLI; module Command
- class FrsUpload < Base
- @@_show_progress = false
- def self._show_progress
- @@_show_progress
- end
- def self._show_progress=(v)
- need_reset = (!!@@_show_progress != !!v)
- @@_show_progress = v
- need_reset and _reset_all_typhoeus_pool
- end
-
- def self._reset_all_typhoeus_pool
- first_easyid = nil
- while true
- e = Typhoeus::Pool.get
- Typhoeus::Pool.release(e)
- e.__id__ == first_easyid and break
- first_easyid ||= e.__id__
- end
- end
- end
-end; end; end
-
-module Ethon
- class Easy
- module Callbacks
- alias_method :set_callbacks_orig, :set_callbacks
- def set_callbacks
- set_callbacks_orig
- if OSDN::CLI::Command::FrsUpload._show_progress
- Curl.set_option(:noprogress, false, handle)
- else
- Curl.set_option(:noprogress, true, handle)
- end
- end
- end
- end
-end
-