summaryrefslogtreecommitdiff
path: root/scripting/workben/installer/InstUtil.java
diff options
context:
space:
mode:
Diffstat (limited to 'scripting/workben/installer/InstUtil.java')
-rw-r--r--scripting/workben/installer/InstUtil.java326
1 files changed, 0 insertions, 326 deletions
diff --git a/scripting/workben/installer/InstUtil.java b/scripting/workben/installer/InstUtil.java
deleted file mode 100644
index 262ce6c01e6b..000000000000
--- a/scripting/workben/installer/InstUtil.java
+++ /dev/null
@@ -1,326 +0,0 @@
-/*
- * This file is part of the LibreOffice project.
- *
- * This Source Code Form is subject to the terms of the Mozilla Public
- * License, v. 2.0. If a copy of the MPL was not distributed with this
- * file, You can obtain one at http://mozilla.org/MPL/2.0/.
- *
- * This file incorporates work covered by the following license notice:
- *
- * 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 .
- */
-
-package installer;
-
-import java.net.URLDecoder;
-import java.io.*;
-import java.util.*;
-import java.net.*;
-
-public class InstUtil {
-
- public static File buildSversionLocation() throws IOException {
- File theFile = null;
- StringBuffer str = new StringBuffer();
- str.append(System.getProperty("user.home"));
- str.append(File.separator);
- StringBuffer thePath = new StringBuffer(str.toString());
-
- String os = System.getProperty("os.name");
-
- if (os.indexOf("Windows") != -1) {
- boolean bSVersionInHomeDir = new File(thePath.toString() +
- "sversion.ini").exists();
-
- if (!bSVersionInHomeDir) {
- thePath.append("Application Data");
- thePath.append(File.separator);
- }
-
- theFile = findVersionFile(new File(thePath.toString()));
- } else if (os.indexOf("SunOS") != -1) {
- thePath.append(".sversionrc");
- theFile = new File(thePath.toString());
- } else if (os.indexOf("Linux") != -1) {
- thePath.append(".sversionrc");
- theFile = new File(thePath.toString());
- }
-
- if (theFile == null) {
- throw new IOException("Could not locate the OpenOffice settings file.\nAre you sure StarOffice is installed on your system?");
- }
-
- if (!theFile.exists()) {
- throw new IOException("Could not locate the OpenOffice settings file.\nAre you sure StarOffice is installed on your system?");
- }
-
- return theFile;
- }
-
-
-
- public static boolean hasNetbeansInstallation() {
- boolean result = false;
- result = checkForSupportedVersion(getNetbeansLocation(), versions);
-
- if (!result)
- System.out.println("No supported version of NetBeans found.");
-
- return result;
- }
-
- private static boolean checkForSupportedVersion(Properties installs,
- String[] supportedVersions) {
- if (installs != null) {
- for (int index = 0; index < supportedVersions.length; index++) {
- String key = supportedVersions[ index ];
-
- if (installs.getProperty(key) != null) {
- // at least one supported version for netbeans present, so return;
- return true;
- }
-
- }
- }
-
- return false;
- }
-
-
-
-
-
-
- public static Properties getNetbeansLocation() {
- Properties results = new Properties();
-
- StringBuffer str = new StringBuffer();
- str.append(System.getProperty("user.home"));
- str.append(File.separator);
- StringBuffer thePath = new StringBuffer(str.toString());
-
- String os = System.getProperty("os.name");
-
- if (os.indexOf("Windows") != -1) {
- thePath.append(".netbeans");
- } else if (os.indexOf("SunOS") != -1) {
- thePath.append(".netbeans");
- } else if (os.indexOf("Linux") != -1) {
- thePath.append(".netbeans");
- }
-
- if (thePath.toString().indexOf(".netbeans") == -1)
- return null;
- else if (new File(thePath.append(File.separator + "3.4" +
- File.separator).toString()).isDirectory()) {
-
- System.out.println("Found NetBeans 3.4 user directory: " + thePath);
- File netbeansLogFile = new File(thePath.toString() + File.separator + "system" +
- File.separator + "ide.log");
-
- if (netbeansLogFile.exists()) {
- String installPath = getNetbeansInstallation(netbeansLogFile);
- File f = new File(installPath);
- results.put("NetBeans 3.4", f.getPath() + File.separator);
- System.out.println("NetBeans Installation directory: " + f.getPath());
- } else {
- System.out.println("No NetBeans log file found");
- return null;
- }
- } else {
- System.out.println("No NetBeans user directory found");
- return null;
- }
-
-
- return results;
- }
-
-
-
- private static String getNetbeansInstallation(File logFile) {
- String installPath = "";
-
- try {
- BufferedReader reader = new BufferedReader(new FileReader(logFile));
-
- for (String s = reader.readLine(); s != null; s = reader.readLine()) {
- if (s.indexOf("IDE Install") != -1) {
- int pathStart = s.indexOf("=") + 2;
- installPath = s.substring(pathStart, s.length());
- int pathEnd = installPath.indexOf(";");
- installPath = installPath.substring(0, pathEnd) + File.separator;
- break;
- }
- }
-
- reader.close();
- } catch (IOException ioe) {
- System.out.println("Error reading Netbeans location information");
- }
-
- return installPath;
- }
-
-
- private static File findVersionFile(File start) {
- File versionFile = null;
-
- File files[] = start.listFiles(new VersionFilter());
-
- if (files.length == 0) {
- File dirs[] = start.listFiles(new DirFilter());
-
- for (int i = 0; i < dirs.length; i++) {
- versionFile = findVersionFile(dirs[i]);
-
- if (versionFile != null) {
- break;
- }
- }
- } else {
- versionFile = files[0];
- }
-
- return versionFile;
- }
-
- private static boolean verifySversionExists(File sversionFile) {
- if (!sversionFile.exists())
- return false;
-
- return true;
- }
-
- public static Properties getOfficeVersions(File sversionFile) throws
- IOException {
- BufferedReader reader = new BufferedReader(new FileReader(sversionFile));
- String sectionName = null;
- Properties results = new Properties();
-
- for (String s = reader.readLine(); s != null; s = reader.readLine()) {
- if (s.length() == 0)
- continue;
-
- if (s.charAt(0) == '[') {
- sectionName = s.substring(1, s.length() - 1);
- continue;
- }
-
- if ((sectionName != null) && sectionName.equalsIgnoreCase("Versions")) {
- int equals = s.indexOf("=");
- String officeName = s.substring(0, equals);
-
- String instPath = s.substring(equals + 8, s.length());
- String [] parts = new String[2];
- parts[0] = officeName;
- parts[1] = instPath + File.separator;
-
- if (parts.length == 2) {
- try {
- URL url = new URL("file://" + parts[1].trim());
- String opSys = System.getProperty("os.name");
-
- if (opSys.indexOf("Windows") != -1) {
- String windowsPath = URLDecoder.decode(url.getPath());
- boolean firstSlash = true;
-
- while (windowsPath.indexOf("/") != -1) {
- int forwardSlashPos = windowsPath.indexOf("/");
- String firstPart = windowsPath.substring(0, forwardSlashPos);
- String lastPart = windowsPath.substring(forwardSlashPos + 1,
- windowsPath.length());
-
- if (firstSlash) {
- windowsPath = lastPart;
- firstSlash = false;
- } else {
- windowsPath = firstPart + "\\" + lastPart;
- }
- }
-
- int lastSlash = windowsPath.lastIndexOf("\\");
- windowsPath = windowsPath.substring(0, lastSlash);
- results.put(parts[0].trim(), windowsPath);
- } else {
- results.put(parts[0].trim(), URLDecoder.decode(url.getPath()));
- }
- } catch (MalformedURLException eSyntax) {
- results.put(parts[0].trim(), parts[1].trim());
- System.err.println("GotHereException");
- }
- } else {
- System.out.println("not splitting on equals");
- }
- }
- }
-
- reader.close();
- return results;
- }
-
- private static String getJavaVersion() {
- return System.getProperty("java.version");
- }
-
- private static boolean isCorrectJavaVersion() {
- if (System.getProperty("java.version").startsWith("1.4"))
- return true;
-
- return false;
- }
-
- public static void main(String args[]) {
- InstUtil inst = new InstUtil();
- File f = null;
-
- try {
- f = InstUtil.buildSversionLocation();
- } catch (IOException e) {
- e.printStackTrace();
- System.out.println(e.getMessage());
- }
-
- if (!InstUtil.verifySversionExists(f)) {
- System.err.println("Problem with sversion.ini");
- }
-
- try {
- InstUtil.getOfficeVersions(f);
- } catch (IOException e) {
- e.printStackTrace();
- System.err.println(e);
- }
-
- System.out.println(InstUtil.getJavaVersion());
-
- if (!InstUtil.isCorrectJavaVersion()) {
- System.err.println("Not correct Java Version");
- }
- }
-
- public static final String [] versions = {"NetBeans 3.4", "jEdit 4.0.3", "jEdit 4.1pre5" };
-}
-
-
-
-class DirFilter implements java.io.FileFilter {
- public boolean accept(File aFile) {
- return aFile.isDirectory();
- }
-}
-class VersionFilter implements java.io.FileFilter {
- public boolean accept(File aFile) {
- if (aFile.getName().compareToIgnoreCase("sversion.ini") == 0) {
- return true;
- }
-
- return false;
- }
-}