Deprecate joda-time

- ref:
  http://blog.joda.org/2014/11/converting-from-joda-time-to-javatime.html

Change-Id: I1115e8053f601e78cb933ccbfa664ff8787d2da1
diff --git a/utils/misc/src/main/java/org/onlab/util/Tools.java b/utils/misc/src/main/java/org/onlab/util/Tools.java
index a678f6a..057441e 100644
--- a/utils/misc/src/main/java/org/onlab/util/Tools.java
+++ b/utils/misc/src/main/java/org/onlab/util/Tools.java
@@ -32,6 +32,9 @@
 import java.nio.file.SimpleFileVisitor;
 import java.nio.file.StandardCopyOption;
 import java.nio.file.attribute.BasicFileAttributes;
+import java.time.Instant;
+import java.time.OffsetDateTime;
+import java.time.ZoneId;
 import java.util.Arrays;
 import java.util.Collection;
 import java.util.Dictionary;
@@ -676,7 +679,7 @@
             return future;
         }
 
-        BlockingAwareFuture<T> newFuture = new BlockingAwareFuture<T>();
+        BlockingAwareFuture<T> newFuture = new BlockingAwareFuture<>();
         future.whenComplete((result, error) -> {
             Runnable completer = () -> {
                 if (future.isCompletedExceptionally()) {
@@ -827,4 +830,16 @@
         }
     }
 
+    /**
+     * Creates OffsetDateTime instance from epoch milliseconds,
+     * using system default time zone.
+     *
+     * @param epochMillis to convert
+     * @return OffsetDateTime
+     */
+    public static OffsetDateTime defaultOffsetDataTime(long epochMillis) {
+        return OffsetDateTime.ofInstant(Instant.ofEpochMilli(epochMillis),
+                                        ZoneId.systemDefault());
+    }
+
 }