Class: ConsoleUtils::RequestUtils::Requester

Inherits:
SimpleDelegator
  • Object
show all
Defined in:
lib/console_utils/request_utils/requester.rb

Direct Known Subclasses

Exap, Remo

Constant Summary collapse

INFO_HASH_FIELDS =
%i(url size time human_size human_time).freeze

Instance Attribute Summary collapse

Instance Method Summary collapse

Instance Attribute Details

#urlObject (readonly)

Returns the value of attribute url.



15
16
17
# File 'lib/console_utils/request_utils/requester.rb', line 15

def url
  @url
end

Instance Method Details

#preview(mth = nil) ⇒ Object



17
18
19
20
21
22
23
24
25
26
# File 'lib/console_utils/request_utils/requester.rb', line 17

def preview(mth = nil)
  if output = to_s.presence
    JSONOutput.formatter.(output)
    show_complete_in!
    show_transfered!
    yield(self) if block_given?
  else
    puts NO_RESPONSE
  end
end


28
29
30
# File 'lib/console_utils/request_utils/requester.rb', line 28

def print_info
  tap { printf(INFO_FORMAT, to_info_hash) }
end

#sizeObject



32
33
34
# File 'lib/console_utils/request_utils/requester.rb', line 32

def size
  @_size.bytes
end

#timeObject



36
37
38
# File 'lib/console_utils/request_utils/requester.rb', line 36

def time
  @_time.in_milliseconds
end

#to_info_hashObject



50
51
52
# File 'lib/console_utils/request_utils/requester.rb', line 50

def to_info_hash
  INFO_HASH_FIELDS.zip(INFO_HASH_FIELDS.map(&method(:public_send))).to_h
end