61 * win-console |
60 * win-console |
62 * |
61 * |
63 */ |
62 */ |
64 class AddLauncherArguments { |
63 class AddLauncherArguments { |
65 |
64 |
|
65 private final String name; |
66 private final String filename; |
66 private final String filename; |
67 private Map<String, String> allArgs; |
67 private Map<String, String> allArgs; |
68 private Map<String, ? super Object> bundleParams; |
68 private Map<String, ? super Object> bundleParams; |
69 |
69 |
70 AddLauncherArguments(String filename) { |
70 AddLauncherArguments(String name, String filename) { |
|
71 this.name = name; |
71 this.filename = filename; |
72 this.filename = filename; |
72 } |
73 } |
73 |
74 |
74 private void initLauncherMap() { |
75 private void initLauncherMap() { |
75 if (bundleParams != null) { |
76 if (bundleParams != null) { |
76 return; |
77 return; |
77 } |
78 } |
78 |
79 |
79 allArgs = Arguments.getPropertiesFromFile(filename); |
80 allArgs = Arguments.getPropertiesFromFile(filename); |
|
81 allArgs.put(CLIOptions.NAME.getId(), name); |
80 |
82 |
81 bundleParams = new HashMap<>(); |
83 bundleParams = new HashMap<>(); |
82 String mainJar = getOptionValue(CLIOptions.MAIN_JAR); |
84 String mainJar = getOptionValue(CLIOptions.MAIN_JAR); |
83 String mainClass = getOptionValue(CLIOptions.APPCLASS); |
85 String mainClass = getOptionValue(CLIOptions.APPCLASS); |
84 String module = getOptionValue(CLIOptions.MODULE); |
86 String module = getOptionValue(CLIOptions.MODULE); |
85 |
87 |
86 if (module != null && mainClass != null) { |
88 if (module != null && mainClass != null) { |
87 putUnlessNull(bundleParams, Arguments.CLIOptions.MODULE.getId(), |
89 putUnlessNull(bundleParams, CLIOptions.MODULE.getId(), |
88 module + "/" + mainClass); |
90 module + "/" + mainClass); |
89 } else if (module != null) { |
91 } else if (module != null) { |
90 putUnlessNull(bundleParams, Arguments.CLIOptions.MODULE.getId(), |
92 putUnlessNull(bundleParams, CLIOptions.MODULE.getId(), |
91 module); |
93 module); |
92 } else { |
94 } else { |
93 putUnlessNull(bundleParams, Arguments.CLIOptions.MAIN_JAR.getId(), |
95 putUnlessNull(bundleParams, CLIOptions.MAIN_JAR.getId(), |
94 mainJar); |
96 mainJar); |
95 putUnlessNull(bundleParams, Arguments.CLIOptions.APPCLASS.getId(), |
97 putUnlessNull(bundleParams, CLIOptions.APPCLASS.getId(), |
96 mainClass); |
98 mainClass); |
97 } |
99 } |
98 |
100 |
99 putUnlessNull(bundleParams, Arguments.CLIOptions.NAME.getId(), |
101 putUnlessNull(bundleParams, CLIOptions.NAME.getId(), |
100 getOptionValue(CLIOptions.NAME)); |
102 getOptionValue(CLIOptions.NAME)); |
101 |
103 |
102 putUnlessNull(bundleParams, Arguments.CLIOptions.VERSION.getId(), |
104 putUnlessNull(bundleParams, CLIOptions.VERSION.getId(), |
103 getOptionValue(CLIOptions.VERSION)); |
105 getOptionValue(CLIOptions.VERSION)); |
104 |
106 |
105 putUnlessNull(bundleParams, |
107 putUnlessNull(bundleParams, |
106 Arguments.CLIOptions.ADD_MODULES.getId(), |
108 CLIOptions.ADD_MODULES.getId(), |
107 getOptionValue(CLIOptions.ADD_MODULES)); |
109 getOptionValue(CLIOptions.ADD_MODULES)); |
108 |
110 |
109 putUnlessNull(bundleParams, |
111 putUnlessNull(bundleParams, |
110 Arguments.CLIOptions.WIN_CONSOLE_HINT.getId(), |
112 CLIOptions.WIN_CONSOLE_HINT.getId(), |
111 getOptionValue(CLIOptions.WIN_CONSOLE_HINT)); |
113 getOptionValue(CLIOptions.WIN_CONSOLE_HINT)); |
112 |
114 |
113 String value = getOptionValue(CLIOptions.ICON); |
115 String value = getOptionValue(CLIOptions.ICON); |
114 putUnlessNull(bundleParams, Arguments.CLIOptions.ICON.getId(), |
116 putUnlessNull(bundleParams, CLIOptions.ICON.getId(), |
115 (value == null) ? null : new File(value)); |
117 (value == null) ? null : new File(value)); |
116 |
118 |
117 String argumentStr = getOptionValue(CLIOptions.ARGUMENTS); |
119 String argumentStr = getOptionValue(CLIOptions.ARGUMENTS); |
118 putUnlessNullOrEmpty(bundleParams, |
120 putUnlessNullOrEmpty(bundleParams, |
119 CLIOptions.ARGUMENTS.getId(), |
121 CLIOptions.ARGUMENTS.getId(), |