Bug 166972 [Workbench] Migrate org.eclipse.ui.ide.workbench to IApplication
bundles/org.eclipse.ui.ide/src/org/eclipse/ui/internal/ide/IDEApplication.java
private static final String VERSION_FILENAME = "version.ini"; 
    private static final String WORKSPACE_VERSION_KEY = "org.eclipse.core.runtime"; 
    private static final String WORKSPACE_VERSION_VALUE = "1"; 
    private static final String PROP_EXIT_CODE = "eclipse.exitcode"; 
    /**
     * A special return code that will be recognized by the launcher and used to
     * restart the workbench.
     */
    private static final Integer EXIT_RELAUNCH = new Integer(24);
    /**
     * Creates a new IDE application.
     */
    public IDEApplication() {
        
    }
    /* (non-Javadoc)
     * @see org.eclipse.core.boot.IPlatformRunnable#run(java.lang.Object)
     */
    public Object run(Object args) throws Exception {
        Display display = createDisplay();
        try {
            Shell shell = new Shell(display, SWT.ON_TOP);
            try {
                if (!checkInstanceLocation(shell)) {
                    Platform.endSplash();
                    return EXIT_OK;
                }
            } finally {
                if (shell != null) {
					shell.dispose();