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.



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

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

Instance Attribute Details

#optionsObject (readonly)

Returns the value of attribute options.



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

def options
  @options
end

Instance Method Details

#each(&block) ⇒ Object



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

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

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



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

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

#loggerObject



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

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

#major_versionObject



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

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



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

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

#releasesObject Also known as: to_a



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

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