You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@openjpa.apache.org by mp...@apache.org on 2006/07/24 00:01:47 UTC
svn commit: r424834 -
/incubator/openjpa/trunk/openjpa-kernel/src/main/java/org/apache/openjpa/conf/OpenJPAVersion.java
Author: mprudhom
Date: Sun Jul 23 15:01:46 2006
New Revision: 424834
URL: http://svn.apache.org/viewvc?rev=424834&view=rev
Log:
Cleaned up version parsing and made it more robust
Modified:
incubator/openjpa/trunk/openjpa-kernel/src/main/java/org/apache/openjpa/conf/OpenJPAVersion.java
Modified: incubator/openjpa/trunk/openjpa-kernel/src/main/java/org/apache/openjpa/conf/OpenJPAVersion.java
URL: http://svn.apache.org/viewvc/incubator/openjpa/trunk/openjpa-kernel/src/main/java/org/apache/openjpa/conf/OpenJPAVersion.java?rev=424834&r1=424833&r2=424834&view=diff
==============================================================================
--- incubator/openjpa/trunk/openjpa-kernel/src/main/java/org/apache/openjpa/conf/OpenJPAVersion.java (original)
+++ incubator/openjpa/trunk/openjpa-kernel/src/main/java/org/apache/openjpa/conf/OpenJPAVersion.java Sun Jul 23 15:01:46 2006
@@ -28,14 +28,12 @@
*/
public class OpenJPAVersion {
- public static final String VERSION_NUMBER = OpenJPAVersion.class
- .getPackage().getImplementationVersion() == null ? "0.0.0" :
- OpenJPAVersion.class.getPackage().getImplementationVersion();
+ public static final String VERSION_NUMBER;
private static final long RELEASE_SECONDS = 1147454303;
public static final Date RELEASE_DATE = new Date(RELEASE_SECONDS * 1000);
- public static final String VERSION_ID = VERSION_NUMBER;
+ public static final String VERSION_ID;
public static final String VENDOR_NAME = "OpenJPA";
public static final int MAJOR_RELEASE;
public static final int MINOR_RELEASE;
@@ -43,17 +41,40 @@
public static final String RELEASE_STATUS;
static {
+ Package pack = OpenJPAVersion.class.getPackage();
+ String vers = pack == null ? null : pack.getImplementationVersion();
+ if (vers == null || vers.length() == 0)
+ vers = "0.0.0";
- java.util.StringTokenizer tok =
- new java.util.StringTokenizer(VERSION_NUMBER,
- ".ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz");
- MAJOR_RELEASE =
- tok.hasMoreTokens() ? Integer.parseInt(tok.nextToken()) : 0;
- MINOR_RELEASE =
- tok.hasMoreTokens() ? Integer.parseInt(tok.nextToken()) : 0;
- PATCH_RELEASE =
- tok.hasMoreTokens() ? Integer.parseInt(tok.nextToken()) : 0;
- RELEASE_STATUS = tok.hasMoreTokens() ? tok.nextToken(".") : "";
+ VERSION_NUMBER = vers;
+ VERSION_ID = VERSION_NUMBER;
+
+ StringTokenizer tok = new StringTokenizer(VERSION_NUMBER, ".-");
+
+ int major, minor, patch;
+
+ try {
+ major = tok.hasMoreTokens() ? Integer.parseInt(tok.nextToken()) : 0;
+ } catch (Exception e) {
+ major = 0;
+ }
+
+ try {
+ minor = tok.hasMoreTokens() ? Integer.parseInt(tok.nextToken()) : 0;
+ } catch (Exception e) {
+ minor = 0;
+ }
+
+ try {
+ patch = tok.hasMoreTokens() ? Integer.parseInt(tok.nextToken()) : 0;
+ } catch (Exception e) {
+ patch = 0;
+ }
+
+ MAJOR_RELEASE = major;
+ MINOR_RELEASE = minor;
+ PATCH_RELEASE = patch;
+ RELEASE_STATUS = tok.hasMoreTokens() ? tok.nextToken("!") : "";
}
public static void main(String [] args) {