Changeset 11572 in josm for trunk/scripts/SyncEditorImageryIndex.groovy
- Timestamp:
- 2017-02-17T23:34:47+01:00 (8 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/scripts/SyncEditorImageryIndex.groovy
r11423 r11572 211 211 for (def m : e.getMirrors()) { 212 212 url = getUrl(m) 213 m.setName(m.getName().replaceAll(" mirror server( \\d+)?","")) 213 214 if (josmUrls.containsKey(url)) { 214 215 myprintln "+++ JOSM-Mirror-URL is not unique: "+url … … 421 422 josmIds.put(id, j); 422 423 } 424 def d = getDate(j) 425 if(d != null) { 426 def reg = (d =~ /^(\d\d\d\d)(-(\d\d)(-(\d\d))?)?(;(\d\d\d\d)(-(\d\d)(-(\d\d))?)?)?/) 427 if(reg == null || reg.count != 1) { 428 myprintln "* JOSM-Date '${d}' is strange: ${getDescription(j)}" 429 } else { 430 try { 431 def first = verifyDate(reg[0][1],reg[0][3],reg[0][5]); 432 def second = verifyDate(reg[0][7],reg[0][9],reg[0][11]); 433 if(second.compareTo(first) < 0) { 434 myprintln "* JOSM-Date '${d}' is strange (second earlier than first): ${getDescription(j)}" 435 } 436 } 437 catch (Exception e) { 438 myprintln "* JOSM-Date '${d}' is strange (${e.getMessage()}): ${getDescription(j)}" 439 } 440 } 441 } 423 442 def js = getShapes(j) 424 443 if(js.size()) { … … 452 471 return e.get("properties").getString("url") 453 472 } 473 static String getDate(Object e) { 474 if (e instanceof ImageryInfo) return e.date 475 def start = e.get("properties").getString("start_date") 476 def end = e.get("properties").getString("end_date") 477 if(start != null && end != null) 478 return start+";"+end 479 else if(start != null) 480 return start 481 else 482 return end 483 } 484 static Date verifyDate(String year, String month, String day) { 485 def date 486 if(year == null) 487 date = "3000-01-01" 488 else 489 date = year + "-" + (month == null ? "01" : month) + "-" + (day == null ? "01" : day) 490 def df = new java.text.SimpleDateFormat("yyyy-MM-dd") 491 df.setLenient(false) 492 return df.parse(date) 493 } 454 494 static String getId(Object e) { 455 495 if (e instanceof ImageryInfo) return e.getId()
Note:
See TracChangeset
for help on using the changeset viewer.