+ this.map = map;
+ }
+
+ public DBRefEntry(DBRefEntryI entry)
+ {
+ this((entry.getSource() == null ? "" : new String(entry.getSource())),
+ (entry.getVersion() == null ? "" : new String(
+ entry.getVersion())),
+ (entry.getAccessionId() == null ? "" : new String(
+ entry.getAccessionId())),
+ (entry.getMap() == null ? null : new Mapping(entry.getMap())));
+ }
+
+ @Override
+ public boolean equals(Object o)
+ {
+ // TODO should also override hashCode to ensure equal objects have equal
+ // hashcodes
+ if (o == null || !(o instanceof DBRefEntry))
+ {
+ return false;
+ }
+ DBRefEntry entry = (DBRefEntry) o;
+ if (entry == this)
+ {
+ return true;
+ }
+ if (equalRef(entry)
+ && ((map == null && entry.map == null) || (map != null
+ && entry.map != null && map.equals(entry.map))))
+ {
+ return true;
+ }
+ return false;