summaryrefslogtreecommitdiffstats
path: root/jack
diff options
context:
space:
mode:
authorYohann Roussel <yroussel@google.com>2015-06-16 16:58:51 +0200
committerJean-Marie Henaff <jmhenaff@google.com>2015-06-25 11:39:13 +0200
commitf589bf111e928b35733bfebf63613ee0a5434611 (patch)
tree113164aeee73b7ee9c568e0575c1cc139cc1d968 /jack
parentdce5a4a097596892f3d23a048f52295be80989a1 (diff)
downloadtoolchain_jack-f589bf111e928b35733bfebf63613ee0a5434611.zip
toolchain_jack-f589bf111e928b35733bfebf63613ee0a5434611.tar.gz
toolchain_jack-f589bf111e928b35733bfebf63613ee0a5434611.tar.bz2
Move Version to schedlib
(cherry picked from commit 5328d72913fb1f702143db28e19bb54e22466149) Change-Id: Iccd6843cc56a6a2484105e9c6690bf8a04fddc7e
Diffstat (limited to 'jack')
-rw-r--r--jack/src/com/android/jack/Jack.java13
-rw-r--r--jack/src/com/android/jack/SubReleaseKind.java29
-rw-r--r--jack/src/com/android/jack/Version.java126
-rw-r--r--jack/tests/com/android/jack/VersionTest.java5
4 files changed, 8 insertions, 165 deletions
diff --git a/jack/src/com/android/jack/Jack.java b/jack/src/com/android/jack/Jack.java
index d96c71a..554905c 100644
--- a/jack/src/com/android/jack/Jack.java
+++ b/jack/src/com/android/jack/Jack.java
@@ -253,6 +253,7 @@ import com.android.sched.scheduler.Scheduler;
import com.android.sched.scheduler.SubPlanBuilder;
import com.android.sched.scheduler.TagOrMarkerOrComponentSet;
import com.android.sched.util.RunnableHooks;
+import com.android.sched.util.Version;
import com.android.sched.util.config.Config;
import com.android.sched.util.config.ConfigPrinterFactory;
import com.android.sched.util.config.ConfigurationException;
@@ -272,7 +273,6 @@ import org.antlr.runtime.RecognitionException;
import java.io.File;
import java.io.IOException;
-import java.io.InputStream;
import java.util.ArrayList;
import java.util.List;
import java.util.Set;
@@ -1257,19 +1257,16 @@ public abstract class Jack {
}
}
- @Nonnull
- private static final String PROPERTIES_FILE = "jack-version.properties";
@CheckForNull
private static Version version = null;
@Nonnull
public static Version getVersion() {
if (version == null) {
- InputStream is = Jack.class.getClassLoader().getResourceAsStream(PROPERTIES_FILE);
- if (is != null) {
- version = new Version(is);
- } else {
- logger.log(Level.SEVERE, "Failed to open Jack properties file " + PROPERTIES_FILE);
+ try {
+ version = new Version("jack", Jack.class.getClassLoader());
+ } catch (IOException e) {
+ logger.log(Level.SEVERE, "Failed to open Jack version file", e);
throw new AssertionError();
}
}
diff --git a/jack/src/com/android/jack/SubReleaseKind.java b/jack/src/com/android/jack/SubReleaseKind.java
deleted file mode 100644
index c7c0c59..0000000
--- a/jack/src/com/android/jack/SubReleaseKind.java
+++ /dev/null
@@ -1,29 +0,0 @@
-/*
- * Copyright (C) 2015 The Android Open Source Project
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-package com.android.jack;
-
-/**
- * The kind of sub-release.
- */
-public enum SubReleaseKind {
- ENGINEERING,
- PRE_ALPHA,
- ALPHA,
- BETA,
- CANDIDATE,
- RELEASE;
-} \ No newline at end of file
diff --git a/jack/src/com/android/jack/Version.java b/jack/src/com/android/jack/Version.java
deleted file mode 100644
index f53a3af..0000000
--- a/jack/src/com/android/jack/Version.java
+++ /dev/null
@@ -1,126 +0,0 @@
-/*
- * Copyright (C) 2015 The Android Open Source Project
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-package com.android.jack;
-
-import com.android.sched.util.log.LoggerFactory;
-
-import java.io.IOException;
-import java.io.InputStream;
-import java.util.Properties;
-import java.util.logging.Level;
-import java.util.logging.Logger;
-
-import javax.annotation.CheckForNull;
-import javax.annotation.Nonnegative;
-import javax.annotation.Nonnull;
-
-/**
- * A class describing version, release, build & code.
- */
-public class Version {
- @Nonnull
- private static final Logger logger = LoggerFactory.getLogger();
-
- @Nonnull
- private String version;
- @Nonnull
- private String releaseName;
- @Nonnegative
- private int releaseCode;
- @Nonnull
- private SubReleaseKind subReleaseKind;
- @Nonnegative
- private int subReleaseCode;
- @CheckForNull
- private String buildId;
- @CheckForNull
- private String codeBase;
-
- public Version(@Nonnull InputStream is) {
- Properties prop = new Properties();
- try {
- prop.load(is);
-
- version = prop.getProperty("version");
- assert version != null;
-
- releaseName = prop.getProperty("version.release.name");
- assert releaseName != null;
-
- releaseCode = Integer.parseInt(prop.getProperty("version.release.code"));
- assert releaseCode >= 1;
-
- subReleaseCode = Integer.parseInt(prop.getProperty("version.sub-release.code"));
- assert subReleaseCode >= 0;
-
- subReleaseKind =
- SubReleaseKind.valueOf(SubReleaseKind.class,
- prop.getProperty("version.sub-release.kind"));
- buildId = prop.getProperty("version.buildid");
- codeBase = prop.getProperty("version.sha");
-
- if (codeBase == null || buildId == null) {
- subReleaseKind = SubReleaseKind.ENGINEERING;
- }
- } catch (IOException e) {
- logger.log(Level.SEVERE, "Failed to read Jack properties", e);
- throw new AssertionError();
- }
- }
-
- @Nonnull
- public String getVersion() {
- return version;
- }
-
- @Nonnull
- public String getReleaseName() {
- return releaseName;
- }
-
- @Nonnegative
- public int getReleaseCode() {
- return releaseCode;
- }
-
- @Nonnull
- public SubReleaseKind getSubReleaseKind() {
- return subReleaseKind;
- }
-
- @Nonnegative
- public int getSubReleaseCode() {
- return subReleaseCode;
- }
-
- @CheckForNull
- public String getBuildId() {
- return buildId;
- }
-
- @CheckForNull
- public String getCodeBase() {
- return codeBase;
- }
-
- @Nonnull
- public String getVerboseVersion() {
- return version + " '" + releaseName + "' ("
- + (buildId != null ? buildId : "engineering")
- + (codeBase != null ? (' ' + codeBase) : "") + ")";
- }
-} \ No newline at end of file
diff --git a/jack/tests/com/android/jack/VersionTest.java b/jack/tests/com/android/jack/VersionTest.java
index 73a1336..56ba09f 100644
--- a/jack/tests/com/android/jack/VersionTest.java
+++ b/jack/tests/com/android/jack/VersionTest.java
@@ -19,6 +19,9 @@ package com.android.jack;
import static org.junit.Assert.assertNotNull;
import static org.junit.Assert.assertTrue;
+import com.android.sched.util.SubReleaseKind;
+import com.android.sched.util.Version;
+
import org.junit.Test;
public class VersionTest {
@@ -31,8 +34,6 @@ public class VersionTest {
assertNotNull(version.getVersion());
assertNotNull(version.getVerboseVersion());
assertNotNull(version.getReleaseName());
- assertTrue(version.getReleaseCode() > 0);
- assertTrue(version.getSubReleaseCode() > 0);
if (version.getBuildId() == null || version.getCodeBase() == null) {
assertTrue(version.getSubReleaseKind() == SubReleaseKind.ENGINEERING);