Changeset 6257
- Timestamp:
- 06/01/15 12:51:04 (9 years ago)
- Location:
- vlo/trunk/vlo-importer/src
- Files:
-
- 2 edited
Legend:
- Unmodified
- Added
- Removed
-
vlo/trunk/vlo-importer/src/main/java/eu/clarin/cmdi/vlo/importer/TemporalCoveragePostProcessor.java
r6164 r6257 9 9 10 10 // Open Date Range Format 11 private static final Pattern ODRF_PATTERN = Pattern.compile(" (([0-9]{4}(-[0-9]{2})?(-[0-9]{2})?)?/([0-9]{4}(-[0-9]{2})?(-[0-9]{2})?)?)");12 // simple year13 private static final Pattern YEAR_PATTERN = Pattern.compile("([0-9]{4}(-[0-9]{2})?(-[0-9]{2})?)");11 private static final Pattern ODRF_PATTERN = Pattern.compile("^(([0-9]{4}(-[0-9]{2})?(-[0-9]{2})?)?/([0-9]{4}(-[0-9]{2})?(-[0-9]{2})?)?)"); 12 // Simplified W3C DateTime 13 private static final Pattern DATETIME_PATTERN = Pattern.compile("^([0-9]{4}(-[0-9]{2})?(-[0-9]{2})?)"); 14 14 15 15 /** 16 * Tries to identify relevant yearsubstrings in input16 * Tries to identify relevant temporal substrings in input 17 17 * 18 * @param value extracted yearor date range String18 * @param value extracted date or date range String 19 19 * @return List of accepted values 20 20 */ 21 21 @Override 22 22 public List<String> process(final String value) { 23 Matcher odrfMatcher = ODRF_PATTERN.matcher(value); 24 Matcher yearMatcher = YEAR_PATTERN.matcher(value); 23 String coverageString = value.trim(); 24 25 Matcher odrfMatcher = ODRF_PATTERN.matcher(coverageString); 26 Matcher yearMatcher = DATETIME_PATTERN.matcher(coverageString); 25 27 List<String> resultList = new ArrayList<String>(); 26 28 -
vlo/trunk/vlo-importer/src/test/java/eu/clarin/cmdi/vlo/importer/TemporalCoveragePostProcessorTest.java
r6164 r6257 2 2 3 3 import static org.junit.Assert.assertEquals; 4 import static org.junit.Assert.assertNull;5 4 import org.junit.Test; 6 5 … … 12 11 assertEquals("/2012", processor.process("/2012").get(0)); 13 12 assertEquals("2012-02", processor.process("2012-02").get(0)); 13 assertEquals("1997-07-16/1997-07-17", processor.process("1997-07-16/1997-07-17").get(0)); 14 assertEquals("1994-11-05", processor.process("1994-11-05T08:15:30-05:00").get(0)); 15 assertEquals(0, processor.process("northlimit=-16.4933; southlimit=-16.5617; westlimit=167.419; eastlimit=167.46").size()); 14 16 assertEquals(0, processor.process("1. November").size()); 15 17 }
Note: See TracChangeset
for help on using the changeset viewer.