X-Git-Url: http://wamblee.org/gitweb/?a=blobdiff_plain;f=common%2Fsrc%2Fmain%2Fjava%2Forg%2Fwamblee%2Fxmlrouter%2Fcommon%2FId.java;h=a50b8f2c7b3dcd8999b641df7b60c9a4fe5a981d;hb=ca624324bf36e5ba8217a6af861cbf898a40adfc;hp=bc2399985649c2028fb82c218b14dcda642f966c;hpb=7ace7a8cf3173112717904aa825a7481dd0804e8;p=xmlrouter diff --git a/common/src/main/java/org/wamblee/xmlrouter/common/Id.java b/common/src/main/java/org/wamblee/xmlrouter/common/Id.java index bc23999..a50b8f2 100644 --- a/common/src/main/java/org/wamblee/xmlrouter/common/Id.java +++ b/common/src/main/java/org/wamblee/xmlrouter/common/Id.java @@ -12,24 +12,46 @@ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. * See the License for the specific language governing permissions and * limitations under the License. - */ + */ package org.wamblee.xmlrouter.common; -public class Id { +/** + * This class provides a generic typesafe id wrapping a long value. + * + * @author Erik Brakkee + * + * @param + * Type the id refers to. + */ +public class Id implements Comparable> { - private int id; + private String id; - public Id(int aId) { + /** + * Constructs the id. + * + * @param aId + * Integer id. + * @throws NullPointerException + * in case the id is null. + */ + public Id(String aId) { + if (aId == null) { + throw new NullPointerException("id is null"); + } id = aId; } - public int getId() { + /** + * @return The underlying id. + */ + public String getId() { return id; } @Override public int hashCode() { - return id; + return id.hashCode(); } @Override @@ -40,11 +62,16 @@ public class Id { if (!(aObj instanceof Id)) { return false; } - return id == ((Id) aObj).id; + return id.equals(((Id) aObj).id); } @Override public String toString() { - return id + ""; + return id; + } + + @Override + public int compareTo(Id aId) { + return id.compareTo(aId.getId()); } }