package com.liveramp.hank.monitor.notification;
import java.util.Date;
import org.joda.time.format.DateTimeFormat;
import org.joda.time.format.DateTimeFormatter;
import com.liveramp.hank.monitor.notifier.Notification;
public abstract class AbstractNotification implements Notification {
private final Date date;
private static final String DATE_FORMAT = "yy/MM/dd HH:mm:ss";
private static final DateTimeFormatter dateFormat = DateTimeFormat.forPattern(DATE_FORMAT);
public AbstractNotification() {
date = new Date();
}
@Override
public Date getDate() {
return date;
}
protected abstract String formatCore(NotificationFormatter formatter);
@Override
public final String format(NotificationFormatter formatter) {
return dateFormat.print(date.getTime()) + " " + formatCore(formatter);
}
}