Author: bobtarling Date: 2008-04-30 14:54:21-0700 New Revision: 14538 Modified: trunk/src/argouml-app/src/org/argouml/util/ItemUID.java
Log: Fix failing tests and add comments Modified: trunk/src/argouml-app/src/org/argouml/util/ItemUID.java Url: http://argouml.tigris.org/source/browse/argouml/trunk/src/argouml-app/src/org/argouml/util/ItemUID.java?view=diff&rev=14538&p1=trunk/src/argouml-app/src/org/argouml/util/ItemUID.java&p2=trunk/src/argouml-app/src/org/argouml/util/ItemUID.java&r1=14537&r2=14538 ============================================================================== --- trunk/src/argouml-app/src/org/argouml/util/ItemUID.java (original) +++ trunk/src/argouml-app/src/org/argouml/util/ItemUID.java 2008-04-30 14:54:21-0700 @@ -162,16 +162,22 @@ } if (obj instanceof IItemUID) { - return ((IItemUID) obj).getItemUID().toString(); + final ItemUID itemUid = ((IItemUID) obj).getItemUID(); + return (itemUid == null ? null : itemUid.toString()); } Object rv; try { + // TODO: We shouldn't need this reflection any more once we have + // convinced ourselves that everything with a getItemUID method + // is implementing IItemUID Method m = obj.getClass().getMethod("getItemUID", (Class[]) null); rv = m.invoke(obj, (Object[]) null); } catch (NoSuchMethodException nsme) { // Apparently this object had no getItemUID try { // This is needed for a CommentEdge ... + // TODO: Why doesn't CommentEdge implement IItemUID and be + // handled with the mechanism above. Method m = obj.getClass().getMethod("getUUID", (Class[]) null); rv = m.invoke(obj, (Object[]) null); return (String) rv; @@ -254,6 +260,9 @@ Object[] mparam; params[0] = MYCLASS; try { + // TODO: We shouldn't need this reflection any more once we have + // convinced ourselves that everything with a setItemUID method + // is implementing IItemUID Method m = obj.getClass().getMethod("setItemUID", params); mparam = new Object[1]; mparam[0] = new ItemUID(); --------------------------------------------------------------------- To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
