diff --git a/src/main/java/uk/ac/ebi/embl/api/validation/check/entry/ExonFeaturesIntervalCheck.java b/src/main/java/uk/ac/ebi/embl/api/validation/check/entry/ExonFeaturesIntervalCheck.java index b657bda9..906b136b 100644 --- a/src/main/java/uk/ac/ebi/embl/api/validation/check/entry/ExonFeaturesIntervalCheck.java +++ b/src/main/java/uk/ac/ebi/embl/api/validation/check/entry/ExonFeaturesIntervalCheck.java @@ -52,12 +52,14 @@ public ValidationResult check(Entry entry) { if (filteredExonFeatures.size() == 0) return result; - List sortedFeatures = getSortedExonFeatures(filteredExonFeatures); + // Sorting to get the same order as in FTWriter.write() + Collections.sort(filteredExonFeatures); + String prevLocusTag = null; String prevGene = null; Long prevEndLocation = null; - for (Feature feature : sortedFeatures) { + for (Feature feature : filteredExonFeatures) { String currLocusTag = feature.getSingleQualifierValue(Qualifier.LOCUS_TAG_QUALIFIER_NAME); String currGene = feature.getSingleQualifierValue(Qualifier.GENE_QUALIFIER_NAME); @@ -99,17 +101,4 @@ public ValidationResult check(Entry entry) { return result; } - - public List getSortedExonFeatures(List exonFeatures) { - Collections.sort( - exonFeatures, - (feature1, feature2) -> - (feature1.getLocations().getMinPosition() < feature2.getLocations().getMinPosition()) - ? -1 - : (feature1.getLocations().getMinPosition() - > feature2.getLocations().getMinPosition()) - ? 1 - : 0); - return exonFeatures; - } }