class Version
Attributes
base_version[R]
hmcBuildLevel[R]
patches[R]
patches_raw[R]
release[R]
servicePack[R]
version[R]
Public Class Methods
new(string = '')
click to toggle source
# File lib/HMC/Version.rb, line 11 def initialize(string = '') @patches = {} parse(string) unless string.empty? end
Public Instance Methods
hasFix?(fix_name)
click to toggle source
# File lib/HMC/Version.rb, line 76 def hasFix?(fix_name) @patches.key?(fix_name) end
parse(string)
click to toggle source
# File lib/HMC/Version.rb, line 17 def parse(string) regexp_all = %r{Version:\s(\d)\s+ \s+Release:\s+(\d\.\d\.\d)\s+ \s+Service\sPack:\s+(\d+)\s+ \s+HMC\sBuild\slevel\s([\d\.]+)\s* (.*)\s*\"\,\"base_version=(V\dR\d\.\d\.\d)\s+ \s+\"}x regexp = %r{Version:\s(\d)\s+ \s+Release:\s+(\d\.\d\.\d)\s+ \s+Service\sPack:\s+(\d+)\s+ HMC\sBuild\slevel\s([\d\.]+)\s* (.*)\s* \"\,\"base_version=(V\dR\d\.\d\.\d)\s+ }x match = regexp.match(string) if match @version = match[1] @release = match[2] @servicePack = match[3] @hmcBuildLevel = match[4] @patches_raw = match[5] @base_version = match[6] parse_patches(@patches_raw) unless @patches_raw.empty? else puts string puts regexp puts match puts "regexp couldn't decode string #{string}" raise end end
parse_patches(string)
click to toggle source
# File lib/HMC/Version.rb, line 57 def parse_patches(string) regexp = %r{(MH\d{5})\:(.*)} match = regexp.match(string) if match version = match[1] description = match[2] @patches[version] = description else puts string puts regexp puts match puts "regexp couldn't decode string #{string}" raise end end
version_cmd()
click to toggle source
# File lib/HMC/Version.rb, line 80 def version_cmd 'lshmc -V' end