From: <fwi...@us...> - 2008-09-06 20:07:27
|
Revision: 5296 http://jython.svn.sourceforge.net/jython/?rev=5296&view=rev Author: fwierzbicki Date: 2008-09-06 20:07:25 +0000 (Sat, 06 Sep 2008) Log Message: ----------- Update installer as installer25 did. In part: uses jython-complete.jar, removes jythonc. Modified Paths: -------------- trunk/installer/src/java/org/python/util/install/DirectorySelectionPage.java trunk/installer/src/java/org/python/util/install/JarInstaller.java trunk/installer/src/java/org/python/util/install/StartScriptGenerator.java Modified: trunk/installer/src/java/org/python/util/install/DirectorySelectionPage.java =================================================================== --- trunk/installer/src/java/org/python/util/install/DirectorySelectionPage.java 2008-09-06 19:34:07 UTC (rev 5295) +++ trunk/installer/src/java/org/python/util/install/DirectorySelectionPage.java 2008-09-06 20:07:25 UTC (rev 5296) @@ -142,7 +142,7 @@ File defaultDirectory = null; File parentDirectory = new File(directory); if (parentDirectory.exists() && parentDirectory.isDirectory()) { - String jythonSubDirectoryName = "jython" + _jarInfo.getVersion(); + String jythonSubDirectoryName = "jython" + (_jarInfo.getVersion()).replaceAll("\\+", ""); defaultDirectory = new File(parentDirectory, jythonSubDirectoryName); } return defaultDirectory; @@ -189,4 +189,4 @@ } } -} \ No newline at end of file +} Modified: trunk/installer/src/java/org/python/util/install/JarInstaller.java =================================================================== --- trunk/installer/src/java/org/python/util/install/JarInstaller.java 2008-09-06 19:34:07 UTC (rev 5295) +++ trunk/installer/src/java/org/python/util/install/JarInstaller.java 2008-09-06 20:07:25 UTC (rev 5296) @@ -17,7 +17,7 @@ * moment). */ public class JarInstaller { - public static final String JYTHON_JAR = "jython.jar"; + public static final String JYTHON_JAR = "jython-complete.jar"; private static final String PATH_SEPARATOR = "/"; private static final String LIB_NAME_SEP = "Lib" + PATH_SEPARATOR; @@ -52,6 +52,8 @@ List coreLibFiles = new ArrayList(); if (!installationType.installSources()) { excludeDirs.add("src"); + excludeDirs.add("grammar"); + excludeDirs.add("extlibs"); } if (!installationType.installDocumentation()) { excludeDirs.add("Doc"); @@ -93,6 +95,10 @@ exclude = true; } } + // exclude build.xml when not installing source + if (!installationType.installSources() && zipEntryName.equals("build.xml")) + exclude = true; + // handle exclusion of core Lib files if (!exclude) { exclude = shouldExcludeFile(installationType, coreLibFiles, zipEntry, zipEntryName); @@ -133,6 +139,7 @@ _progressListener.progressStartScripts(); StartScriptGenerator generator = new StartScriptGenerator(targetDirectory, javaHome); generator.generateStartScripts(); + StandalonePackager.emptyDirectory(new File(targetDirectory, "bin"), null); } else { _progressListener.progressStandalone(); File jythonJar = new File(targetDirectory, JYTHON_JAR); @@ -220,6 +227,8 @@ coreLibFiles.add("javapath.py"); coreLibFiles.add("jreload.py"); coreLibFiles.add("marshal.py"); + coreLibFiles.add("os.py"); + coreLibFiles.add("posixpath.py"); coreLibFiles.add("random.py"); coreLibFiles.add("re.py"); coreLibFiles.add("site.py"); @@ -228,6 +237,7 @@ coreLibFiles.add("sre_compile.py"); coreLibFiles.add("sre_constants.py"); coreLibFiles.add("sre_parse.py"); + coreLibFiles.add("stat.py"); coreLibFiles.add("string.py"); coreLibFiles.add("zipfile.py"); coreLibFiles.add("zlib.py"); @@ -258,4 +268,4 @@ return exclude; } -} \ No newline at end of file +} Modified: trunk/installer/src/java/org/python/util/install/StartScriptGenerator.java =================================================================== --- trunk/installer/src/java/org/python/util/install/StartScriptGenerator.java 2008-09-06 19:34:07 UTC (rev 5295) +++ trunk/installer/src/java/org/python/util/install/StartScriptGenerator.java 2008-09-06 20:07:25 UTC (rev 5296) @@ -1,6 +1,7 @@ package org.python.util.install; import java.io.File; +import java.io.FileReader; import java.io.FileWriter; import java.io.IOException; import java.text.MessageFormat; @@ -17,8 +18,6 @@ private final static String JYTHON = "jython"; private final static String JYTHON_BAT = "jython.bat"; - private final static String JYTHONC = "jythonc"; - private final static String JYTHONC_BAT = "jythonc.bat"; private final static String JYTHON_JAR = JarInstaller.JYTHON_JAR; static { @@ -73,7 +72,6 @@ protected final void generateStartScripts() throws IOException { generateJythonScript(); - generateJythoncScript(); } private final void generateJythonScript() throws IOException { @@ -90,43 +88,18 @@ } } - private final void generateJythoncScript() throws IOException { - switch (getFlavour()) { - case BOTH_FLAVOUR: - writeToFile(JYTHONC_BAT, getJythoncScript(WINDOWS_FLAVOUR)); - makeExecutable(writeToFile(JYTHONC, getJythoncScript(BOTH_FLAVOUR))); - break; - case WINDOWS_FLAVOUR: - writeToFile(JYTHONC_BAT, getJythoncScript(WINDOWS_FLAVOUR)); - break; - default: - makeExecutable(writeToFile(JYTHONC, getJythoncScript(UNIX_FLAVOUR))); - } - } - /** * only <code>protected</code> for unit test use */ protected final String getJythonScript(int flavour) throws IOException { if (flavour == WINDOWS_FLAVOUR) { - return getStartScript(getWindowsJythonTemplate()); + return getStartScript(getWindowsJythonTemplate()) + readFromFile(JYTHON_BAT); } else { - return getStartScript(getUnixJythonTemplate(flavour)); + return getStartScript(getUnixJythonTemplate()) + readFromFile(JYTHON); } } /** - * only <code>protected</code> for unit test use - */ - protected final String getJythoncScript(int flavour) throws IOException { - if (flavour == WINDOWS_FLAVOUR) { - return getStartScript(getWindowsJythoncTemplate()); - } else { - return getStartScript(getUnixJythoncTemplate()); - } - } - - /** * These placeholders are valid for all private methods: * * {0} : current date <br> @@ -150,8 +123,9 @@ */ private String getWindowsJythonTemplate() { StringBuffer buffer = getWindowsHeaderTemplate(); - buffer.append("\"{2}\\bin\\java.exe\" -Dpython.home=\"{3}\" -Dpython.executable=\"%0\" -classpath \"{3}\\" + JYTHON_JAR - + ";%CLASSPATH%\" org.python.util.jython %ARGS%" + WIN_CR_LF); + buffer.append("set JAVA_HOME=\"{2}\"" + WIN_CR_LF); + buffer.append("set JYTHON_HOME=\"{3}\"" + WIN_CR_LF); + buffer.append(WIN_CR_LF); return buffer.toString(); } @@ -160,32 +134,12 @@ * * @see getStartScript */ - private String getWindowsJythoncTemplate() { - StringBuffer buffer = getWindowsHeaderTemplate(); - buffer.append("\"{3}\\jython.bat\" \"{3}\\Tools\\jythonc\\jythonc.py\" %ARGS%" + WIN_CR_LF); - return buffer.toString(); - } - - /** - * placeholders: - * - * @see getStartScript - */ private StringBuffer getWindowsHeaderTemplate() { StringBuffer buffer = new StringBuffer(1000); buffer.append("@echo off" + WIN_CR_LF); buffer.append("rem This file was generated by the Jython installer" + WIN_CR_LF); buffer.append("rem Created on {0} by {1}" + WIN_CR_LF); buffer.append(WIN_CR_LF); - buffer.append("set ARGS=" + WIN_CR_LF); - buffer.append(WIN_CR_LF); - buffer.append(":loop" + WIN_CR_LF); - buffer.append("if [%1] == [] goto end" + WIN_CR_LF); - buffer.append(" set ARGS=%ARGS% %1" + WIN_CR_LF); - buffer.append(" shift" + WIN_CR_LF); - buffer.append(" goto loop" + WIN_CR_LF); - buffer.append(":end" + WIN_CR_LF); - buffer.append(WIN_CR_LF); return buffer; } @@ -194,11 +148,11 @@ * * @see getStartScript */ - private String getUnixJythonTemplate(int flavour) { + private String getUnixJythonTemplate() { StringBuffer buffer = getUnixHeaderTemplate(); - buffer.append("CP=\"{3}/" + JYTHON_JAR + "\"\n"); - buffer.append("if [ ! -z \"$CLASSPATH\" ]\nthen\n CP=$CP:$CLASSPATH\nfi\n"); - buffer.append("\"{2}/bin/java\" -Dpython.home=\"{3}\" -Dpython.executable=\"$0\" -classpath \"$CP\" org.python.util.jython \"$@\"\n"); + buffer.append("JAVA_HOME=\"{2}\"\n"); + buffer.append("JYTHON_HOME=\"{3}\"\n"); + buffer.append("\n"); return buffer.toString(); } @@ -207,20 +161,9 @@ * * @see getStartScript */ - private String getUnixJythoncTemplate() { - StringBuffer buffer = getUnixHeaderTemplate(); - buffer.append("\"{3}/jython\" \"{3}/Tools/jythonc/jythonc.py\" \"$@\"\n"); - return buffer.toString(); - } - - /** - * placeholders: - * - * @see getStartScript - */ private StringBuffer getUnixHeaderTemplate() { StringBuffer buffer = new StringBuffer(1000); - buffer.append("#!/bin/sh\n"); + buffer.append("#!/usr/bin/env bash\n"); buffer.append("\n"); buffer.append("# This file was generated by the Jython installer\n"); buffer.append("# Created on {0} by {1}\n"); @@ -230,6 +173,24 @@ /** * @param fileName The short file name, e.g. JYTHON_BAT + * + * @throws IOException + */ + private String readFromFile(String fileName) throws IOException { + File file = new File(new File(_targetDirectory, "bin"), fileName); + FileReader fileReader = new FileReader(file); + StringBuffer sb = new StringBuffer(); + char[] b = new char[8192]; + int n; + + while ( (n = fileReader.read(b)) > 0) { + sb.append(b, 0, n); + } + return sb.toString(); + } + + /** + * @param fileName The short file name, e.g. JYTHON_BAT * @param contents * * @throws IOException This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <otm...@us...> - 2008-12-30 17:17:29
|
Revision: 5817 http://jython.svn.sourceforge.net/jython/?rev=5817&view=rev Author: otmarhumbel Date: 2008-12-30 17:17:26 +0000 (Tue, 30 Dec 2008) Log Message: ----------- provide default answers where possible in console mode (less typing for the user) Modified Paths: -------------- trunk/installer/src/java/org/python/util/install/ConsoleInstaller.java trunk/installer/src/java/org/python/util/install/TextConstants.java trunk/installer/src/java/org/python/util/install/TextConstants_de.java trunk/installer/src/java/org/python/util/install/driver/InstallationDriver.java Modified: trunk/installer/src/java/org/python/util/install/ConsoleInstaller.java =================================================================== --- trunk/installer/src/java/org/python/util/install/ConsoleInstaller.java 2008-12-30 08:17:05 UTC (rev 5816) +++ trunk/installer/src/java/org/python/util/install/ConsoleInstaller.java 2008-12-30 17:17:26 UTC (rev 5817) @@ -15,6 +15,8 @@ public class ConsoleInstaller implements ProgressListener, TextKeys { + public static final String CURRENT_JRE = "="; + private static final String _CANCEL = "c"; private static final String _PROMPT = ">>>"; @@ -23,7 +25,6 @@ private static final String _END_ANSWERS = "]"; - private static final String _CURRENT = "=="; private InstallerCommandLine _commandLine; @@ -80,25 +81,33 @@ } private String question(String question) { - return question(question, null, false); + return question(question, null, false, null); } private String question(String question, boolean answerRequired) { - return question(question, null, answerRequired); + return question(question, null, answerRequired, null); } - private String question(String question, List<String> answers) { - return question(question, answers, true); + private String question(String question, List<String> answers, String defaultAnswer) { + return question(question, answers, true, defaultAnswer); } /** * question and answer * + * @param question * @param answers * Possible answers (may be null) + * @param answerRequired + * @param defaultAnswer + * (may be null) + * * @return (chosen) answer */ - private String question(String question, List<String> answers, boolean answerRequired) { + private String question(String question, + List<String> answers, + boolean answerRequired, + String defaultAnswer) { try { if (answers != null && answers.size() > 0) { question = question + " " + _BEGIN_ANSWERS; @@ -106,7 +115,16 @@ while (answersAsIterator.hasNext()) { if (!question.endsWith(_BEGIN_ANSWERS)) question = question + "/"; - question = question + answersAsIterator.next(); + String possibleAnswer = answersAsIterator.next(); + if (possibleAnswer.equalsIgnoreCase(defaultAnswer)) { + if (Character.isDigit(possibleAnswer.charAt(0))) { + question = question.concat(" ").concat(possibleAnswer).concat(" "); + } else { + question = question + possibleAnswer.toUpperCase(); + } + } else { + question = question + possibleAnswer; + } } question = question + _END_ANSWERS; } @@ -117,22 +135,27 @@ // output to normal System.out System.out.print(question); // intended print, not println (!) answer = readLine(); - if (answers != null && answers.size() > 0) { - Iterator<String> answersAsIterator = answers.iterator(); - while (answersAsIterator.hasNext()) { - if (answer.equalsIgnoreCase(answersAsIterator.next())) { - match = true; - } + if ("".equals(answer) && answerRequired) { + // check default answer + if (defaultAnswer != null) { + match = true; + answer = defaultAnswer; } } else { - match = true; - if (answerRequired && "".equals(answer)) { - match = false; + if (answers != null && answers.size() > 0) { + Iterator<String> answersAsIterator = answers.iterator(); + while (answersAsIterator.hasNext()) { + if (answer.equalsIgnoreCase(answersAsIterator.next())) { + match = true; + } + } + } else { + match = true; } + if (!match && !_CANCEL.equalsIgnoreCase(answer)) { + message(getText(C_INVALID_ANSWER, answer)); + } } - if (!match && !_CANCEL.equalsIgnoreCase(answer)) { - message(getText(C_INVALID_ANSWER, answer)); - } } if (_CANCEL.equalsIgnoreCase(answer)) { throw new InstallationCancelledException(); @@ -172,15 +195,20 @@ availableLanguages.add(getText(C_GERMAN)); // 1 == German List<String> answers = new ArrayList<String>(availableLanguages.size()); String languages = ""; + String defaultAnswer = null; for (Iterator<String> iterator = availableLanguages.iterator(); iterator.hasNext();) { String language = iterator.next(); + String possibleAnswer = language.substring(0, 1); + if (defaultAnswer == null) { + defaultAnswer = possibleAnswer; + } languages = languages + language + ", "; - answers.add(language.substring(0, 1).toLowerCase()); + answers.add(possibleAnswer.toLowerCase()); } languages = languages.substring(0, languages.length() - 2); message(getText(C_AVAILABLE_LANGUAGES, languages)); - String answer = question(getText(C_SELECT_LANGUAGE), answers); - if (answer.equalsIgnoreCase((String)answers.get(1))) { + String answer = question(getText(C_SELECT_LANGUAGE), answers, defaultAnswer); + if (answer.equalsIgnoreCase(answers.get(1))) { Installation.setLanguage(Locale.GERMAN); } else { Installation.setLanguage(Locale.ENGLISH); @@ -196,7 +224,7 @@ message(" " + Installation.STANDARD + ". " + getText(C_STANDARD)); message(" " + Installation.MINIMUM + ". " + getText(C_MINIMUM)); message(" " + Installation.STANDALONE + ". " + getText(C_STANDALONE)); - String answer = question(getText(C_SELECT_INSTALL_TYPE), getTypeAnswers()); + String answer = question(getText(C_SELECT_INSTALL_TYPE), getTypeAnswers(), Installation.ALL); if (Installation.ALL.equals(answer)) { installationType.setAll(); } else if (Installation.STANDARD.equals(answer)) { @@ -209,10 +237,10 @@ if (!installationType.isStandalone()) { // include parts ? if (!installationType.isAll()) { - answer = question(getText(C_INCLUDE), getYNAnswers()); + answer = question(getText(C_INCLUDE), getYNAnswers(), no); if (yes.equals(answer)) { do { - answer = question(getText(C_INEXCLUDE_PARTS, no), getInExcludeAnswers()); + answer = question(getText(C_INEXCLUDE_PARTS, no), getInExcludeAnswers(), no); if (InstallerCommandLine.INEXCLUDE_LIBRARY_MODULES.equals(answer)) { installationType.addLibraryModules(); } else if (InstallerCommandLine.INEXCLUDE_DEMOS_AND_EXAMPLES.equals(answer)) { @@ -230,10 +258,10 @@ } // exclude parts ? if (!installationType.isMinimum()) { - answer = question(getText(C_EXCLUDE), getYNAnswers()); + answer = question(getText(C_EXCLUDE), getYNAnswers(), no); if (yes.equals(answer)) { do { - answer = question(getText(C_INEXCLUDE_PARTS, no), getInExcludeAnswers()); + answer = question(getText(C_INEXCLUDE_PARTS, no), getInExcludeAnswers(), no); if (InstallerCommandLine.INEXCLUDE_LIBRARY_MODULES.equals(answer)) { installationType.removeLibraryModules(); } else if (InstallerCommandLine.INEXCLUDE_DEMOS_AND_EXAMPLES.equals(answer)) { @@ -259,9 +287,7 @@ message(getText(C_JAVA_VERSION, javaInfo.getJavaVersionInfo().getVendor(), javaInfo.getJavaVersionInfo().getVersion())); - if (Installation.isValidJava(javaInfo.getJavaVersionInfo())) { - question(getText(C_PROCEED)); - } else { + if (!Installation.isValidJava(javaInfo.getJavaVersionInfo())) { message(getText(C_UNSUPPORTED_JAVA)); question(getText(C_PROCEED_ANYWAY)); } @@ -269,9 +295,7 @@ String osName = System.getProperty(Installation.OS_NAME); String osVersion = System.getProperty(Installation.OS_VERSION); message(getText(C_OS_VERSION, osName, osVersion)); - if (Installation.isValidOs()) { - question(getText(C_PROCEED)); - } else { + if (!Installation.isValidOs()) { message(getText(C_UNSUPPORTED_OS)); question(getText(C_PROCEED_ANYWAY)); } @@ -309,7 +333,9 @@ } private void acceptLicense() { - String read = question(getText(C_READ_LICENSE), getYNAnswers()); + String no = getText(C_NO); + String yes = getText(C_YES); + String read = question(getText(C_READ_LICENSE), getYNAnswers(), no); if (read.equalsIgnoreCase(getText(C_YES))) { String licenseText = "n/a"; try { @@ -319,13 +345,15 @@ throw new InstallerException(ioe); } } - String accept = question(getText(C_ACCEPT), getYNAnswers()); + String accept = question(getText(C_ACCEPT), getYNAnswers(), yes); if (!accept.equalsIgnoreCase(getText(C_YES))) { throw new InstallationCancelledException(); } } private File determineTargetDirectory() { + String no = getText(C_NO); + String yes = getText(C_YES); File targetDirectory = null; try { do { @@ -337,11 +365,13 @@ if (targetDirectory.list().length > 0) { String overwrite = question(getText(C_OVERWRITE_DIRECTORY, targetDirectory.getCanonicalPath()), - getYNAnswers()); + getYNAnswers(), + no); if (overwrite.equalsIgnoreCase(getText(C_YES))) { String clear = question(getText(C_CLEAR_DIRECTORY, targetDirectory.getCanonicalPath()), - getYNAnswers()); + getYNAnswers(), + yes); if (clear.equalsIgnoreCase(getText(C_YES))) { clearDirectory(targetDirectory); } @@ -351,7 +381,8 @@ } else { String create = question(getText(C_CREATE_DIRECTORY, targetDirectory.getCanonicalPath()), - getYNAnswers()); + getYNAnswers(), + yes); if (create.equalsIgnoreCase(getText(C_YES))) { if (!targetDirectory.mkdirs()) { throw new InstallerException(getText(C_UNABLE_CREATE_DIRECTORY, @@ -371,9 +402,9 @@ JavaHomeHandler javaHomeHandler = null; boolean javaFound = false; while (!javaFound) { - String javaHomeName = question(getText(C_ENTER_JAVA_HOME, _CURRENT), true); + String javaHomeName = question(getText(C_ENTER_JAVA_HOME), null, true, CURRENT_JRE); // only validate deviations - if (_CURRENT.equals(javaHomeName)) { + if (CURRENT_JRE.equals(javaHomeName)) { javaHomeHandler = new JavaHomeHandler(); javaFound = true; } else { @@ -419,7 +450,8 @@ } private void showReadme(final File targetDirectory) { - String read = question(getText(C_READ_README), getYNAnswers()); + String no = getText(C_NO); + String read = question(getText(C_READ_README), getYNAnswers(), no); if (read.equalsIgnoreCase(getText(C_YES))) { try { message(_jarInfo.getReadmeText()); @@ -465,7 +497,7 @@ } } String proceed = question(getText(C_CONFIRM_TARGET, targetDirectory.getCanonicalPath()), - getYNAnswers()); + getYNAnswers(), getText(C_YES)); if (!proceed.equalsIgnoreCase(getText(C_YES))) { throw new InstallationCancelledException(); } Modified: trunk/installer/src/java/org/python/util/install/TextConstants.java =================================================================== --- trunk/installer/src/java/org/python/util/install/TextConstants.java 2008-12-30 08:17:05 UTC (rev 5816) +++ trunk/installer/src/java/org/python/util/install/TextConstants.java 2008-12-30 17:17:26 UTC (rev 5817) @@ -93,7 +93,7 @@ { C_CONGRATULATIONS, "Congratulations!" }, // congratulations { C_CREATE_DIRECTORY, "Unable to find directory {0}, create it ?" }, // console { C_ENTER_TARGET_DIRECTORY, "Please enter the target directory" }, // console - { C_ENTER_JAVA_HOME, "Please enter the target java home directory ({0} for current)" }, // console + { C_ENTER_JAVA_HOME, "Please enter the java home directory (empty for using the current java runtime)" }, // console { C_ENGLISH, "English" }, // language { C_EXCLUDE, "Do you want to exclude parts from the installation ?" }, // installation type { C_GENERATING_START_SCRIPTS, "Generating start scripts ..." }, // progress @@ -111,7 +111,7 @@ { C_NON_EMPTY_TARGET_DIRECTORY, "Target directory {0} is not empty" }, // error { C_NOT_A_DIRECTORY, "{0} is not a directory. " }, // error { C_NOT_FOUND, "{0} not found. " }, // error - { C_OS_VERSION, "Your operation system version is: {0} / {1}" }, // version + { C_OS_VERSION, "Your operating system version is: {0} / {1}" }, // version { C_OVERWRITE_DIRECTORY, "Directory {0} is not empty - ok to overwrite contents ?" }, // console { C_PACKING_STANDALONE_JAR, "Packing standalone " + JarInstaller.JYTHON_JAR + " ..." }, // progress { C_PROCEED, "Please press Enter to proceed" }, // console Modified: trunk/installer/src/java/org/python/util/install/TextConstants_de.java =================================================================== --- trunk/installer/src/java/org/python/util/install/TextConstants_de.java 2008-12-30 08:17:05 UTC (rev 5816) +++ trunk/installer/src/java/org/python/util/install/TextConstants_de.java 2008-12-30 17:17:26 UTC (rev 5817) @@ -94,7 +94,7 @@ { C_CONGRATULATIONS, "Gratulation!" }, // congratulations { C_CREATE_DIRECTORY, "Das Verzeichnis {0} gibt es nicht - soll es erstellt werden ?" }, // console { C_ENTER_TARGET_DIRECTORY, "Bitte geben Sie das Zielverzeichnis ein" }, // console - { C_ENTER_JAVA_HOME, "Bitte geben Sie das gewuenschte Java Home Verzeichnis ein ({0} fuer das aktuelle)" }, // console + { C_ENTER_JAVA_HOME, "Bitte geben Sie das gewuenschte Java Home Verzeichnis ein (Enter fuer das aktuelle)" }, // console { C_ENGLISH, "Englisch" }, // language { C_EXCLUDE, "Moechten Sie Teile von der Installation ausschliessen ?" }, // installation type { C_GENERATING_START_SCRIPTS, "Start Scripts werden generiert ..." }, // progress Modified: trunk/installer/src/java/org/python/util/install/driver/InstallationDriver.java =================================================================== --- trunk/installer/src/java/org/python/util/install/driver/InstallationDriver.java 2008-12-30 08:17:05 UTC (rev 5816) +++ trunk/installer/src/java/org/python/util/install/driver/InstallationDriver.java 2008-12-30 17:17:26 UTC (rev 5817) @@ -6,6 +6,7 @@ import java.util.Iterator; import java.util.List; +import org.python.util.install.ConsoleInstaller; import org.python.util.install.Installation; import org.python.util.install.InstallerCommandLine; import org.python.util.install.JavaHomeHandler; @@ -191,10 +192,8 @@ if (javaHomeHandler.isDeviation() && javaHomeHandler.isValidHome()) { test1.addAnswer(javaHomeHandler.getHome().getAbsolutePath()); // different jre } else { - test1.addAnswer("=="); // current jre + test1.addAnswer(ConsoleInstaller.CURRENT_JRE); } - test1.addAnswer(""); // simple enter for java version - test1.addAnswer(""); // simple enter for os version test1.addAnswer("y"); // confirm copying test1.addAnswer("n"); // no readme test1.setVerifier(new NormalVerifier()); @@ -220,10 +219,8 @@ if (javaHomeHandler.isDeviation() && javaHomeHandler.isValidHome()) { test2.addAnswer(javaHomeHandler.getHome().getAbsolutePath()); // different jre } else { - test2.addAnswer("=="); // current jre + test2.addAnswer(ConsoleInstaller.CURRENT_JRE); } - test2.addAnswer(""); // simple enter for java version - test2.addAnswer(""); // simple enter for os version test2.addAnswer("y"); // confirm copying test2.addAnswer("n"); // no readme test2.setVerifier(new NormalVerifier()); @@ -240,10 +237,8 @@ if (javaHomeHandler.isDeviation() && javaHomeHandler.isValidHome()) { test3.addAnswer(javaHomeHandler.getHome().getAbsolutePath()); // different jre } else { - test3.addAnswer("=="); // current jre + test3.addAnswer(ConsoleInstaller.CURRENT_JRE); } - test3.addAnswer(""); // simple enter for java version - test3.addAnswer(""); // simple enter for os version test3.addAnswer("y"); // confirm copying test3.addAnswer("n"); // no readme test3.setVerifier(new StandaloneVerifier()); @@ -264,10 +259,8 @@ if (javaHomeHandler.isDeviation() && javaHomeHandler.isValidHome()) { test4.addAnswer(javaHomeHandler.getHome().getAbsolutePath()); // different jre } else { - test4.addAnswer("=="); // current jre + test4.addAnswer(ConsoleInstaller.CURRENT_JRE); } - test4.addAnswer(""); // simple enter for java version - test4.addAnswer(""); // simple enter for os version test4.addAnswer("y"); // confirm copying test4.addAnswer("n"); // no readme test4.setVerifier(new NormalVerifier()); This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <otm...@us...> - 2010-10-17 22:26:44
|
Revision: 7156 http://jython.svn.sourceforge.net/jython/?rev=7156&view=rev Author: otmarhumbel Date: 2010-10-17 22:26:38 +0000 (Sun, 17 Oct 2010) Log Message: ----------- enable installation autotests if there is a warning about the os Modified Paths: -------------- trunk/installer/src/java/org/python/util/install/Installation.java trunk/installer/src/java/org/python/util/install/driver/InstallationDriver.java Modified: trunk/installer/src/java/org/python/util/install/Installation.java =================================================================== --- trunk/installer/src/java/org/python/util/install/Installation.java 2010-10-17 17:59:35 UTC (rev 7155) +++ trunk/installer/src/java/org/python/util/install/Installation.java 2010-10-17 22:26:38 UTC (rev 7156) @@ -71,7 +71,7 @@ _textConstants = ResourceBundle.getBundle(RESOURCE_CLASS, locale); } - protected static boolean isValidOs() { + public static boolean isValidOs() { String osName = System.getProperty(OS_NAME, ""); String lowerOs = osName.toLowerCase(); if (isWindows()) { Modified: trunk/installer/src/java/org/python/util/install/driver/InstallationDriver.java =================================================================== --- trunk/installer/src/java/org/python/util/install/driver/InstallationDriver.java 2010-10-17 17:59:35 UTC (rev 7155) +++ trunk/installer/src/java/org/python/util/install/driver/InstallationDriver.java 2010-10-17 22:26:38 UTC (rev 7156) @@ -188,12 +188,7 @@ test1.addAnswer("3"); // type: minimum test1.addAnswer("n"); // include: nothing test1.addAnswer(test1.getTargetDir().getAbsolutePath()); // target directory - JavaHomeHandler javaHomeHandler = test1.getJavaHomeHandler(); - if (javaHomeHandler.isDeviation() && javaHomeHandler.isValidHome()) { - test1.addAnswer(javaHomeHandler.getHome().getAbsolutePath()); // different jre - } else { - test1.addAnswer(ConsoleInstaller.CURRENT_JRE); - } + addJavaAndOSAnswers(test1); test1.addAnswer("y"); // confirm copying test1.addAnswer("n"); // no readme test1.setVerifier(new NormalVerifier()); @@ -215,12 +210,7 @@ test2.addAnswer("wrongAnswer"); // wrong answer test2.addAnswer("n"); // no further excludes test2.addAnswer(test2.getTargetDir().getAbsolutePath()); // target directory - javaHomeHandler = test2.getJavaHomeHandler(); - if (javaHomeHandler.isDeviation() && javaHomeHandler.isValidHome()) { - test2.addAnswer(javaHomeHandler.getHome().getAbsolutePath()); // different jre - } else { - test2.addAnswer(ConsoleInstaller.CURRENT_JRE); - } + addJavaAndOSAnswers(test2); test2.addAnswer("y"); // confirm copying test2.addAnswer("n"); // no readme test2.setVerifier(new NormalVerifier()); @@ -233,12 +223,7 @@ test3.addAnswer("y"); // accept license test3.addAnswer("9"); // type: standalone test3.addAnswer(test3.getTargetDir().getAbsolutePath()); // target directory - javaHomeHandler = test3.getJavaHomeHandler(); - if (javaHomeHandler.isDeviation() && javaHomeHandler.isValidHome()) { - test3.addAnswer(javaHomeHandler.getHome().getAbsolutePath()); // different jre - } else { - test3.addAnswer(ConsoleInstaller.CURRENT_JRE); - } + addJavaAndOSAnswers(test3); test3.addAnswer("y"); // confirm copying test3.addAnswer("n"); // no readme test3.setVerifier(new StandaloneVerifier()); @@ -255,12 +240,7 @@ test4.addAnswer("y"); // exclude test4.addAnswer("n"); // no further excludes test4.addAnswer(test4.getTargetDir().getAbsolutePath()); // target directory - javaHomeHandler = test4.getJavaHomeHandler(); - if (javaHomeHandler.isDeviation() && javaHomeHandler.isValidHome()) { - test4.addAnswer(javaHomeHandler.getHome().getAbsolutePath()); // different jre - } else { - test4.addAnswer(ConsoleInstaller.CURRENT_JRE); - } + addJavaAndOSAnswers(test4); test4.addAnswer("y"); // confirm copying test4.addAnswer("n"); // no readme test4.setVerifier(new NormalVerifier()); @@ -275,6 +255,18 @@ } } + private void addJavaAndOSAnswers(ConsoleAutotest test) { + JavaHomeHandler javaHomeHandler = test.getJavaHomeHandler(); + if (javaHomeHandler.isDeviation() && javaHomeHandler.isValidHome()) { + test.addAnswer(javaHomeHandler.getHome().getAbsolutePath()); // different jre + } else { + test.addAnswer(ConsoleInstaller.CURRENT_JRE); + } + if (!Installation.isValidOs()) { + test.addAnswer(""); // enter to proceed anyway + } + } + /** * build all the gui tests * This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |