summaryrefslogtreecommitdiff
path: root/javainstaller2
diff options
context:
space:
mode:
authorRĂ¼diger Timm <rt@openoffice.org>2007-07-03 10:54:15 +0000
committerRĂ¼diger Timm <rt@openoffice.org>2007-07-03 10:54:15 +0000
commit7ae42c8742e4f3965ecabad4269a168d4e790bfb (patch)
tree3c7e5579d2ec21e3780040164f68580281f75a4f /javainstaller2
parentc644c0d7797fb348a8fb381e0ff8b2eb65151322 (diff)
INTEGRATION: CWS native87 (1.2.2); FILE MERGED
2007/06/01 10:56:32 is 1.2.2.2: #i65425# new Java gui installer 2007/04/24 10:09:23 is 1.2.2.1: #i65425# adding header
Diffstat (limited to 'javainstaller2')
-rwxr-xr-xjavainstaller2/src/JavaSetup/org/openoffice/setup/Installer/LinuxInstaller.java69
1 files changed, 55 insertions, 14 deletions
diff --git a/javainstaller2/src/JavaSetup/org/openoffice/setup/Installer/LinuxInstaller.java b/javainstaller2/src/JavaSetup/org/openoffice/setup/Installer/LinuxInstaller.java
index 3d695542b10e..fd63ae3eb6b7 100755
--- a/javainstaller2/src/JavaSetup/org/openoffice/setup/Installer/LinuxInstaller.java
+++ b/javainstaller2/src/JavaSetup/org/openoffice/setup/Installer/LinuxInstaller.java
@@ -1,5 +1,41 @@
+/*************************************************************************
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * $RCSfile: LinuxInstaller.java,v $
+ *
+ * $Revision: 1.3 $
+ *
+ * last change: $Author: rt $ $Date: 2007-07-03 11:54:15 $
+ *
+ * The Contents of this file are made available subject to
+ * the terms of GNU Lesser General Public License Version 2.1.
+ *
+ *
+ * GNU Lesser General Public License Version 2.1
+ * =============================================
+ * Copyright 2005 by Sun Microsystems, Inc.
+ * 901 San Antonio Road, Palo Alto, CA 94303, USA
+ *
+ * This library is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU Lesser General Public
+ * License version 2.1, as published by the Free Software Foundation.
+ *
+ * This library is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public
+ * License along with this library; if not, write to the Free Software
+ * Foundation, Inc., 59 Temple Place, Suite 330, Boston,
+ * MA 02111-1307 USA
+ *
+ ************************************************************************/
+
package org.openoffice.setup.Installer;
+import java.io.File;
import org.openoffice.setup.InstallData;
import org.openoffice.setup.InstallerHelper.LinuxHelper;
import org.openoffice.setup.ResourceManager;
@@ -9,7 +45,6 @@ import org.openoffice.setup.SetupData.SetupDataProvider;
import org.openoffice.setup.Util.ExecuteProcess;
import org.openoffice.setup.Util.Informer;
import org.openoffice.setup.Util.LogManager;
-import org.openoffice.setup.Util.SystemManager;
import java.util.HashMap;
import java.util.Vector;
@@ -116,6 +151,12 @@ public class LinuxInstaller extends Installer {
// setting installDir
String installDir = data.getInstallDir();
String packagePath = data.getPackagePath();
+
+ if (( packageData.getPkgSubdir() != null ) && ( ! packageData.getPkgSubdir().equals("") )) {
+ File completePackageFile = new File(packagePath, packageData.getPkgSubdir());
+ packagePath = completePackageFile.getPath();
+ }
+
String packageName = packageData.getPackageName();
if (( packageName.equals("")) || ( packageName == null )) {
@@ -125,10 +166,10 @@ public class LinuxInstaller extends Installer {
log = "<b>Package Name: " + packageName + "</b>";
LogManager.addCommandsLogfileComment(log);
- packageName = packagePath + packageName;
- boolean packageFound = SystemManager.find_file(packageName);
+ File completePackage = new File(packagePath, packageName);
+ packageName = completePackage.getPath();
- if ( packageFound ) {
+ if ( completePackage.exists() ) {
String fixedInstallDir = helper.fixInstallationDirectory(installDir);
String relocations = helper.getRelocationString(packageData, packageName);
if ( relocations != null ) {
@@ -437,43 +478,43 @@ public class LinuxInstaller extends Installer {
String[] rpmCommandArray;
if (useLocalDatabase) {
- rpmCommand = "rpm" + " " + databaseString + " " + databasePath + " -q --queryformat %{VERSION} " + packageName;
+ rpmCommand = "rpm" + " " + databaseString + " " + databasePath + " -q --queryformat %{VERSION}\\n " + packageName;
rpmCommandArray = new String[7];
rpmCommandArray[0] = "rpm";
rpmCommandArray[1] = databaseString;
rpmCommandArray[2] = databasePath;
rpmCommandArray[3] = "-q";
rpmCommandArray[4] = "--queryformat";
- rpmCommandArray[5] = "%{VERSION}";
+ rpmCommandArray[5] = "%{VERSION}\\n";
rpmCommandArray[6] = packageName;
} else {
- rpmCommand = "rpm" + " -q --queryformat %{VERSION} " + packageName;
+ rpmCommand = "rpm" + " -q --queryformat %{VERSION}\\n " + packageName;
rpmCommandArray = new String[5];
rpmCommandArray[0] = "rpm";
rpmCommandArray[1] = "-q";
rpmCommandArray[2] = "--queryformat";
- rpmCommandArray[3] = "%{VERSION}";
+ rpmCommandArray[3] = "%{VERSION}\\n";
rpmCommandArray[4] = packageName;
}
Vector versionVector = new Vector();
Vector returnErrorVector = new Vector();
int returnValue = ExecuteProcess.executeProcessReturnVector(rpmCommandArray, versionVector, returnErrorVector);
- String version = (String) versionVector.get(0);
+ String version = (String) versionVector.lastElement();
log = rpmCommand + "<br><b>Returns: " + version + "</b><br>";
LogManager.addCommandsLogfileComment(log);
if (useLocalDatabase) {
- rpmCommand = "rpm" + " " + databaseString + " " + databasePath + " -q --queryformat %{RELEASE} " + packageName;
- rpmCommandArray[5] = "%{RELEASE}";
+ rpmCommand = "rpm" + " " + databaseString + " " + databasePath + " -q --queryformat %{RELEASE}\\n " + packageName;
+ rpmCommandArray[5] = "%{RELEASE}\\n";
} else {
- rpmCommand = "rpm" + " -q --queryformat %{RELEASE} " + packageName;
- rpmCommandArray[3] = "%{RELEASE}";
+ rpmCommand = "rpm" + " -q --queryformat %{RELEASE}\\n " + packageName;
+ rpmCommandArray[3] = "%{RELEASE}\\n";
}
Vector releaseVector = new Vector();
returnValue = ExecuteProcess.executeProcessReturnVector(rpmCommandArray, releaseVector, returnErrorVector);
- String release = (String) releaseVector.get(0);
+ String release = (String) releaseVector.lastElement();
log = rpmCommand + "<br><b>Returns: " + release + "</b><br>";
LogManager.addCommandsLogfileComment(log);