Class RangeAndResultingSequenceComparator

  • All Implemented Interfaces:
    Comparator<Range>
    Direct Known Subclasses:
    UnambiguousRangeAndResultingSequenceComparator

    public class RangeAndResultingSequenceComparator
    extends RangeComparator
    Simple range comparator that will also compare resulting sequences.. It compares first the start Position, then the end Position using a PositionComparator, If start/end positions are equals, the linked ranges will always come before the ranges that are not linked. - Two ranges which are null are equals - The range which is not null is before null. Then, if the positions and linked boolean are the same, it will compare the resultingSequences using ResultingSequenceComparator
    Since:
    21/05/13
    Version:
    $Id$
    Author:
    Marine Dumousseau (marine@ebi.ac.uk)
    • Constructor Detail

      • RangeAndResultingSequenceComparator

        public RangeAndResultingSequenceComparator​(PositionComparator positionComparator)
        Creates a new RangeComparator
        Parameters:
        positionComparator - : the position comparator is required to compare start/end positions
    • Method Detail

      • compare

        public int compare​(Range range1,
                           Range range2)
        It compares first the start Position, then the end Position using a PositionComparator, If start/end positions are equals, the linked ranges will always come before the ranges that are not linked. - Two ranges which are null are equals - The range which is not null is before null. It compares first the start Position, then the end Position using a PositionComparator, If start/end positions are equals, the linked ranges will always come before the ranges that are not linked. If both ranges have the same positions and linked property, it will compare the resultingSequences using ResultingSequenceComparator - Two ranges which are null are equals - The range which is not null is before null.
        Specified by:
        compare in interface Comparator<Range>
        Overrides:
        compare in class RangeComparator
        Parameters:
        range1 - a Range object.
        range2 - a Range object.
        Returns:
        a int.