blob: e0232f7858bb6712de70e280545688d8f884e5d4 [file] [log] [blame]
/*
******************************************************************************
* Copyright (C) 2007, International Business Machines Corporation and *
* others. All Rights Reserved. *
******************************************************************************
*/
package com.ibm.icu.impl.duration;
import java.util.Date;
import java.util.TimeZone;
/**
* Abstract formatter for dates. Differs from DateFormat in that it
* provides <code>withLocale</code> and <code>withTimeZone</code> methods.
*/
public interface DateFormatter {
/**
* Format the date, provided as a java Date object.
*
* @param date the date
* @return the formatted time
*/
String format(Date date);
/**
* Format the date, provided as milliseconds.
*
* @param date the date in milliseconds
* @return the formatted time
*/
String format(long date);
/**
* Returns a new DateFormatter that uses data for a new locale.
*
* @param locale the new locale to use
* @return a new formatter for the given locale
*/
DateFormatter withLocale(String localeName);
/**
* Returns a new DateFormatter that uses the new time zone.
*
* @param tz the new time zone
* @return a new formatter for the given time zone
*/
DateFormatter withTimeZone(TimeZone tz);
}