- Timestamp:
- 2017-12-23T02:18:25+01:00 (7 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/src/org/openstreetmap/josm/data/cache/JCSCachedTileLoaderJob.java
r12765 r13230 16 16 import java.util.concurrent.ThreadPoolExecutor; 17 17 import java.util.concurrent.TimeUnit; 18 import java.util.regex.Matcher; 19 import java.util.regex.Pattern; 18 20 19 21 import org.apache.commons.jcs.access.behavior.ICacheAccess; … … 50 52 protected static final long ABSOLUTE_EXPIRE_TIME_LIMIT = TimeUnit.DAYS.toMillis(365); 51 53 54 // Pattern to detect Tomcat error message. Be careful with change of format: 55 // CHECKSTYLE.OFF: LineLength 56 // https://svn.apache.org/viewvc/tomcat/trunk/java/org/apache/catalina/valves/ErrorReportValve.java?r1=1740707&r2=1779641&pathrev=1779641&diff_format=h 57 // CHECKSTYLE.ON: LineLength 58 protected static final Pattern TOMCAT_ERR_MESSAGE = Pattern.compile( 59 ".*<p><b>[^<]+</b>[^<]+</p><p><b>[^<]+</b> (?:<u>)?([^<]*)(?:</u>)?</p><p><b>[^<]+</b> (?:<u>)?[^<]*(?:</u>)?</p>.*", 60 Pattern.CASE_INSENSITIVE); 61 52 62 /** 53 63 * maximum download threads that will be started … … 74 84 Utils.newThreadFactory("JCS-downloader-%d", Thread.NORM_PRIORITY) 75 85 ); 76 77 78 86 79 87 private static final ConcurrentMap<String, Set<ICachedLoaderListener>> inProgress = new ConcurrentHashMap<>(); … … 359 367 } else { 360 368 raw = new byte[]{}; 369 try { 370 String data = urlConn.fetchContent(); 371 if (!data.isEmpty()) { 372 Matcher m = TOMCAT_ERR_MESSAGE.matcher(data); 373 if (m.matches()) { 374 attributes.setErrorMessage(m.group(1).replace("'", "''")); 375 } 376 } 377 } catch (IOException e) { 378 Logging.warn(e); 379 } 361 380 } 362 381 … … 390 409 return doCache; 391 410 } catch (IOException e) { 392 Logging.debug("JCS - IOEx ecption during communication with server for: {0}", getUrlNoException());411 Logging.debug("JCS - IOException during communication with server for: {0}", getUrlNoException()); 393 412 if (isObjectLoadable()) { 394 413 return true;
Note:
See TracChangeset
for help on using the changeset viewer.