Class: Miteru::Kit

Inherits:
Object
  • Object
show all
Defined in:
lib/miteru/kit.rb

Constant Summary collapse

VALID_EXTENSIONS =
[".zip", ".rar", ".7z", ".tar", ".gz"].freeze

Instance Attribute Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(base_url:, link:) ⇒ Kit

Returns a new instance of Kit.



11
12
13
14
# File 'lib/miteru/kit.rb', line 11

def initialize(base_url:, link:)
  @base_url = base_url
  @link = link.start_with?("/") ? link[1..-1] : link
end

Instance Attribute Details

#base_urlObject (readonly)

Returns the value of attribute base_url.



9
10
11
# File 'lib/miteru/kit.rb', line 9

def base_url
  @base_url
end

Returns the value of attribute link.



9
10
11
# File 'lib/miteru/kit.rb', line 9

def link
  @link
end

Instance Method Details

#basenameObject



26
27
28
# File 'lib/miteru/kit.rb', line 26

def basename
  File.basename(link)
end

#extnameObject



20
21
22
23
24
# File 'lib/miteru/kit.rb', line 20

def extname
  return ".tar.gz" if link.end_with?("tar.gz")

  File.extname(link)
end

#filenameObject



30
31
32
# File 'lib/miteru/kit.rb', line 30

def filename
  CGI.unescape basename
end

#urlObject



34
35
36
# File 'lib/miteru/kit.rb', line 34

def url
  "#{base_url}/#{basename}"
end

#valid?Boolean

Returns:

  • (Boolean)


16
17
18
# File 'lib/miteru/kit.rb', line 16

def valid?
  VALID_EXTENSIONS.include? extname
end