Changeset 2077 in josm for trunk/src/org/openstreetmap/josm/actions/UploadAction.java
- Timestamp:
- 2009-09-07T23:06:19+02:00 (15 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/src/org/openstreetmap/josm/actions/UploadAction.java
r2074 r2077 41 41 import org.openstreetmap.josm.data.osm.DataSet; 42 42 import org.openstreetmap.josm.data.osm.OsmPrimitive; 43 import org.openstreetmap.josm.data.osm.OsmPrimitiveType; 43 44 import org.openstreetmap.josm.gui.ExceptionDialogUtil; 44 45 import org.openstreetmap.josm.gui.ExtendedDialog; … … 191 192 * @param id the primitive ID 192 193 */ 193 protected void synchronizePrimitive(final String id) {194 Main.worker.execute(new UpdatePrimitiveTask( Long.parseLong(id)));194 protected void synchronizePrimitive(final OsmPrimitiveType type, final long id) { 195 Main.worker.execute(new UpdatePrimitiveTask(type, id)); 195 196 } 196 197 … … 217 218 * @param myVersion the version of the primitive in the local dataset 218 219 */ 219 protected void handleUploadConflictForKnownConflict( String primitiveType, String id, String serverVersion, String myVersion) {220 protected void handleUploadConflictForKnownConflict(OsmPrimitiveType primitiveType, long id, String serverVersion, String myVersion) { 220 221 Object[] options = new Object[] { 221 tr("Synchronize {0} {1} only", tr(primitiveType ), id),222 tr("Synchronize {0} {1} only", tr(primitiveType.getAPIName()), id), 222 223 tr("Synchronize entire dataset"), 223 224 tr("Cancel") … … 232 233 + "Click <strong>{5}</strong> to synchronize the entire local dataset with the server.<br>" 233 234 + "Click <strong>{6}</strong> to abort and continue editing.<br></html>", 234 tr(primitiveType ), id, serverVersion, myVersion,235 tr(primitiveType.getAPIName()), id, serverVersion, myVersion, 235 236 options[0], options[1], options[2] 236 237 ); … … 247 248 ); 248 249 switch(ret) { 249 250 251 case 0: synchronizePrimitive(id); break;252 253 254 255 250 case JOptionPane.CLOSED_OPTION: return; 251 case JOptionPane.CANCEL_OPTION: return; 252 case 0: synchronizePrimitive(primitiveType, id); break; 253 case 1: synchronizeDataSet(); break; 254 default: 255 // should not happen 256 throw new IllegalStateException(tr("unexpected return value. Got {0}", ret)); 256 257 } 257 258 } … … 287 288 ); 288 289 switch(ret) { 289 290 291 292 293 294 290 case JOptionPane.CLOSED_OPTION: return; 291 case 1: return; 292 case 0: synchronizeDataSet(); break; 293 default: 294 // should not happen 295 throw new IllegalStateException(tr("unexpected return value. Got {0}", ret)); 295 296 } 296 297 } … … 306 307 Matcher m = p.matcher(e.getErrorHeader()); 307 308 if (m.matches()) { 308 handleUploadConflictForKnownConflict( m.group(3), m.group(4), m.group(2),m.group(1));309 handleUploadConflictForKnownConflict(OsmPrimitiveType.from(m.group(3)), Long.parseLong(m.group(4)), m.group(2),m.group(1)); 309 310 } else { 310 311 logger.warning(tr("Warning: error header \"{0}\" did not match expected pattern \"{1}\"", e.getErrorHeader(),pattern)); … … 326 327 * @see UpdateSelectionAction#handlePrimitiveGoneException(long) 327 328 */ 328 protected void handleGoneForKnownPrimitive( StringprimitiveType, String id) {329 protected void handleGoneForKnownPrimitive(OsmPrimitiveType primitiveType, String id) { 329 330 UpdateSelectionAction act = new UpdateSelectionAction(); 330 act.handlePrimitiveGoneException(Long.parseLong(id) );331 act.handlePrimitiveGoneException(Long.parseLong(id),primitiveType); 331 332 } 332 333 … … 344 345 Matcher m = p.matcher(e.getErrorHeader()); 345 346 if (m.matches()) { 346 handleGoneForKnownPrimitive( m.group(1), m.group(2));347 handleGoneForKnownPrimitive(OsmPrimitiveType.from(m.group(1)), m.group(2)); 347 348 } else { 348 349 logger.warning(tr("Error header \"{0}\" does not match expected pattern \"{1}\"",e.getErrorHeader(), pattern)); … … 424 425 private Exception lastException = null; 425 426 private long id; 426 427 public UpdatePrimitiveTask(long id) { 427 private OsmPrimitiveType type; 428 429 public UpdatePrimitiveTask(OsmPrimitiveType type, long id) { 428 430 super(tr("Updating primitive"),false /* don't ignore exceptions */); 429 431 this.id = id; 432 this.type = type; 430 433 } 431 434 … … 433 436 try { 434 437 UpdateSelectionAction act = new UpdateSelectionAction(); 435 act.updatePrimitive( id);438 act.updatePrimitive(type, id); 436 439 } catch (Exception sxe) { 437 440 if (uploadCancelled) {
Note:
See TracChangeset
for help on using the changeset viewer.