Class: RakeDependencies::Tasks::Extract

Inherits:
RakeFactory::Task
  • Object
show all
Defined in:
lib/rake_dependencies/tasks/extract.rb

Instance Method Summary collapse

Instance Method Details

#extObject



126
127
128
129
130
131
132
133
134
135
# File 'lib/rake_dependencies/tasks/extract.rb', line 126

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_extensionObject



106
107
108
# File 'lib/rake_dependencies/tasks/extract.rb', line 106

def extractor_for_extension
  extractors[resolved_type]
end

#interpolate_file_name_template(parameters) ⇒ Object



86
87
88
# File 'lib/rake_dependencies/tasks/extract.rb', line 86

def interpolate_file_name_template(parameters)
  interpolate_template(file_name_template, parameters)
end

#interpolate_source_binary_name_template(parameters) ⇒ Object



94
95
96
# File 'lib/rake_dependencies/tasks/extract.rb', line 94

def interpolate_source_binary_name_template(parameters)
  interpolate_template(source_binary_name_template, parameters)
end

#interpolate_strip_path_template(parameters) ⇒ Object



90
91
92
# File 'lib/rake_dependencies/tasks/extract.rb', line 90

def interpolate_strip_path_template(parameters)
  interpolate_template(strip_path_template, parameters)
end

#interpolate_target_binary_name_template(parameters) ⇒ Object



98
99
100
# File 'lib/rake_dependencies/tasks/extract.rb', line 98

def interpolate_target_binary_name_template(parameters)
  interpolate_template(target_binary_name_template, parameters)
end

#interpolate_template(template, parameters) ⇒ Object



80
81
82
83
84
# File 'lib/rake_dependencies/tasks/extract.rb', line 80

def interpolate_template(template, parameters)
  Template.new(template)
          .with_parameters(parameters)
          .render
end

#parametersObject



70
71
72
73
74
75
76
77
78
# File 'lib/rake_dependencies/tasks/extract.rb', line 70

def parameters
  {
    version: version,
    platform: platform,
    platform_cpu_name: platform_cpu_name,
    platform_os_name: platform_os_name,
    ext: ext
  }
end

#platformObject



110
111
112
# File 'lib/rake_dependencies/tasks/extract.rb', line 110

def platform
  Gem::Platform.local
end

#platform_cpu_nameObject



118
119
120
# File 'lib/rake_dependencies/tasks/extract.rb', line 118

def platform_cpu_name
  platform_cpu_names[platform.cpu.to_sym]
end

#platform_os_nameObject



114
115
116
# File 'lib/rake_dependencies/tasks/extract.rb', line 114

def platform_os_name
  platform_os_names[platform.os.to_sym]
end

#relative_to_path(other) ⇒ Object



102
103
104
# File 'lib/rake_dependencies/tasks/extract.rb', line 102

def relative_to_path(other)
  File.join(path, other)
end

#resolved_typeObject



122
123
124
# File 'lib/rake_dependencies/tasks/extract.rb', line 122

def resolved_type
  type.is_a?(Hash) ? type[platform.os.to_sym].to_sym : type.to_sym
end