Merge branch 'RED-8650-fix' into 'master'
RED-8650 - Fix date_formats path Closes RED-8650 See merge request redactmanager/redaction-service!374
This commit is contained in:
commit
65fe05be79
@ -13,11 +13,9 @@ import java.time.format.DateTimeParseException;
|
|||||||
import java.time.format.ResolverStyle;
|
import java.time.format.ResolverStyle;
|
||||||
import java.util.Date;
|
import java.util.Date;
|
||||||
import java.util.Locale;
|
import java.util.Locale;
|
||||||
|
import java.util.Objects;
|
||||||
import java.util.Optional;
|
import java.util.Optional;
|
||||||
|
|
||||||
import org.springframework.core.io.ClassPathResource;
|
|
||||||
import org.springframework.core.io.Resource;
|
|
||||||
|
|
||||||
import lombok.AccessLevel;
|
import lombok.AccessLevel;
|
||||||
import lombok.experimental.FieldDefaults;
|
import lombok.experimental.FieldDefaults;
|
||||||
import lombok.experimental.UtilityClass;
|
import lombok.experimental.UtilityClass;
|
||||||
@ -33,7 +31,7 @@ public class DateConverter {
|
|||||||
|
|
||||||
public Optional<Date> parseDate(String dateAsString) {
|
public Optional<Date> parseDate(String dateAsString) {
|
||||||
|
|
||||||
DateTimeFormatter formatter = getDateTimeFormatter("date_formats.txt");
|
DateTimeFormatter formatter = getDateTimeFormatter();
|
||||||
String cleanDate = dateAsString.trim();
|
String cleanDate = dateAsString.trim();
|
||||||
cleanDate = removeTrailingDot(cleanDate);
|
cleanDate = removeTrailingDot(cleanDate);
|
||||||
try {
|
try {
|
||||||
@ -55,20 +53,19 @@ public class DateConverter {
|
|||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
private DateTimeFormatter getDateTimeFormatter(String resourcePath) {
|
private DateTimeFormatter getDateTimeFormatter() {
|
||||||
|
|
||||||
if (DATE_TIME_FORMATTER == null) {
|
if (DATE_TIME_FORMATTER == null) {
|
||||||
DATE_TIME_FORMATTER = createFormatterFromResource(resourcePath);
|
DATE_TIME_FORMATTER = createFormatterFromResource();
|
||||||
}
|
}
|
||||||
return DATE_TIME_FORMATTER;
|
return DATE_TIME_FORMATTER;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
private DateTimeFormatter createFormatterFromResource(String resourcePath) {
|
private DateTimeFormatter createFormatterFromResource() {
|
||||||
|
|
||||||
DateTimeFormatterBuilder builder = new DateTimeFormatterBuilder();
|
DateTimeFormatterBuilder builder = new DateTimeFormatterBuilder();
|
||||||
Resource resource = new ClassPathResource(resourcePath);
|
try (BufferedReader reader = new BufferedReader(new InputStreamReader(Objects.requireNonNull(DateConverter.class.getResourceAsStream("/date_formats.txt"))))) {
|
||||||
try (BufferedReader reader = new BufferedReader(new InputStreamReader(resource.getInputStream()))) {
|
|
||||||
String line;
|
String line;
|
||||||
while ((line = reader.readLine()) != null) {
|
while ((line = reader.readLine()) != null) {
|
||||||
builder.appendOptional(DateTimeFormatter.ofPattern(line.trim(), Locale.ENGLISH));
|
builder.appendOptional(DateTimeFormatter.ofPattern(line.trim(), Locale.ENGLISH));
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user