Class: RakeDependencies::Tasks::Extract
- Inherits:
-
RakeFactory::Task
- Object
- RakeFactory::Task
- RakeDependencies::Tasks::Extract
- Defined in:
- lib/rake_dependencies/tasks/extract.rb
Overview
rubocop:disable Metrics/ClassLength
Instance Method Summary collapse
- #ext ⇒ Object
- #extractor_for_extension ⇒ Object
- #interpolate_file_name_template(parameters) ⇒ Object
- #interpolate_source_binary_name_template(parameters) ⇒ Object
- #interpolate_strip_path_template(parameters) ⇒ Object
- #interpolate_target_binary_name_template(parameters) ⇒ Object
- #interpolate_template(template, parameters) ⇒ Object
-
#parameters ⇒ Object
rubocop:enable Metrics/BlockLength.
- #platform ⇒ Object
- #platform_cpu_name ⇒ Object
- #platform_os_name ⇒ Object
- #relative_to_path(other) ⇒ Object
- #resolved_type ⇒ Object
Instance Method Details
#ext ⇒ Object
146 147 148 149 150 151 152 153 154 155 |
# File 'lib/rake_dependencies/tasks/extract.rb', line 146 def ext case resolved_type when :tar_gz then '.tar.gz' when :tgz then '.tgz' when :zip then '.zip' when :uncompressed then '' else raise "Unknown type: #{type}" end end |
#extractor_for_extension ⇒ Object
126 127 128 |
# File 'lib/rake_dependencies/tasks/extract.rb', line 126 def extractor_for_extension extractors[resolved_type] end |
#interpolate_file_name_template(parameters) ⇒ Object
106 107 108 |
# File 'lib/rake_dependencies/tasks/extract.rb', line 106 def interpolate_file_name_template(parameters) interpolate_template(file_name_template, parameters) end |
#interpolate_source_binary_name_template(parameters) ⇒ Object
114 115 116 |
# File 'lib/rake_dependencies/tasks/extract.rb', line 114 def interpolate_source_binary_name_template(parameters) interpolate_template(source_binary_name_template, parameters) end |
#interpolate_strip_path_template(parameters) ⇒ Object
110 111 112 |
# File 'lib/rake_dependencies/tasks/extract.rb', line 110 def interpolate_strip_path_template(parameters) interpolate_template(strip_path_template, parameters) end |
#interpolate_target_binary_name_template(parameters) ⇒ Object
118 119 120 |
# File 'lib/rake_dependencies/tasks/extract.rb', line 118 def interpolate_target_binary_name_template(parameters) interpolate_template(target_binary_name_template, parameters) end |
#interpolate_template(template, parameters) ⇒ Object
100 101 102 103 104 |
# File 'lib/rake_dependencies/tasks/extract.rb', line 100 def interpolate_template(template, parameters) Template.new(template) .with_parameters(parameters) .render end |
#parameters ⇒ Object
rubocop:enable Metrics/BlockLength
90 91 92 93 94 95 96 97 98 |
# File 'lib/rake_dependencies/tasks/extract.rb', line 90 def parameters { version:, platform:, platform_cpu_name:, platform_os_name:, ext: } end |
#platform ⇒ Object
130 131 132 |
# File 'lib/rake_dependencies/tasks/extract.rb', line 130 def platform Gem::Platform.local end |
#platform_cpu_name ⇒ Object
138 139 140 |
# File 'lib/rake_dependencies/tasks/extract.rb', line 138 def platform_cpu_name platform_cpu_names[platform.cpu.to_sym] end |
#platform_os_name ⇒ Object
134 135 136 |
# File 'lib/rake_dependencies/tasks/extract.rb', line 134 def platform_os_name platform_os_names[platform.os.to_sym] end |
#relative_to_path(other) ⇒ Object
122 123 124 |
# File 'lib/rake_dependencies/tasks/extract.rb', line 122 def relative_to_path(other) File.join(path, other) end |
#resolved_type ⇒ Object
142 143 144 |
# File 'lib/rake_dependencies/tasks/extract.rb', line 142 def resolved_type type.is_a?(Hash) ? type[platform.os.to_sym].to_sym : type.to_sym end |