259 Pattern bitArchPattern = Pattern.compile("(\\d*)[- ]?[bB]it"); 260 Matcher matcher = bitArchPattern.matcher(versionOutput); 261 if (matcher.find()) { 262 params.put(".runtime.bit-arch", matcher.group(1)); 263 } else { 264 // presume 32 bit on no match 265 params.put(".runtime.bit-arch", "32"); 266 } 267 268 Pattern oldVersionMatcher = Pattern.compile("java version \"((\\d+.(\\d+).\\d+)(_(\\d+)))?(-(.*))?\""); 269 matcher = oldVersionMatcher.matcher(versionOutput); 270 if (matcher.find()) { 271 params.put(".runtime.version", matcher.group(1)); 272 params.put(".runtime.version.release", matcher.group(2)); 273 params.put(".runtime.version.major", matcher.group(3)); 274 params.put(".runtime.version.update", matcher.group(5)); 275 params.put(".runtime.version.minor", matcher.group(5)); 276 params.put(".runtime.version.security", matcher.group(5)); 277 params.put(".runtime.version.patch", "0"); 278 params.put(".runtime.version.modifiers", matcher.group(7)); 279 } else { 280 Pattern newVersionMatcher = Pattern.compile("java version \"((\\d+).(\\d+).(\\d+).(\\d+))(-(.*))?(\\+[^\"]*)?\""); 281 matcher = newVersionMatcher.matcher(versionOutput); 282 if (matcher.find()) { 283 params.put(".runtime.version", matcher.group(1)); 284 params.put(".runtime.version.release", matcher.group(1)); 285 params.put(".runtime.version.major", matcher.group(2)); 286 params.put(".runtime.version.update", matcher.group(3)); 287 params.put(".runtime.version.minor", matcher.group(3)); 288 params.put(".runtime.version.security", matcher.group(4)); 289 params.put(".runtime.version.patch", matcher.group(5)); 290 params.put(".runtime.version.modifiers", matcher.group(7)); 291 } else { 292 params.put(".runtime.version", ""); 293 params.put(".runtime.version.release", ""); 294 params.put(".runtime.version.major", ""); 295 params.put(".runtime.version.update", ""); 296 params.put(".runtime.version.minor", ""); 297 params.put(".runtime.version.security", ""); 298 params.put(".runtime.version.patch", ""); 299 params.put(".runtime.version.modifiers", ""); 300 } 301 } 302 } 303 304 305 } | 259 Pattern bitArchPattern = Pattern.compile("(\\d*)[- ]?[bB]it"); 260 Matcher matcher = bitArchPattern.matcher(versionOutput); 261 if (matcher.find()) { 262 params.put(".runtime.bit-arch", matcher.group(1)); 263 } else { 264 // presume 32 bit on no match 265 params.put(".runtime.bit-arch", "32"); 266 } 267 268 Pattern oldVersionMatcher = Pattern.compile("java version \"((\\d+.(\\d+).\\d+)(_(\\d+)))?(-(.*))?\""); 269 matcher = oldVersionMatcher.matcher(versionOutput); 270 if (matcher.find()) { 271 params.put(".runtime.version", matcher.group(1)); 272 params.put(".runtime.version.release", matcher.group(2)); 273 params.put(".runtime.version.major", matcher.group(3)); 274 params.put(".runtime.version.update", matcher.group(5)); 275 params.put(".runtime.version.minor", matcher.group(5)); 276 params.put(".runtime.version.security", matcher.group(5)); 277 params.put(".runtime.version.patch", "0"); 278 params.put(".runtime.version.modifiers", matcher.group(7)); 279 return; 280 } 281 282 Pattern macJreVersionMatcher = Pattern.compile("java version \"(1.(\\d+).(\\d+).(\\d+))\""); 283 matcher = macJreVersionMatcher.matcher(versionOutput); 284 if (matcher.find()) { 285 params.put(".runtime.version", matcher.group(1)); 286 params.put(".runtime.version.release", matcher.group(1)); 287 params.put(".runtime.version.major", matcher.group(2)); 288 params.put(".runtime.version.update", matcher.group(3)); 289 params.put(".runtime.version.minor", matcher.group(3)); 290 params.put(".runtime.version.security", matcher.group(3)); 291 params.put(".runtime.version.patch", matcher.group(4)); 292 params.put(".runtime.version.modifiers", ""); 293 return; 294 } 295 296 Pattern newVersionMatcher = Pattern.compile("java version \"((\\d+).(\\d+).(\\d+).(\\d+))(-(.*))?(\\+[^\"]*)?\""); 297 matcher = newVersionMatcher.matcher(versionOutput); 298 if (matcher.find()) { 299 params.put(".runtime.version", matcher.group(1)); 300 params.put(".runtime.version.release", matcher.group(1)); 301 params.put(".runtime.version.major", matcher.group(2)); 302 params.put(".runtime.version.update", matcher.group(3)); 303 params.put(".runtime.version.minor", matcher.group(3)); 304 params.put(".runtime.version.security", matcher.group(4)); 305 params.put(".runtime.version.patch", matcher.group(5)); 306 params.put(".runtime.version.modifiers", matcher.group(7)); 307 return; 308 } 309 310 params.put(".runtime.version", ""); 311 params.put(".runtime.version.release", ""); 312 params.put(".runtime.version.major", ""); 313 params.put(".runtime.version.update", ""); 314 params.put(".runtime.version.minor", ""); 315 params.put(".runtime.version.security", ""); 316 params.put(".runtime.version.patch", ""); 317 params.put(".runtime.version.modifiers", ""); 318 } 319 320 321 } |