Details
Description
Refactor ComplexTypeImpl, FeatureTypeImpl, and SimpleFeatureTypeImpl so that property iteration order preserves the order of the schema provided at construction, and equals and hashCode respect this order.
Once this patch is applied I will also reformat these three classes to conform to the GeoTools convention. This will be a separate reformatting-only commit.
Issue Links
- depends upon
-
GEOT-2338
SimpleFeatureTypeImpl has inconsistent iteration order, broken equals/hashCode
-
GEOT-2338did not go far enough. Justin and I have discovered that ComplexTypeImpl causes problems because it does not respect iteration order. We also expect equals/hashCode to disregard order. I intend to move the changes made to SimpleFeatureTypeImpl inGEOT-2338into ComplexTypeImpl. This removes the need for several overrides and makes the implementation cleaner.