Uploaded image for project: 'WildFly'
  1. WildFly
  2. WFLY-7935

DeploymentRestResourcesDefintion inner classes override compareTo, but not equals() and hashcode()

XMLWordPrintable

    • Icon: Bug Bug
    • Resolution: Won't Do
    • Icon: Minor Minor
    • None
    • 10.1.0.Final
    • REST
    • None

      JaxrsResourceMethodDescription [1] and JaxrsResourceLocatorDescription [2] classes override compareTo() method but they don't override equals() and hascode().

      Javadoc says [3]:
      "It is strongly recommended (though not required) that natural orderings be consistent with equals. "

      Implemented compareTo() compares object based on the class name, but the default implementation of Object for equals() compares objects based on the object reference, thus there is inconsistency.

      [1] https://github.com/wildfly/wildfly/blob/master/jaxrs/src/main/java/org/jboss/as/jaxrs/DeploymentRestResourcesDefintion.java#L389

      [2] https://github.com/wildfly/wildfly/blob/master/jaxrs/src/main/java/org/jboss/as/jaxrs/DeploymentRestResourcesDefintion.java#L347

      [3] http://docs.oracle.com/javase/7/docs/api/java/lang/Comparable.html

            rpelisse@redhat.com Romain Pelisse
            rpelisse@redhat.com Romain Pelisse
            Votes:
            0 Vote for this issue
            Watchers:
            3 Start watching this issue

              Created:
              Updated:
              Resolved: