Rename pimstuff -> jpim and move to Maven
[jpim.git] / src / main / java / de / j32 / util / Util.java
diff --git a/src/main/java/de/j32/util/Util.java b/src/main/java/de/j32/util/Util.java
new file mode 100644 (file)
index 0000000..cd4efb8
--- /dev/null
@@ -0,0 +1,50 @@
+package de.j32.util;
+
+import java.io.Closeable;
+import java.io.IOException;
+import java.io.InputStream;
+import java.io.OutputStream;
+import java.util.Iterator;
+
+public class Util
+{
+
+    public static <E> E nonnull(E ob)
+    {
+        if (ob == null) throw new NullPointerException();
+        return ob;
+    }
+
+    public static void transfer(InputStream is, OutputStream os)
+            throws IOException
+    {
+        byte[] buffer = new byte[16384];
+        int len = -1;
+        while ((len = is.read(buffer)) != -1)
+            os.write(buffer, 0, len);
+    }
+
+    public static void nothrowClose(Closeable c)
+    {
+        if (c != null) {
+            try {
+                c.close();
+            }
+            catch (IOException e) {}
+        }
+    }
+
+    public static <E> E first(Iterable<E> i)
+    {
+        Iterator<E> it = i.iterator();
+        if (it.hasNext()) return it.next();
+        return null;
+    }
+
+    public static <E> E first(Iterator<E> it)
+    {
+        if (it.hasNext()) return it.next();
+        return null;
+    }
+
+}