1
0
Fork 0
mirror of https://codeberg.org/Mercury-IM/Smack synced 2024-11-26 16:22:06 +01:00

SMACK-391 New enum to define date formats and profiles.

git-svn-id: http://svn.igniterealtime.org/svn/repos/smack/trunk@13429 b35dd754-fafc-0310-a699-88a17e54d16e
This commit is contained in:
rcollier 2013-02-04 03:52:08 +00:00
parent 1d36ae8db4
commit 457959bc88

View file

@ -0,0 +1,45 @@
package org.jivesoftware.smack.util;
import java.text.SimpleDateFormat;
/**
* Defines the various date and time profiles used in XMPP along with their associated formats.
* @author Robin Collier
*
*/
public enum DateFormatType
{
XEP_0082_DATE_PROFILE("yyyy-MM-dd"),
XEP_0082_DATETIME_PROFILE("yyyy-MM-dd'T'HH:mm:ss'Z'"),
XEP_0082_DATETIME_MILLIS_PROFILE("yyyy-MM-dd'T'HH:mm:ss.SSS'Z'"),
XEP_0082_TIME_PROFILE("hh:mm:ss"),
XEP_0082_TIME_ZONE_PROFILE("hh:mm:ss'Z'"),
XEP_0082_TIME_MILLIS_PROFILE("hh:mm:ss.SSS"),
XEP_0082_TIME_MILLIS_ZONE_PROFILE("hh:mm:ss.SSS'Z'"),
XEP_0091_DATETIME("yyyyMMdd'T'HH:mm:ss");
private String formatString;
private DateFormatType(String dateFormat)
{
formatString = dateFormat;
}
/**
* Get the format string as defined in either XEP-0082 or XEP-0091.
* @return The defined string format for the date.
*/
public String getFormatString()
{
return formatString;
}
/**
* Create a {@link SimpleDateFormat} object with the format defined by {@link #getFormatString()}.
* @return A new date formatter.
*/
public SimpleDateFormat createFormatter()
{
return new SimpleDateFormat(getFormatString());
}
}