diff --git a/pom.xml b/pom.xml index bf3de0345e..c4707d78f4 100644 --- a/pom.xml +++ b/pom.xml @@ -31,11 +31,11 @@ 1.2.1 0.22 - 3.3.0 + 3.3.1-SNAPSHOT - 3.1.1 + 3.3.0 3.3.0 - 3.0.2 + 3.3.0-SNAPSHOT 4.3.4.Final diff --git a/zanata-war/pom.xml b/zanata-war/pom.xml index 01a8f6fe01..b3dee8052b 100644 --- a/zanata-war/pom.xml +++ b/zanata-war/pom.xml @@ -1015,7 +1015,7 @@ - 2.9.0-01-20130710.222406-4 + 2.9.0-01-20140221.234306-6 diff --git a/zanata-war/src/main/java/org/zanata/ApplicationConfiguration.java b/zanata-war/src/main/java/org/zanata/ApplicationConfiguration.java index 5a27e85c49..b8f0cd9880 100644 --- a/zanata-war/src/main/java/org/zanata/ApplicationConfiguration.java +++ b/zanata-war/src/main/java/org/zanata/ApplicationConfiguration.java @@ -94,6 +94,10 @@ public class ApplicationConfiguration implements Serializable { @Setter private String buildTimestamp; + @Getter + @Setter + private String scmDescribe; + @Getter private boolean copyTransEnabled = true; diff --git a/zanata-war/src/main/java/org/zanata/ZanataInit.java b/zanata-war/src/main/java/org/zanata/ZanataInit.java index c7468915fb..46290d9789 100644 --- a/zanata-war/src/main/java/org/zanata/ZanataInit.java +++ b/zanata-war/src/main/java/org/zanata/ZanataInit.java @@ -49,6 +49,8 @@ import org.jboss.seam.contexts.ServletLifecycle; import org.jboss.seam.core.Events; import org.zanata.exception.ZanataInitializationException; +import org.zanata.rest.dto.VersionInfo; +import org.zanata.util.VersionUtility; import com.beust.jcommander.internal.Lists; @@ -72,7 +74,6 @@ public class ZanataInit { } public static final String EVENT_Zanata_Startup = "Zanata.startup"; - public static final String UNKNOWN_VERSION = "UNKNOWN"; @In private ApplicationConfiguration applicationConfiguration; @@ -84,9 +85,9 @@ public void initZanata() throws Exception { String appServerHome = servletContext.getRealPath("/"); File manifestFile = new File(appServerHome, "META-INF/MANIFEST.MF"); - String version = "UNKOWN"; - String buildTimestamp = "UNKOWN"; + VersionInfo ver = new VersionInfo(); + Attributes atts = null; if (manifestFile.canRead()) { Manifest mf = new Manifest(); final FileInputStream fis = new FileInputStream(manifestFile); @@ -95,24 +96,15 @@ public void initZanata() throws Exception { } finally { fis.close(); } - - Attributes atts = mf.getMainAttributes(); - - version = atts.getValue("Implementation-Version"); - buildTimestamp = atts.getValue("Implementation-Build"); - - if (version == null) { - version = UNKNOWN_VERSION; - } - if (buildTimestamp == null) { - buildTimestamp = UNKNOWN_VERSION; - } - this.applicationConfiguration.setVersion(version); - this.applicationConfiguration.setBuildTimestamp(buildTimestamp); - + atts = mf.getMainAttributes(); } + ver = VersionUtility.getVersionInfo(atts, ZanataInit.class); + + this.applicationConfiguration.setVersion(ver.getVersionNo()); + this.applicationConfiguration.setBuildTimestamp(ver.getBuildTimeStamp()); + this.applicationConfiguration.setScmDescribe(ver.getScmDescribe()); - this.logBanner(version, buildTimestamp); + logBanner(ver); if (this.applicationConfiguration.isDebug()) { log.info("debug: enabled"); @@ -310,7 +302,7 @@ private static void list(Context ctx, String indent, StringBuffer buffer, } } - private void logBanner(final String version, final String build) { + private void logBanner(VersionInfo ver) { log.info("============================================"); log.info(" _____ _ "); log.info(" |__ /__ _ _ __ __ _| |_ __ _ "); @@ -318,8 +310,9 @@ private void logBanner(final String version, final String build) { log.info(" / /| (_| | | | | (_| | || (_| | "); log.info(" /____\\__,_|_| |_|\\__,_|\\__\\__,_| "); log.info(" "); - log.info(" version " + version + ", build " + build); - log.info(" Red Hat Inc 2012"); + log.info(" Version: " + ver.getVersionNo()); + log.info(" SCM: " + ver.getScmDescribe()); + log.info(" Red Hat Inc 2008-2014"); log.info("============================================"); } } diff --git a/zanata-war/src/main/resources/messages.properties b/zanata-war/src/main/resources/messages.properties index a326026c66..ecfd886b29 100644 --- a/zanata-war/src/main/resources/messages.properties +++ b/zanata-war/src/main/resources/messages.properties @@ -103,7 +103,7 @@ jsf.IrcHelp=IRC Help jsf.FAQ=FAQ jsf.SiteMap=Site map -jsf.RunningVersionInfo=#{messages['jsf.Zanata']} #{applicationConfiguration.version} (#{applicationConfiguration.buildTimestamp}) +jsf.RunningVersionInfo=#{messages['jsf.Zanata']} #{applicationConfiguration.version} (#{applicationConfiguration.scmDescribe}) ! © is a copyright symbol ! "Red Hat, Inc" should only be translated to an alternative legal name for the same entity. If in doubt, leave it as-is. jsf.CopyrightNotice=Copyright © 2008-14 Red Hat, Inc diff --git a/zanata-war/src/test/java/org/zanata/rest/compat/StatisticsCompatibilityITCase.java b/zanata-war/src/test/java/org/zanata/rest/compat/StatisticsCompatibilityITCase.java index bcc4ae7bbc..0980852b60 100644 --- a/zanata-war/src/test/java/org/zanata/rest/compat/StatisticsCompatibilityITCase.java +++ b/zanata-war/src/test/java/org/zanata/rest/compat/StatisticsCompatibilityITCase.java @@ -22,9 +22,11 @@ import org.dbunit.operation.DatabaseOperation; import org.jboss.arquillian.container.test.api.RunAsClient; +import org.junit.Before; import org.junit.Test; import org.zanata.RestTest; import org.zanata.provider.DBUnitProvider; +import org.zanata.apicompat.rest.client.IStatisticsResource; import org.zanata.apicompat.rest.dto.stats.ContainerTranslationStatistics; import org.zanata.apicompat.rest.dto.stats.TranslationStatistics; import org.zanata.apicompat.rest.service.StatisticsResource; @@ -41,6 +43,16 @@ */ public class StatisticsCompatibilityITCase extends RestTest { + private StatisticsResource statsResource; + + @Before + public void before() { + statsResource = + super.createProxy( + createClientProxyFactory(TRANSLATOR, TRANSLATOR_KEY), + IStatisticsResource.class); + } + @Override protected void prepareDBUnitOperations() { addBeforeTestOperation(new DBUnitProvider.DataSetOperation( @@ -70,11 +82,6 @@ protected void prepareDBUnitOperations() { @Test @RunAsClient public void getStatisticsForIteration() throws Exception { - StatisticsResource statsResource = - super.createProxy( - createClientProxyFactory(TRANSLATOR, TRANSLATOR_KEY), - StatisticsResource.class, "/"); - ContainerTranslationStatistics stats = statsResource.getStatistics("sample-project", "1.0", true, true, null); @@ -120,11 +127,6 @@ public void getStatisticsForIteration() throws Exception { @Test @RunAsClient public void getStatisticsForDocument() throws Exception { - StatisticsResource statsResource = - super.createProxy( - createClientProxyFactory(TRANSLATOR, TRANSLATOR_KEY), - StatisticsResource.class, "/"); - ContainerTranslationStatistics stats = statsResource.getStatistics("sample-project", "1.0", "my/path/document.txt", true, null); @@ -167,11 +169,6 @@ public void getStatisticsForDocument() throws Exception { @Test @RunAsClient public void getStatisticsForIterationAndLocale() throws Exception { - StatisticsResource statsResource = - super.createProxy( - createClientProxyFactory(TRANSLATOR, TRANSLATOR_KEY), - StatisticsResource.class, "/"); - ContainerTranslationStatistics stats = statsResource.getStatistics("sample-project", "1.0", true, false, new String[] { "as" }); @@ -209,11 +206,6 @@ public void getStatisticsForIterationAndLocale() throws Exception { @Test @RunAsClient public void getStatisticsForDocumentAndLocale() throws Exception { - StatisticsResource statsResource = - super.createProxy( - createClientProxyFactory(TRANSLATOR, TRANSLATOR_KEY), - StatisticsResource.class, "/"); - ContainerTranslationStatistics stats = statsResource.getStatistics("sample-project", "1.0", "my/path/document.txt", true, new String[] { "as" }); diff --git a/zanata-war/src/test/java/org/zanata/rest/compat/VersionCompatibilityITCase.java b/zanata-war/src/test/java/org/zanata/rest/compat/VersionCompatibilityITCase.java index 6038ef51aa..4dc471529f 100644 --- a/zanata-war/src/test/java/org/zanata/rest/compat/VersionCompatibilityITCase.java +++ b/zanata-war/src/test/java/org/zanata/rest/compat/VersionCompatibilityITCase.java @@ -41,10 +41,7 @@ public void getVersionXml() { IVersionResource versionClient = super.createProxy( createClientProxyFactory(TRANSLATOR, TRANSLATOR_KEY), - IVersionResource.class, - // TODO remove this parameter after upgrading - // to apicompat 3.2 - "/version"); + IVersionResource.class); VersionInfo versionInfo = versionClient.get().getEntity(); assertThat(versionInfo.getVersionNo(), notNullValue());