Revision 34441

View differences:

branches/v2_0_0_prep/applications/appgvSIG/pom.xml
351 351
			<groupId>org.gvsig</groupId>
352 352
			<artifactId>org.gvsig.remoteclient</artifactId>
353 353
			<version>2.0-SNAPSHOT</version>
354
		</dependency>	
354
		</dependency>
355
        <dependency>
356
            <groupId>org.gvsig</groupId>
357
            <artifactId>org.gvsig.installer.lib.api</artifactId>
358
            <version>1.0.0-SNAPSHOT</version>
359
            <scope>provided</scope>
360
        </dependency>
355 361
	</dependencies>
356 362
	<properties>
357 363
		<build-dir>${basedir}/../build</build-dir>
branches/v2_0_0_prep/applications/appgvSIG/config/about.htm
8 8
<br>
9 9
Version: %(version)<br>
10 10
Build: %(build)<br>
11
Java version: %(java.version)<br/>
11 12
&copy; Copyright gvSIG Association. All rights reserved.<br>
12 13
<br>
13 14
For more information, contact:<a href="http://www.gvsig.com/contact-info">http://www.gvsig.com/contact-info</a><br>
......
32 33
Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307,USA.
33 34
<br>
34 35

  
35
<p>Agradecimientos:</p>
36
<p>With our most sincere thanks to:</p>
36 37
<ul>
37 38
	<li><a target="blank" href="http://www.gvsig.org/web/community/agradecimientos/traductores/">Traductores</a></li>
38 39
	<li><a target="blank" href="http://www.gvsig.org/web/community/agradecimientos/testers/">Testers</a></li>
branches/v2_0_0_prep/applications/appgvSIG/src/org/gvsig/app/imp/AppgvSIGDefaultImplLibrary.java
28 28

  
29 29
import org.gvsig.app.ApplicationLibrary;
30 30
import org.gvsig.app.ApplicationLocator;
31
import org.gvsig.installer.lib.api.InstallerLibrary;
31 32
import org.gvsig.tools.library.AbstractLibrary;
32 33
import org.gvsig.tools.library.Library;
33 34
import org.gvsig.tools.library.LibraryException;
......
40 41

  
41 42
	public AppgvSIGDefaultImplLibrary() {
42 43
		super(ApplicationLibrary.class, Library.TYPE.IMPL);
44
        require(InstallerLibrary.class);
43 45
	}
44 46

  
45 47
	@Override
branches/v2_0_0_prep/applications/appgvSIG/src/org/gvsig/app/imp/DefaultAppgvSIGManager.java
33 33
import java.util.ArrayList;
34 34
import java.util.Iterator;
35 35
import java.util.List;
36
import java.util.prefs.Preferences;
37 36

  
38 37
import org.cresques.cts.IProjection;
38

  
39 39
import org.gvsig.about.AboutLocator;
40 40
import org.gvsig.about.AboutManager;
41 41
import org.gvsig.andami.PluginServices;
......
68 68
import org.gvsig.tools.dispose.DisposableManager;
69 69
import org.gvsig.tools.dynobject.DynObjectManager;
70 70
import org.gvsig.tools.extensionpoint.ExtensionPoint;
71
import org.gvsig.tools.extensionpoint.ExtensionPoint.Extension;
71 72
import org.gvsig.tools.extensionpoint.ExtensionPointManager;
72
import org.gvsig.tools.extensionpoint.ExtensionPoint.Extension;
73 73
import org.gvsig.tools.persistence.PersistenceManager;
74 74

  
75 75

  
......
90 90
	private ExtensionPointManager epManager;
91 91
	private IColorTablesFactory factory;
92 92

  
93
    private Version version;
93 94

  
94

  
95 95
	public DefaultAppgvSIGManager() {
96 96
		epManager = ToolsLocator.getExtensionPointManager();
97 97
		epManager.add(EPNAME_PREPARE_OPEN_DATASTORE,
......
103 103
		epManager.add(EPNAME_ADD_TABLE_WIZARD,
104 104
				"Wizards to add new document table");
105 105

  
106
        version = new Version();
106 107
	}
107 108

  
108 109
	/* (non-Javadoc)
......
283 284
	}
284 285

  
285 286
	public Version getVersion() {
286
		return new Version();
287
        return version;
287 288
	}
288 289
	
289 290
	public AboutManager getAbout() {
branches/v2_0_0_prep/applications/appgvSIG/src/org/gvsig/app/extension/About.java
108 108
            getResource("images/gvsig.png"));
109 109
		about.getProject().set("build",version.getBuildId());
110 110
		about.getProject().set("version",version.getFormat());
111
        about.getProject().set("java.version",
112
            System.getProperty("java.version"));
111 113
		
112 114
		about.addSponsor(
113 115
			"CIT GVA", //"Conselleria d'infraestructures i transport de la Generalitat Valenciana",
branches/v2_0_0_prep/applications/appgvSIG/src/org/gvsig/app/extension/Version.java
21 21
 */
22 22
package org.gvsig.app.extension;
23 23

  
24
import java.io.File;
25
import java.util.StringTokenizer;
26

  
27
import org.slf4j.Logger;
28
import org.slf4j.LoggerFactory;
29

  
30
import org.gvsig.andami.Launcher;
31
import org.gvsig.app.ApplicationLocator;
32
import org.gvsig.installer.lib.api.InstallerLocator;
33
import org.gvsig.installer.lib.api.PackageInfo;
34
import org.gvsig.installer.lib.api.creation.MakePluginPackageService;
35

  
24 36
/**
25 37
 * gvSIG application version information.
26 38
 * 
......
29 41
 */
30 42
public class Version {
31 43

  
32
    public final static int MAJOR_VERSION_NUMBER = 2;
33
    public final static int MINOR_VERSION_NUMBER = 0;
34
    public final static int RELEASE_NUMBER = 0;
44
    private static final Logger LOG = LoggerFactory.getLogger(Version.class);
45
    private static final String APP_PACKAGE_CODE = "org.gvsig.app";
35 46

  
36
    private static String BUILD = "2023";
47
    private int majorVersionNumber;
48
    private int minorVersionNumber;
49
    private int releaseNumber;
37 50

  
51
    private String buildNumber = "unknown";
52

  
53
    @Deprecated
38 54
    public static String format() {
39
        return MAJOR_VERSION_NUMBER + "." + MINOR_VERSION_NUMBER + "."
40
            + RELEASE_NUMBER;
55
        return ApplicationLocator.getManager().getVersion().getFormat();
41 56
    }
42 57

  
58
    @Deprecated
43 59
    public static String longFormat() {
44
        return MAJOR_VERSION_NUMBER + "." + MINOR_VERSION_NUMBER + "."
45
            + RELEASE_NUMBER + " (Build " + getBuild() + ")";
60
        return ApplicationLocator.getManager().getVersion().getLongFormat();
46 61
    }
47 62

  
63
    @Deprecated
48 64
    public static String getBuild() {
49
        // TODO: read from the package.info
65
        return ApplicationLocator.getManager().getVersion().getBuildId();
66
    }
50 67

  
51
        // if (BUILD == null) {
52
        // try {
53
        // // Leemos el n? de build
54
        // BufferedReader fich = new BufferedReader(
55
        // new
56
        // FileReader(FPanelAbout.class.getResource("/build.number").getFile()));
57
        // fich.readLine();
58
        // fich.readLine();
59
        // String strVer = fich.readLine();
60
        // StringTokenizer strTokenizer = new StringTokenizer(strVer);
61
        // String strToken = strTokenizer.nextToken("=");
62
        // strToken = strTokenizer.nextToken();
63
        // BUILD = strToken;
64
        // fich.close();
65
        // } catch (Exception e) {
66
        // e.printStackTrace();
67
        // }
68
        // BUILD = "2021";
69
        // }
70
        return BUILD;
68
    /**
69
     * Constructor.
70
     * Loads version information from the application installation information.
71
     */
72
    public Version() {
73
        String[] versions = new String[] { "2", "0", "0" };
74
        try {
75
            MakePluginPackageService packageService =
76
                InstallerLocator.getInstallerManager()
77
                    .getMakePluginPackageService(
78
                        new File(Launcher.getAndamiConfig()
79
                            .getPluginsDirectory()).getAbsoluteFile());
80

  
81
            PackageInfo info =
82
                packageService.getPluginPackageInfo(APP_PACKAGE_CODE);
83

  
84
            String version = info.getGvSIGVersion();
85

  
86
            StringTokenizer tokens = new StringTokenizer(version, ".");
87
            int i = 0;
88
            while (tokens.hasMoreTokens() && i < 3) {
89
                versions[i] = tokens.nextToken();
90
                i++;
91
            }
92
            this.buildNumber = Integer.toString(info.getBuild());
93

  
94
        } catch (Exception e) {
95
            LOG.error("Error getting version information through "
96
                + "the InstallManager", e);
97
        }
98

  
99
        this.majorVersionNumber = Integer.parseInt(versions[0]);
100
        this.minorVersionNumber = Integer.parseInt(versions[1]);
101
        this.releaseNumber = Integer.parseInt(versions[2]);
102
        
103
        LOG.debug("Loaded version information: {}", getLongFormat());
71 104
    }
72 105

  
73 106
    public int getMinor() {
74
        return MINOR_VERSION_NUMBER;
107
        return minorVersionNumber;
75 108
    }
76 109

  
77 110
    public int getMajor() {
78
        return MAJOR_VERSION_NUMBER;
111
        return majorVersionNumber;
79 112
    }
80 113

  
81 114
    public int getRelease() {
82
        return RELEASE_NUMBER;
115
        return releaseNumber;
83 116
    }
84 117

  
85 118
    public String getBuildId() {
86
        return getBuild();
119
        return buildNumber;
87 120
    }
88 121

  
89
    @Override
90 122
    public String toString() {
91
        return longFormat();
123
        return getLongFormat();
92 124
    }
93 125

  
94 126
    public String getFormat() {
95
        return Version.format();
127
        return getMajor() + "." + getMinor() + "." + getRelease();
96 128
    }
97 129

  
98 130
    public String getLongFormat() {
99
        return Version.longFormat();
131
        return getFormat() + " (Build " + getBuildId() + ")";
100 132
    }
101 133
}

Also available in: Unified diff