poi-commits mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From n...@apache.org
Subject svn commit: r676221 - in /poi/trunk: build.xml src/documentation/content/xdocs/changes.xml src/documentation/content/xdocs/status.xml src/resources/version/ src/resources/version/Version.java.template
Date Sat, 12 Jul 2008 19:37:17 GMT
Author: nick
Date: Sat Jul 12 12:37:17 2008
New Revision: 676221

URL: http://svn.apache.org/viewvc?rev=676221&view=rev
Log:
Implement idea from bug #35583 - Include a version class, org.apache.poi.Version, to allow
easy introspection of the POI version

Added:
    poi/trunk/src/resources/version/
    poi/trunk/src/resources/version/Version.java.template
Modified:
    poi/trunk/build.xml
    poi/trunk/src/documentation/content/xdocs/changes.xml
    poi/trunk/src/documentation/content/xdocs/status.xml

Modified: poi/trunk/build.xml
URL: http://svn.apache.org/viewvc/poi/trunk/build.xml?rev=676221&r1=676220&r2=676221&view=diff
==============================================================================
--- poi/trunk/build.xml (original)
+++ poi/trunk/build.xml Sat Jul 12 12:37:17 2008
@@ -369,6 +369,29 @@
     </javac>
   </target>
 
+  <target name="compile-version" depends="init"
+        description="Compiles the version class">
+	<!-- Generate the .java file -->
+	<property name="version.java" value="${main.output.dir}/org/apache/poi/Version.java"
/>
+	<delete file="${version.java}" />
+	<copy 
+		file="src/resources/version/Version.java.template"
+		tofile="${version.java}">
+		<filterset>
+			<filter token="VERSION" value="${version.id}" />
+			<filter token="DSTAMP" value="${DSTAMP}" />
+		</filterset>
+	</copy>
+
+	<!-- Compile -->
+    <javac target="${jdk.version.class}" source="${jdk.version.source}"
+      failonerror="true" destdir="${main.output.dir}" debug="on" fork="yes"
+      srcdir="${main.output.dir}" />
+
+	<!-- Tidy up -->
+	<delete file="${version.java}" />
+  </target>
+
   <target name="test" depends="test-main,test-scratchpad,test-contrib"
     description="Tests main, contrib and scratchpad"/>
 
@@ -950,7 +973,7 @@
 		<!-- And that's it for maven -->
 	</target>
 
-    <target name="jar" depends="compile" description="Creates jar files for distribution">
+    <target name="jar" depends="compile,compile-version" description="Creates jar files
for distribution">
         <jar destfile="${dist.dir}/${jar.name}-${version.id}-${DSTAMP}.jar">
 			<fileset dir="${main.output.dir}" />
 			<fileset dir="legal/" />

Modified: poi/trunk/src/documentation/content/xdocs/changes.xml
URL: http://svn.apache.org/viewvc/poi/trunk/src/documentation/content/xdocs/changes.xml?rev=676221&r1=676220&r2=676221&view=diff
==============================================================================
--- poi/trunk/src/documentation/content/xdocs/changes.xml (original)
+++ poi/trunk/src/documentation/content/xdocs/changes.xml Sat Jul 12 12:37:17 2008
@@ -37,6 +37,7 @@
 
 		<!-- Don't forget to update status.xml too! -->
         <release version="3.1.1-alpha1" date="2008-??-??">
+           <action dev="POI-DEVELOPERS" type="add">35583 - Include a version class,
org.apache.poi.Version, to allow easy introspection of the POI version</action>
            <action dev="POI-DEVELOPERS" type="add">Allow the cloning of one HSSFCellStyle
onto another, including cloning styles from one HSSFWorkbook onto another</action>
            <action dev="POI-DEVELOPERS" type="fix">45289 - finished support for special
comparison operators in COUNTIF</action>
            <action dev="POI-DEVELOPERS" type="fix">45126 - Avoid generating multiple
NamedRanges with the same name, which Excel dislikes</action>

Modified: poi/trunk/src/documentation/content/xdocs/status.xml
URL: http://svn.apache.org/viewvc/poi/trunk/src/documentation/content/xdocs/status.xml?rev=676221&r1=676220&r2=676221&view=diff
==============================================================================
--- poi/trunk/src/documentation/content/xdocs/status.xml (original)
+++ poi/trunk/src/documentation/content/xdocs/status.xml Sat Jul 12 12:37:17 2008
@@ -34,6 +34,7 @@
 	<!-- Don't forget to update changes.xml too! -->
     <changes>
         <release version="3.1.1-alpha1" date="2008-??-??">
+           <action dev="POI-DEVELOPERS" type="add">35583 - Include a version class,
org.apache.poi.Version, to allow easy introspection of the POI version</action>
            <action dev="POI-DEVELOPERS" type="add">Allow the cloning of one HSSFCellStyle
onto another, including cloning styles from one HSSFWorkbook onto another</action>
            <action dev="POI-DEVELOPERS" type="fix">45289 - finished support for special
comparison operators in COUNTIF</action>
            <action dev="POI-DEVELOPERS" type="fix">45126 - Avoid generating multiple
NamedRanges with the same name, which Excel dislikes</action>

Added: poi/trunk/src/resources/version/Version.java.template
URL: http://svn.apache.org/viewvc/poi/trunk/src/resources/version/Version.java.template?rev=676221&view=auto
==============================================================================
--- poi/trunk/src/resources/version/Version.java.template (added)
+++ poi/trunk/src/resources/version/Version.java.template Sat Jul 12 12:37:17 2008
@@ -0,0 +1,69 @@
+/* ====================================================================
+   Licensed to the Apache Software Foundation (ASF) under one or more
+   contributor license agreements.  See the NOTICE file distributed with
+   this work for additional information regarding copyright ownership.
+   The ASF licenses this file to You 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 org.apache.poi;
+
+/**
+ * Administrative class to keep track of the version number of the 
+ *  POI release.
+ *
+ * This class implements the upcoming standard of having 
+ *  org.apache.project-name.Version.getVersion() be a standard 
+ *  way to get version information.
+ */
+public class Version {
+	private static final String VERSION_STRING = "@VERSION@";
+	private static final String RELEASE_DATE = "@DSTAMP@";
+
+	/**
+	 * Return the basic version string, of the form
+	 *  nn.nn(.nn)
+	 */
+	public static String getVersion() {
+		return VERSION_STRING;
+	}
+
+	/**
+	 * Return the date of the release / build
+	 */
+	public static String getReleaseDate() {
+		return RELEASE_DATE;
+	}
+
+	/**
+	 * Name of product: POI
+	 */
+	public static String getProduct() {
+		return "POI";
+	}
+	/**
+	 * Implementation Language: Java
+	 */
+	public static String getImplementationLanguage() {
+		return "Java";
+	}
+
+	/**
+	 * Prints the version to the command line
+	 */
+	public static void main(String[] args) {
+		System.out.println(
+			"Apache " + getProduct() + " " +
+			getVersion() + " (" + getReleaseDate() + ")"
+		);
+	}
+}



---------------------------------------------------------------------
To unsubscribe, e-mail: commits-unsubscribe@poi.apache.org
For additional commands, e-mail: commits-help@poi.apache.org


Mime
View raw message