Move current version to Main.
authorDavid ‘Bombe’ Roden <bombe@freenetproject.org>
Wed, 24 Dec 2008 01:55:01 +0000 (02:55 +0100)
committerDavid ‘Bombe’ Roden <bombe@freenetproject.org>
Wed, 24 Dec 2008 01:55:01 +0000 (02:55 +0100)
src/de/todesbaum/jsite/main/Main.java
src/de/todesbaum/jsite/main/Version.java

index b04473d..8218abc 100644 (file)
@@ -70,6 +70,9 @@ public class Main implements ActionListener, ListSelectionListener, WizardListen
        /** Whether the debug mode is activated. */
        private static boolean debug = false;
 
+       /** The version. */
+       private static final Version VERSION = new Version(0, 6, 2);
+
        /** The configuration. */
        private Configuration configuration;
 
@@ -210,7 +213,7 @@ public class Main implements ActionListener, ListSelectionListener, WizardListen
 
                        @SuppressWarnings("synthetic-access")
                        public void actionPerformed(ActionEvent e) {
-                               JOptionPane.showMessageDialog(wizard, MessageFormat.format(I18n.getMessage("jsite.about.message"), Version.getVersion()), null, JOptionPane.INFORMATION_MESSAGE, jSiteIcon);
+                               JOptionPane.showMessageDialog(wizard, MessageFormat.format(I18n.getMessage("jsite.about.message"), getVersion().toString()), null, JOptionPane.INFORMATION_MESSAGE, jSiteIcon);
                        }
                };
 
@@ -362,6 +365,15 @@ public class Main implements ActionListener, ListSelectionListener, WizardListen
                return SUPPORTED_LOCALES[0];
        }
 
+       /**
+        * Returns the version.
+        *
+        * @return The version
+        */
+       public static final Version getVersion() {
+               return VERSION;
+       }
+
        //
        // ACTIONS
        //
index ec7df39..2b80c36 100644 (file)
@@ -26,9 +26,6 @@ package de.todesbaum.jsite.main;
  */
 public class Version implements Comparable<Version> {
 
-       /** The version. */
-       private static final Version VERSION = new Version(0, 6, 2);
-
        /** The components of the version information. */
        private final int[] components;
 
@@ -64,12 +61,25 @@ public class Version implements Comparable<Version> {
        }
 
        /**
-        * Returns the version.
+        * Parses a version from the given string.
         *
-        * @return The version
+        * @param versionString
+        *            The version string to parse
+        * @return The parsed version, or <code>null</code> if the string could not
+        *         be parsed
         */
-       public static final String getVersion() {
-               return VERSION.toString();
+       public static Version parse(String versionString) {
+               String[] componentStrings = versionString.split("\\.");
+               int[] components = new int[componentStrings.length];
+               int index = -1;
+               for (String componentString : componentStrings) {
+                       try {
+                               components[++index] = Integer.parseInt(componentString);
+                       } catch (NumberFormatException nfe1) {
+                               return null;
+                       }
+               }
+               return new Version(components);
        }
 
        /**