On Fri, Feb 27, 2009 at 9:52 PM,  <xor at freenetproject.org> wrote:
> Author: xor
> Date: 2009-02-27 13:52:20 +0000 (Fri, 27 Feb 2009)
> New Revision: 25849
>
> Added:
> ? trunk/freenet/src/freenet/support/CurrentTimeUTC.java

FileLoggerHook is using   date.setTime(System.currentTimeMillis())
and DateFormat
I don't aware of any other class need utc time data. better keep it to
WoT/Freetalk for the moment.

> Log:
> Add a new class which will be used by Freetalk & WoT for obtaining the UTC 
> time easily - Unfortunately what java provides for that is a mess :|
>
> Added: trunk/freenet/src/freenet/support/CurrentTimeUTC.java
> ===================================================================
> --- trunk/freenet/src/freenet/support/CurrentTimeUTC.java ? ? ? ? ? ? ? ? ? ? 
> ? ? ? ? ? (rev 0)
> +++ trunk/freenet/src/freenet/support/CurrentTimeUTC.java ? ? ? 2009-02-27 
> 13:52:20 UTC (rev 25849)
> @@ -0,0 +1,59 @@
> +/* This code is part of Freenet. It is distributed under the GNU General
> + * Public License, version 2 (or at your option any later version). See
> + * http://www.gnu.org/ for further details of the GPL. */
> +package freenet.support;
> +
> +import java.util.Calendar;
> +import java.util.Date;
> +import java.util.GregorianCalendar;
> +import java.util.TimeZone;
> +
> +
> +/**
> + * A wrapper class around a GregorianCalendar which always returns the 
> current time.
> + * This is useful for working around the pitfall of class Calendar: It only 
> returns the current time when you first use a get*() function,
> + * in any get*() calls after the first call, the time value of the first 
> call is returned. One would have to call Calendar.clear() before each
> + * get to obtain the current time and this class takes care of that for you.
> + *
> + * Further, this class is synchronized so you do not need to worry about 
> synchronization of a Calendar anymore.
> + */
> +public class CurrentTimeUTC {
> +
> + ? ? ? private static final GregorianCalendar mCalendar = new 
> GregorianCalendar(TimeZone.getTimeZone("UTC"));
> +
> + ? ? ? public static Date get() {
> + ? ? ? ? ? ? ? synchronized(mCalendar) {
> + ? ? ? ? ? ? ? ? ? ? ? mCalendar.clear();
> + ? ? ? ? ? ? ? ? ? ? ? return mCalendar.getTime();
> + ? ? ? ? ? ? ? }
> + ? ? ? }
> +
> + ? ? ? public static long getInMillis() {
> + ? ? ? ? ? ? ? synchronized(mCalendar) {
> + ? ? ? ? ? ? ? ? ? ? ? mCalendar.clear();
> + ? ? ? ? ? ? ? ? ? ? ? return mCalendar.getTimeInMillis();
> + ? ? ? ? ? ? ? }
> + ? ? ? }
> +
> + ? ? ? public static int getYear() {
> + ? ? ? ? ? ? ? synchronized(mCalendar) {
> + ? ? ? ? ? ? ? ? ? ? ? mCalendar.clear();
> + ? ? ? ? ? ? ? ? ? ? ? return mCalendar.get(Calendar.YEAR);
> + ? ? ? ? ? ? ? }
> + ? ? ? }
> +
> + ? ? ? public static int getMonth() {
> + ? ? ? ? ? ? ? synchronized(mCalendar) {
> + ? ? ? ? ? ? ? ? ? ? ? mCalendar.clear();
> + ? ? ? ? ? ? ? ? ? ? ? return mCalendar.get(Calendar.MONTH);
> + ? ? ? ? ? ? ? }
> + ? ? ? }
> +
> + ? ? ? public static int getDayOfMonth() {
> + ? ? ? ? ? ? ? synchronized(mCalendar) {
> + ? ? ? ? ? ? ? ? ? ? ? mCalendar.clear();
> + ? ? ? ? ? ? ? ? ? ? ? return mCalendar.get(Calendar.DAY_OF_MONTH);
> + ? ? ? ? ? ? ? }
> + ? ? ? }
> +
> +}
>
> _______________________________________________
> cvs mailing list
> cvs at freenetproject.org
> http://emu.freenetproject.org/cgi-bin/mailman/listinfo/cvs
>

Reply via email to