diff options
Diffstat (limited to 'src/main/java/org/gnunet/util/AbsoluteTime.java')
-rw-r--r-- | src/main/java/org/gnunet/util/AbsoluteTime.java | 46 |
1 files changed, 46 insertions, 0 deletions
diff --git a/src/main/java/org/gnunet/util/AbsoluteTime.java b/src/main/java/org/gnunet/util/AbsoluteTime.java index 265abf5..6027198 100644 --- a/src/main/java/org/gnunet/util/AbsoluteTime.java +++ b/src/main/java/org/gnunet/util/AbsoluteTime.java | |||
@@ -23,7 +23,11 @@ package org.gnunet.util; | |||
23 | import org.slf4j.Logger; | 23 | import org.slf4j.Logger; |
24 | import org.slf4j.LoggerFactory; | 24 | import org.slf4j.LoggerFactory; |
25 | 25 | ||
26 | import java.text.ParseException; | ||
27 | import java.text.SimpleDateFormat; | ||
28 | import java.util.Calendar; | ||
26 | import java.util.Date; | 29 | import java.util.Date; |
30 | import java.util.GregorianCalendar; | ||
27 | 31 | ||
28 | /** | 32 | /** |
29 | * A specific point in time. | 33 | * A specific point in time. |
@@ -270,4 +274,46 @@ public class AbsoluteTime implements Comparable<AbsoluteTime> { | |||
270 | public long getSeconds() { | 274 | public long getSeconds() { |
271 | return abs_value_us / (1000 * 1000); | 275 | return abs_value_us / (1000 * 1000); |
272 | } | 276 | } |
277 | |||
278 | public static AbsoluteTime fromSeconds(long stamp) { | ||
279 | return new AbsoluteTime(stamp * 1000 * 1000); | ||
280 | } | ||
281 | |||
282 | public String toFancyString() { | ||
283 | SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm"); | ||
284 | return sdf.format(new Date(getMilliseconds())); | ||
285 | } | ||
286 | |||
287 | private long getMilliseconds() { | ||
288 | return abs_value_us / 1000; | ||
289 | } | ||
290 | |||
291 | public static AbsoluteTime fromString(String s) { | ||
292 | Date date = null; | ||
293 | |||
294 | try { | ||
295 | SimpleDateFormat sdf = new SimpleDateFormat("yy-MM-dd HH:mm:ss"); | ||
296 | date = sdf.parse(s); | ||
297 | return new AbsoluteTime(date.getTime() * 1000); | ||
298 | } catch (ParseException e) { | ||
299 | // try next format | ||
300 | } | ||
301 | |||
302 | try { | ||
303 | SimpleDateFormat sdf = new SimpleDateFormat("yy-MM-dd HH:mm"); | ||
304 | date = sdf.parse(s); | ||
305 | return new AbsoluteTime(date.getTime() * 1000); | ||
306 | } catch (ParseException e) { | ||
307 | // try next format | ||
308 | } | ||
309 | |||
310 | try { | ||
311 | SimpleDateFormat sdf = new SimpleDateFormat("yy-MM-dd"); | ||
312 | date = sdf.parse(s); | ||
313 | return new AbsoluteTime(date.getTime() * 1000); | ||
314 | } catch (ParseException e) { | ||
315 | // try next format | ||
316 | } | ||
317 | return null; | ||
318 | } | ||
273 | } | 319 | } |