package com.qianwen.core.tool.time; import java.util.Date; import java.util.function.Predicate; import java.util.regex.Pattern; import org.joda.time.DateTime; import org.joda.time.format.DateTimeFormat; import org.joda.time.format.DateTimeFormatter; /* loaded from: blade-core-tool-9.3.0.0-SNAPSHOT.jar:org/springblade/core/tool/time/DefaultDateFormatter.class */ public class DefaultDateFormatter implements DateFormatter { private DateTimeFormatter formatter; private Predicate predicate; private String formatterString; public DefaultDateFormatter(Pattern formatPattern, String formatter) { this(str -> { return formatPattern.matcher(str).matches(); }, DateTimeFormat.forPattern(formatter)); this.formatterString = formatter; } public DefaultDateFormatter(Predicate predicate, DateTimeFormatter formatter) { this.predicate = predicate; this.formatter = formatter; } @Override // org.springblade.core.tool.time.DateFormatter public boolean support(String str) { return this.predicate.test(str); } @Override // org.springblade.core.tool.time.DateFormatter public Date format(String str) { return this.formatter.parseDateTime(str).toDate(); } @Override // org.springblade.core.tool.time.DateFormatter public String getPattern() { return this.formatterString; } @Override // org.springblade.core.tool.time.DateFormatter public String toString(Date date) { return new DateTime(date).toString(getPattern()); } }