< prev index next >

src/jdk.jpackage/windows/classes/jdk/jpackage/internal/WindowsBundlerParam.java

Print this page

        

*** 23,32 **** --- 23,33 ---- * questions. */ package jdk.jpackage.internal; + import java.text.MessageFormat; import java.util.Map; import java.util.ResourceBundle; import java.util.function.BiFunction; import java.util.function.Function;
*** 84,89 **** --- 85,116 ---- Arguments.CLIOptions.WIN_DIR_CHOOSER.getId(), Boolean.class, params -> Boolean.FALSE, (s, p) -> Boolean.valueOf(s) ); + + static final BundlerParamInfo<String> WINDOWS_INSTALL_DIR = + new StandardBundlerParam<>( + "windows-install-dir", + String.class, + params -> { + String dir = INSTALL_DIR.fetchFrom(params); + if (dir != null) { + if (dir.contains(":") || dir.contains("..")) { + Log.error(MessageFormat.format(I18N.getString( + "message.invalid.install.dir"), dir, + APP_NAME.fetchFrom(params))); + } else { + if (dir.startsWith("\\")) { + dir = dir.substring(1); + } + if (dir.endsWith("\\")) { + dir = dir.substring(0, dir.length() - 1); + } + return dir; + } + } + return APP_NAME.fetchFrom(params); // Default to app name + }, + (s, p) -> s + ); }
< prev index next >