3737import processing .app .Serial ;
3838import processing .app .SerialException ;
3939import processing .app .helpers .PreferencesMap ;
40+ import processing .app .helpers .PreferencesMapException ;
4041import processing .app .helpers .StringReplacer ;
4142
4243import static processing .app .I18n ._ ;
@@ -45,7 +46,7 @@ public class BasicUploader extends Uploader {
4546
4647 public boolean uploadUsingPreferences (String buildPath , String className ,
4748 boolean usingProgrammer )
48- throws RunnerException , SerialException {
49+ throws Exception {
4950 // FIXME: Preferences should be reorganized
5051 TargetPlatform targetPlatform = Base .getTargetPlatform ();
5152 PreferencesMap prefs = Preferences .getMap ();
@@ -71,7 +72,7 @@ public boolean uploadUsingPreferences(String buildPath, String className,
7172 boolean waitForUploadPort = (t != null ) && t .equals ("true" );
7273
7374 if (doTouch ) {
74- String uploadPort = prefs .get ("serial.port" );
75+ String uploadPort = prefs .getOrExcept ("serial.port" );
7576 try {
7677 // Toggle 1200 bps on selected serial port to force board reset.
7778 List <String > before = Serial .list ();
@@ -109,9 +110,9 @@ public boolean uploadUsingPreferences(String buildPath, String className,
109110 prefs .put ("build.path" , buildPath );
110111 prefs .put ("build.project_name" , className );
111112 if (verbose )
112- prefs .put ("upload.verbose" , prefs .get ("upload.params.verbose" ));
113+ prefs .put ("upload.verbose" , prefs .getOrExcept ("upload.params.verbose" ));
113114 else
114- prefs .put ("upload.verbose" , prefs .get ("upload.params.quiet" ));
115+ prefs .put ("upload.verbose" , prefs .getOrExcept ("upload.params.quiet" ));
115116
116117 boolean uploadResult ;
117118 try {
@@ -120,7 +121,7 @@ public boolean uploadUsingPreferences(String buildPath, String className,
120121// flushSerialBuffer();
121122// }
122123
123- String pattern = prefs .get ("upload.pattern" );
124+ String pattern = prefs .getOrExcept ("upload.pattern" );
124125 String [] cmd = StringReplacer .formatAndSplit (pattern , prefs , true );
125126 uploadResult = executeUploadCommand (cmd );
126127 } catch (Exception e ) {
@@ -211,7 +212,7 @@ private String waitForUploadPort(String uploadPort, List<String> before)
211212 }
212213
213214 public boolean uploadUsingProgrammer (String buildPath , String className )
214- throws RunnerException {
215+ throws Exception {
215216
216217 TargetPlatform targetPlatform = Base .getTargetPlatform ();
217218 String programmer = Preferences .get ("programmer" );
@@ -224,15 +225,15 @@ public boolean uploadUsingProgrammer(String buildPath, String className)
224225 PreferencesMap prefs = Preferences .getMap ();
225226 prefs .putAll (Base .getBoardPreferences ());
226227 prefs .putAll (targetPlatform .getProgrammer (programmer ));
227- prefs .putAll (targetPlatform .getTool (prefs .get ("program.tool" )));
228+ prefs .putAll (targetPlatform .getTool (prefs .getOrExcept ("program.tool" )));
228229
229230 prefs .put ("build.path" , buildPath );
230231 prefs .put ("build.project_name" , className );
231232
232233 if (verbose )
233- prefs .put ("program.verbose" , prefs .get ("program.params.verbose" ));
234+ prefs .put ("program.verbose" , prefs .getOrExcept ("program.params.verbose" ));
234235 else
235- prefs .put ("program.verbose" , prefs .get ("program.params.quiet" ));
236+ prefs .put ("program.verbose" , prefs .getOrExcept ("program.params.quiet" ));
236237
237238 try {
238239 // if (prefs.get("program.disable_flushing") == null
@@ -241,15 +242,15 @@ public boolean uploadUsingProgrammer(String buildPath, String className)
241242 // flushSerialBuffer();
242243 // }
243244
244- String pattern = prefs .get ("program.pattern" );
245+ String pattern = prefs .getOrExcept ("program.pattern" );
245246 String [] cmd = StringReplacer .formatAndSplit (pattern , prefs , true );
246247 return executeUploadCommand (cmd );
247248 } catch (Exception e ) {
248249 throw new RunnerException (e );
249250 }
250251 }
251252
252- public boolean burnBootloader () throws RunnerException {
253+ public boolean burnBootloader () throws RunnerException , PreferencesMapException {
253254 TargetPlatform targetPlatform = Base .getTargetPlatform ();
254255
255256 // Find preferences for the selected programmer
@@ -272,7 +273,7 @@ public boolean burnBootloader() throws RunnerException {
272273
273274 // Create configuration for bootloader tool
274275 PreferencesMap toolPrefs = new PreferencesMap ();
275- String tool = prefs .get ("bootloader.tool" );
276+ String tool = prefs .getOrExcept ("bootloader.tool" );
276277 if (tool .contains (":" )) {
277278 String [] split = tool .split (":" , 2 );
278279 TargetPlatform platform = Base .getCurrentTargetPlatformFromPackage (split [0 ]);
@@ -291,20 +292,20 @@ public boolean burnBootloader() throws RunnerException {
291292 // Merge tool with global configuration
292293 prefs .putAll (toolPrefs );
293294 if (verbose ) {
294- prefs .put ("erase.verbose" , prefs .get ("erase.params.verbose" ));
295- prefs .put ("bootloader.verbose" , prefs .get ("bootloader.params.verbose" ));
295+ prefs .put ("erase.verbose" , prefs .getOrExcept ("erase.params.verbose" ));
296+ prefs .put ("bootloader.verbose" , prefs .getOrExcept ("bootloader.params.verbose" ));
296297 } else {
297- prefs .put ("erase.verbose" , prefs .get ("erase.params.quiet" ));
298- prefs .put ("bootloader.verbose" , prefs .get ("bootloader.params.quiet" ));
298+ prefs .put ("erase.verbose" , prefs .getOrExcept ("erase.params.quiet" ));
299+ prefs .put ("bootloader.verbose" , prefs .getOrExcept ("bootloader.params.quiet" ));
299300 }
300301
301302 try {
302- String pattern = prefs .get ("erase.pattern" );
303+ String pattern = prefs .getOrExcept ("erase.pattern" );
303304 String [] cmd = StringReplacer .formatAndSplit (pattern , prefs , true );
304305 if (!executeUploadCommand (cmd ))
305306 return false ;
306307
307- pattern = prefs .get ("bootloader.pattern" );
308+ pattern = prefs .getOrExcept ("bootloader.pattern" );
308309 cmd = StringReplacer .formatAndSplit (pattern , prefs , true );
309310 return executeUploadCommand (cmd );
310311 } catch (Exception e ) {
0 commit comments