Revision 426e647f
Added by Andreas Müller almost 6 years ago
cdmlib-model/src/main/java/eu/etaxonomy/cdm/strategy/parser/TimePeriodParser.java | ||
---|---|---|
23 | 23 |
|
24 | 24 |
import eu.etaxonomy.cdm.common.CdmUtils; |
25 | 25 |
import eu.etaxonomy.cdm.model.common.TimePeriod; |
26 |
import eu.etaxonomy.cdm.model.common.VerbatimTimePeriod; |
|
26 | 27 |
|
27 | 28 |
/** |
28 | 29 |
* Class for parsing all types of date string to TimePeriod |
... | ... | |
55 | 56 |
private static final String strDateWithMonthes = "([0-3]?\\d" + dotOrWs + ")?" + strMonthes + dotOrWs + "\\d{4,4}"; |
56 | 57 |
private static final Pattern dateWithMonthNamePattern = Pattern.compile(strDateWithMonthes); |
57 | 58 |
|
58 |
public static TimePeriod parseString(TimePeriod timePeriod, String periodString){
|
|
59 |
public static <T extends TimePeriod> T parseString(T timePeriod, String periodString){
|
|
59 | 60 |
//TODO until now only quick and dirty (and partly wrong) |
60 |
TimePeriod result = timePeriod;
|
|
61 |
T result = timePeriod; |
|
61 | 62 |
|
62 | 63 |
if(timePeriod == null){ |
63 | 64 |
return timePeriod; |
... | ... | |
407 | 408 |
return parseString(timePeriod, strPeriod); |
408 | 409 |
} |
409 | 410 |
|
411 |
public static VerbatimTimePeriod parseStringVerbatim(String strPeriod) { |
|
412 |
VerbatimTimePeriod timePeriod = VerbatimTimePeriod.NewVerbatimInstance(); |
|
413 |
return parseString(timePeriod, strPeriod); |
|
414 |
} |
|
415 |
|
|
410 | 416 |
|
411 | 417 |
|
412 | 418 |
protected static Partial parseSingleDate(String singleDateString) throws IllegalArgumentException{ |
Also available in: Unified diff
ref #6752 implement verbatimDate for Reference (Parser and Formatter still missing)