public int compareTo()

in src/main/java/org/apache/sling/api/request/header/MediaRangeList.java [286:310]


        public int compareTo(MediaRange o) {
            double diff = this.q - o.getQ();
            if (diff == 0) {
                // Compare parameters
                int paramDiff = o.getParameters().size() - this.getParameters().size();
                if (paramDiff != 0) {
                    return paramDiff;
                }
                // Compare wildcards
                if (this.supertype.equals(WILDCARD) && !o.getSupertype().equals(WILDCARD)) {
                    return 1;
                } else if (!this.supertype.equals(WILDCARD) && o.getSupertype().equals(WILDCARD)) {
                    return -1;
                }
                if (this.subtype.equals(WILDCARD) && !o.getSubtype().equals(WILDCARD)) {
                    return 1;
                } else if (!this.subtype.equals(WILDCARD) && o.getSubtype().equals(WILDCARD)) {
                    return -1;
                }
                // Compare names
                return this.toString().compareTo(o.toString());
            } else {
                return diff > 0 ? -1 : 1;
            }
        }