Class: Capistrano::JDKInstaller::JDKInstallerVersions
- Inherits:
-
Object
- Object
- Capistrano::JDKInstaller::JDKInstallerVersions
- Includes:
- Enumerable
- Defined in:
- lib/capistrano-jdk-installer/jdk-installer.rb
Constant Summary collapse
- JSON_VERSION =
2
Instance Attribute Summary collapse
-
#options ⇒ Object
readonly
Returns the value of attribute options.
Class Method Summary collapse
Instance Method Summary collapse
- #each(&block) ⇒ Object
- #find_by_major_version(version, options = {}) ⇒ Object
-
#initialize(data, options = {}) ⇒ JDKInstallerVersions
constructor
A new instance of JDKInstallerVersions.
- #logger ⇒ Object
- #versions ⇒ Object (also: #to_a)
Constructor Details
#initialize(data, options = {}) ⇒ JDKInstallerVersions
Returns a new instance of JDKInstallerVersions.
311 312 313 314 315 316 317 318 319 |
# File 'lib/capistrano-jdk-installer/jdk-installer.rb', line 311 def initialize(data, ={}) @data = data @options = .dup @logger = @options[:logger] if @data["version"] != JSON_VERSION raise(JDKInstallerParseError.new("JSON version mismatch (got=#{@data["version"]}, expected=#{JSON_VERSION})")) end end |
Instance Attribute Details
#options ⇒ Object (readonly)
Returns the value of attribute options.
320 321 322 |
# File 'lib/capistrano-jdk-installer/jdk-installer.rb', line 320 def @options end |
Class Method Details
.parse(s, options = {}) ⇒ Object
304 305 306 307 308 |
# File 'lib/capistrano-jdk-installer/jdk-installer.rb', line 304 def parse(s, ={}) s = s.sub(/\A[^{]*/, "").sub(/[^}]*\z/, "").strip # remove leading & trailing JS code from response i = new(JSON.load(s), ) i.versions end |
Instance Method Details
#each(&block) ⇒ Object
333 334 335 |
# File 'lib/capistrano-jdk-installer/jdk-installer.rb', line 333 def each(&block) self.to_a.each(&block) end |
#find_by_major_version(version, options = {}) ⇒ Object
337 338 339 340 |
# File 'lib/capistrano-jdk-installer/jdk-installer.rb', line 337 def find_by_major_version(version, ={}) version = version.to_s self.find { |v| v.major_version == version } end |
#logger ⇒ Object
322 323 324 |
# File 'lib/capistrano-jdk-installer/jdk-installer.rb', line 322 def logger @logger ||= Logger.new(STDOUT) end |
#versions ⇒ Object Also known as: to_a
326 327 328 329 330 |
# File 'lib/capistrano-jdk-installer/jdk-installer.rb', line 326 def versions @versions ||= @data["data"].map { |version| JDKInstallerVersion.new(version, @options) } end |