eirikbakke commented on code in PR #8407: URL: https://github.com/apache/netbeans/pull/8407#discussion_r2035535576
########## platform/openide.dialogs/src/org/openide/NotifyDescriptor.java: ########## @@ -129,24 +130,50 @@ public class NotifyDescriptor extends Object { */ public static final String PROP_INFO_NOTIFICATION = "infoNotification"; // NOI18N + /** + * Used to be a <code>new Integer(JOptionPane.FOO_OPTION)</code> instance. + * + * For compatibility reasons the public Object constants must have distinct + * identity, but equals must behave like Integer's equals and compare only + * the wrapped int like a Record. + */ + private record ReturnValue(int option) implements Serializable, Comparable<ReturnValue> { + + @Override + public String toString() { + return String.valueOf(option); + } + + @Override + public int hashCode() { + return Integer.hashCode(option); + } + + @Override + public int compareTo(ReturnValue other) { + return Integer.compare(option, other.option); + } + + } + // // Return values // /** Return value if YES is chosen. */ - public static final Object YES_OPTION = new Integer(JOptionPane.YES_OPTION); + public static final Object YES_OPTION = new ReturnValue(JOptionPane.YES_OPTION); Review Comment: Yeah, it's a lot of what-ifs. I think the refactor is reasonable. -- This is an automated message from the Apache Git Service. To respond to the message, please log on to GitHub and use the URL above to go to the specific comment. To unsubscribe, e-mail: notifications-unsubscr...@netbeans.apache.org For queries about this service, please contact Infrastructure at: us...@infra.apache.org --------------------------------------------------------------------- To unsubscribe, e-mail: notifications-unsubscr...@netbeans.apache.org For additional commands, e-mail: notifications-h...@netbeans.apache.org For further information about the NetBeans mailing lists, visit: https://cwiki.apache.org/confluence/display/NETBEANS/Mailing+lists