Id is now a string.
[utils] / support / general / src / main / java / org / wamblee / general / Id.java
index 925732fd1c68fe2ee696f5532481fd712d145be5..c09f849a6e420fd3f81749597cc854e6906cbf62 100644 (file)
@@ -25,28 +25,33 @@ package org.wamblee.general;
  */
 public class Id<T> implements Comparable<Id<T>> {
 
-    private long id;
+    private String id;
 
     /**
      * Constructs the id.
      * 
      * @param aId
      *            Integer id.
+     * @throws NullPointerException
+     *             in case the id is null.
      */
-    public Id(long aId) {
+    public Id(String aId) {
+        if (aId == null) {
+            throw new NullPointerException("id is null");
+        }
         id = aId;
     }
 
     /**
      * @return The underlying id.
      */
-    public long getId() {
+    public String getId() {
         return id;
     }
 
     @Override
     public int hashCode() {
-        return ((Long) id).hashCode();
+        return id.hashCode();
     }
 
     @Override
@@ -57,16 +62,16 @@ public class Id<T> implements Comparable<Id<T>> {
         if (!(aObj instanceof Id)) {
             return false;
         }
-        return id == ((Id<T>) aObj).id;
+        return id.equals(((Id<T>) aObj).id);
     }
 
     @Override
     public String toString() {
-        return id + "";
+        return id;
     }
 
     @Override
-    public int compareTo(org.wamblee.general.Id<T> aId) {
-        return ((Long) id).compareTo((Long) aId.getId());
+    public int compareTo(Id<T> aId) {
+        return id.compareTo(aId.getId());
     }
 }