Author: suresh
Date: Fri Jan 18 22:32:49 2013
New Revision: 1435379
URL: http://svn.apache.org/viewvc?rev=1435379&view=rev
Log:
HADOOP-8924. Revert r1435372 that missed some files
Added:
hadoop/common/trunk/hadoop-common-project/hadoop-common/dev-support/saveVersion.sh
- copied unchanged from r1435371,
hadoop/common/trunk/hadoop-common-project/hadoop-common/dev-support/saveVersion.sh
hadoop/common/trunk/hadoop-common-project/hadoop-common/src/main/java/org/apache/hadoop/HadoopVersionAnnotation.java
- copied unchanged from r1435371,
hadoop/common/trunk/hadoop-common-project/hadoop-common/src/main/java/org/apache/hadoop/HadoopVersionAnnotation.java
Removed:
hadoop/common/trunk/hadoop-common-project/hadoop-common/src/main/resources/common-version-info.properties
Modified:
hadoop/common/trunk/hadoop-common-project/hadoop-common/CHANGES.txt
hadoop/common/trunk/hadoop-common-project/hadoop-common/pom.xml
hadoop/common/trunk/hadoop-common-project/hadoop-common/src/main/java/org/apache/hadoop/util/VersionInfo.java
Modified: hadoop/common/trunk/hadoop-common-project/hadoop-common/CHANGES.txt
URL:
http://svn.apache.org/viewvc/hadoop/common/trunk/hadoop-common-project/hadoop-common/CHANGES.txt?rev=1435379&r1=1435378&r2=1435379&view=diff
==============================================================================
--- hadoop/common/trunk/hadoop-common-project/hadoop-common/CHANGES.txt
(original)
+++ hadoop/common/trunk/hadoop-common-project/hadoop-common/CHANGES.txt Fri Jan
18 22:32:49 2013
@@ -447,9 +447,6 @@ Release 2.0.3-alpha - Unreleased
HADOOP-9216. CompressionCodecFactory#getCodecClasses should trim the
result of parsing by Configuration. (Tsuyoshi Ozawa via todd)
- HADOOP-8924. Add maven plugin alternative to shell script to save
- package-info.java. (Alejandro Abdelnur, Chris Nauroth via suresh)
-
OPTIMIZATIONS
HADOOP-8866. SampleQuantiles#query is O(N^2) instead of O(N). (Andrew Wang
Modified: hadoop/common/trunk/hadoop-common-project/hadoop-common/pom.xml
URL:
http://svn.apache.org/viewvc/hadoop/common/trunk/hadoop-common-project/hadoop-common/pom.xml?rev=1435379&r1=1435378&r2=1435379&view=diff
==============================================================================
--- hadoop/common/trunk/hadoop-common-project/hadoop-common/pom.xml (original)
+++ hadoop/common/trunk/hadoop-common-project/hadoop-common/pom.xml Fri Jan 18
22:32:49 2013
@@ -244,52 +244,8 @@
</dependencies>
<build>
- <!--
- Include all files in src/main/resources. By default, do not apply property
- substitution (filtering=false), but do apply property substitution to
- common-version-info.properties (filtering=true). This will substitute the
- version information correctly, but prevent Maven from altering other files
- like core-default.xml.
- -->
- <resources>
- <resource>
- <directory>${basedir}/src/main/resources</directory>
- <excludes>
- <exclude>common-version-info.properties</exclude>
- </excludes>
- <filtering>false</filtering>
- </resource>
- <resource>
- <directory>${basedir}/src/main/resources</directory>
- <includes>
- <include>common-version-info.properties</include>
- </includes>
- <filtering>true</filtering>
- </resource>
- </resources>
<plugins>
<plugin>
- <groupId>org.apache.hadoop</groupId>
- <artifactId>hadoop-maven-plugins</artifactId>
- <executions>
- <execution>
- <id>version-info</id>
- <goals>
- <goal>version-info</goal>
- </goals>
- <configuration>
- <source>
- <directory>${basedir}/src/main</directory>
- <includes>
- <include>java/**/*.java</include>
- <include>proto/**/*.proto</include>
- </includes>
- </source>
- </configuration>
- </execution>
- </executions>
- </plugin>
- <plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-surefire-plugin</artifactId>
<configuration>
@@ -333,6 +289,22 @@
</configuration>
</execution>
<execution>
+ <id>save-version</id>
+ <phase>generate-sources</phase>
+ <goals>
+ <goal>run</goal>
+ </goals>
+ <configuration>
+ <target>
+ <mkdir
dir="${project.build.directory}/generated-sources/java"/>
+ <exec executable="sh">
+ <arg
+ line="${basedir}/dev-support/saveVersion.sh
${project.version} ${project.build.directory}/generated-sources/java"/>
+ </exec>
+ </target>
+ </configuration>
+ </execution>
+ <execution>
<id>generate-test-sources</id>
<phase>generate-test-sources</phase>
<goals>
Modified:
hadoop/common/trunk/hadoop-common-project/hadoop-common/src/main/java/org/apache/hadoop/util/VersionInfo.java
URL:
http://svn.apache.org/viewvc/hadoop/common/trunk/hadoop-common-project/hadoop-common/src/main/java/org/apache/hadoop/util/VersionInfo.java?rev=1435379&r1=1435378&r2=1435379&view=diff
==============================================================================
---
hadoop/common/trunk/hadoop-common-project/hadoop-common/src/main/java/org/apache/hadoop/util/VersionInfo.java
(original)
+++
hadoop/common/trunk/hadoop-common-project/hadoop-common/src/main/java/org/apache/hadoop/util/VersionInfo.java
Fri Jan 18 22:32:49 2013
@@ -20,78 +20,41 @@ package org.apache.hadoop.util;
import org.apache.commons.logging.Log;
import org.apache.commons.logging.LogFactory;
+import org.apache.hadoop.HadoopVersionAnnotation;
import org.apache.hadoop.classification.InterfaceAudience;
import org.apache.hadoop.classification.InterfaceStability;
-import java.io.IOException;
-import java.io.InputStream;
-import java.util.Properties;
-
/**
- * This class returns build information about Hadoop components.
+ * This class finds the package info for Hadoop and the HadoopVersionAnnotation
+ * information.
*/
@InterfaceAudience.Private
@InterfaceStability.Unstable
public class VersionInfo {
private static final Log LOG = LogFactory.getLog(VersionInfo.class);
- private Properties info;
-
- protected VersionInfo(String component) {
- info = new Properties();
- String versionInfoFile = component + "-version-info.properties";
- try {
- InputStream is = Thread.currentThread().getContextClassLoader()
- .getResourceAsStream(versionInfoFile);
- info.load(is);
- } catch (IOException ex) {
- LogFactory.getLog(getClass()).warn("Could not read '" +
- versionInfoFile + "', " + ex.toString(), ex);
- }
- }
-
- protected String _getVersion() {
- return info.getProperty("version", "Unknown");
- }
-
- protected String _getRevision() {
- return info.getProperty("revision", "Unknown");
- }
-
- protected String _getBranch() {
- return info.getProperty("branch", "Unknown");
- }
-
- protected String _getDate() {
- return info.getProperty("date", "Unknown");
- }
-
- protected String _getUser() {
- return info.getProperty("user", "Unknown");
- }
-
- protected String _getUrl() {
- return info.getProperty("url", "Unknown");
- }
-
- protected String _getSrcChecksum() {
- return info.getProperty("srcChecksum", "Unknown");
+ private static Package myPackage;
+ private static HadoopVersionAnnotation version;
+
+ static {
+ myPackage = HadoopVersionAnnotation.class.getPackage();
+ version = myPackage.getAnnotation(HadoopVersionAnnotation.class);
}
- protected String _getBuildVersion(){
- return getVersion() +
- " from " + _getRevision() +
- " by " + _getUser() +
- " source checksum " + _getSrcChecksum();
+ /**
+ * Get the meta-data for the Hadoop package.
+ * @return
+ */
+ static Package getPackage() {
+ return myPackage;
}
-
- private static VersionInfo COMMON_VERSION_INFO = new VersionInfo("common");
+
/**
* Get the Hadoop version.
* @return the Hadoop version string, eg. "0.6.3-dev"
*/
public static String getVersion() {
- return COMMON_VERSION_INFO._getVersion();
+ return version != null ? version.version() : "Unknown";
}
/**
@@ -99,7 +62,7 @@ public class VersionInfo {
* @return the revision number, eg. "451451"
*/
public static String getRevision() {
- return COMMON_VERSION_INFO._getRevision();
+ return version != null ? version.revision() : "Unknown";
}
/**
@@ -107,7 +70,7 @@ public class VersionInfo {
* @return The branch name, e.g. "trunk" or "branches/branch-0.20"
*/
public static String getBranch() {
- return COMMON_VERSION_INFO._getBranch();
+ return version != null ? version.branch() : "Unknown";
}
/**
@@ -115,7 +78,7 @@ public class VersionInfo {
* @return the compilation date in unix date format
*/
public static String getDate() {
- return COMMON_VERSION_INFO._getDate();
+ return version != null ? version.date() : "Unknown";
}
/**
@@ -123,14 +86,14 @@ public class VersionInfo {
* @return the username of the user
*/
public static String getUser() {
- return COMMON_VERSION_INFO._getUser();
+ return version != null ? version.user() : "Unknown";
}
/**
* Get the subversion URL for the root Hadoop directory.
*/
public static String getUrl() {
- return COMMON_VERSION_INFO._getUrl();
+ return version != null ? version.url() : "Unknown";
}
/**
@@ -138,7 +101,7 @@ public class VersionInfo {
* built.
**/
public static String getSrcChecksum() {
- return COMMON_VERSION_INFO._getSrcChecksum();
+ return version != null ? version.srcChecksum() : "Unknown";
}
/**
@@ -146,11 +109,14 @@ public class VersionInfo {
* revision, user and date.
*/
public static String getBuildVersion(){
- return COMMON_VERSION_INFO._getBuildVersion();
+ return VersionInfo.getVersion() +
+ " from " + VersionInfo.getRevision() +
+ " by " + VersionInfo.getUser() +
+ " source checksum " + VersionInfo.getSrcChecksum();
}
public static void main(String[] args) {
- LOG.debug("version: "+ getVersion());
+ LOG.debug("version: "+ version);
System.out.println("Hadoop " + getVersion());
System.out.println("Subversion " + getUrl() + " -r " + getRevision());
System.out.println("Compiled by " + getUser() + " on " + getDate());