Class: Capistrano::JDKInstaller::JDKInstallerVersion

Inherits:
Object
  • Object
show all
Includes:
Enumerable
Defined in:
lib/capistrano-jdk-installer/jdk-installer.rb

Instance Attribute Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(data, options = {}) ⇒ JDKInstallerVersion

Returns a new instance of JDKInstallerVersion.



260
261
262
263
264
# File 'lib/capistrano-jdk-installer/jdk-installer.rb', line 260

def initialize(data, options={})
  @data = data
  @options = options.dup
  @logger = @options[:logger]
end

Instance Attribute Details

#optionsObject (readonly)

Returns the value of attribute options.



265
266
267
# File 'lib/capistrano-jdk-installer/jdk-installer.rb', line 265

def options
  @options
end

Instance Method Details

#each(&block) ⇒ Object



283
284
285
# File 'lib/capistrano-jdk-installer/jdk-installer.rb', line 283

def each(&block)
  self.to_a.each(&block)
end

#find_by_update_number(update_number, options = {}) ⇒ Object



287
288
289
290
# File 'lib/capistrano-jdk-installer/jdk-installer.rb', line 287

def find_by_update_number(update_number, options={})
  update_number = update_number.to_s
  self.find { |r| r.update_number == update_number }
end

#loggerObject



267
268
269
# File 'lib/capistrano-jdk-installer/jdk-installer.rb', line 267

def logger
  @logger ||= Logger.new(STDOUT)
end

#major_versionObject



292
293
294
295
296
297
298
# File 'lib/capistrano-jdk-installer/jdk-installer.rb', line 292

def major_version
  case name
  when /JDK ((?:\d+\.)?\d+)/i then $1
  else
    raise(JDKInstallerParseError.new("Could not parse JDK version name: #{name}"))
  end
end

#nameObject Also known as: to_s



271
272
273
# File 'lib/capistrano-jdk-installer/jdk-installer.rb', line 271

def name
  @name ||= @data["name"]
end

#releasesObject Also known as: to_a



276
277
278
279
280
# File 'lib/capistrano-jdk-installer/jdk-installer.rb', line 276

def releases
  @releases ||= @data["releases"].map { |release|
    JDKInstallerRelease.new(self, release, @options)
  }
end