Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Original file line number Diff line number Diff line change
Expand Up @@ -6,7 +6,6 @@
import java.time.ZonedDateTime;
import java.time.format.DateTimeFormatter;
import java.time.format.DateTimeParseException;
import java.util.Calendar;
import java.util.Date;
import java.util.Locale;

Expand Down Expand Up @@ -147,7 +146,7 @@ protected void parseDate() {

try {
if (isYearMissing) {
String year = Integer.toString(Calendar.getInstance().get(Calendar.YEAR));
String year = deriveEventYearFromSystemTime();
String modifiedDate = year + " " + originalDate;
final ZonedDateTime dateTime = ZonedDateTime.parse(modifiedDate, formatter);
this.date = Date.from(dateTime.toInstant());
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -11,12 +11,14 @@
import java.text.DateFormat;
import java.text.ParseException;
import java.text.SimpleDateFormat;
import java.time.Year;
import java.time.ZoneId;
import java.time.ZoneOffset;
import java.util.Calendar;
import java.util.Date;
import java.util.Locale;
import java.util.Objects;
import java.util.Optional;
import java.util.TimeZone;

/**
* SyslogServerEvent provides an implementation of the SyslogServerEventIF interface.
Expand Down Expand Up @@ -136,7 +138,7 @@ protected void parseDate() {
}

private Date parseDateBasedOnFormat(String originalDate, int dateLength, String format) throws ParseException {
String year = Integer.toString(Calendar.getInstance().get(Calendar.YEAR));
String year = deriveEventYearFromSystemTime();
String modifiedDate = originalDate + " " + year;
DateFormat dateFormat = new SimpleDateFormat(format, Locale.ENGLISH);

Expand All @@ -147,6 +149,14 @@ private Date parseDateBasedOnFormat(String originalDate, int dateLength, String
return dateFormat.parse(modifiedDate);
}

protected String deriveEventYearFromSystemTime() {
ZoneId zoneId = Optional.ofNullable(sysLogServerTimeZone)
.map(tz -> tz.toTimeZone())
.map(TimeZone::toZoneId)
.orElse(ZoneId.systemDefault());
return Integer.toString(Year.now(zoneId).getValue());
}

private DateTime parse8601Date(String date) {

if (!hasTimeZone(date) && Objects.nonNull(sysLogServerTimeZone)) {
Expand Down