1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27 package org.microemu.app.util;
28
29 import java.io.IOException;
30 import java.io.InputStream;
31 import java.util.Properties;
32
33
34
35
36
37 public class BuildVersion {
38
39 public static String getVersion() {
40 InputStream buildVersionInputStream = BuildVersion.class
41 .getResourceAsStream("/META-INF/microemulator-build.version");
42 if (buildVersionInputStream != null) {
43 Properties projectProperties = new Properties();
44 try {
45 projectProperties.load(buildVersionInputStream);
46 String version = projectProperties.getProperty("build.version");
47 if (version != null) {
48 String buildNumber = projectProperties.getProperty("build.buildNum");
49 if (buildNumber != null) {
50 version += "." + buildNumber;
51 }
52 return version;
53 }
54 } catch (IOException ignore) {
55 } finally {
56 IOUtils.closeQuietly(buildVersionInputStream);
57 }
58 }
59
60 InputStream mavenDataInputStream = BuildVersion.class
61 .getResourceAsStream("/META-INF/maven/org.microemu/microemu-javase/pom.properties");
62 if (mavenDataInputStream != null) {
63 Properties projectProperties = new Properties();
64 try {
65 projectProperties.load(mavenDataInputStream);
66 String version = projectProperties.getProperty("version");
67 if (version != null) {
68 return version;
69 }
70 } catch (IOException ignore) {
71 } finally {
72 IOUtils.closeQuietly(mavenDataInputStream);
73 }
74 }
75 return "n/a";
76 }
77 }