private List sortProperties()

in src/main/java/org/apache/maven/plugins/shade/resource/properties/PropertiesTransformer.java [135:166]


    private List<Properties> sortProperties() {
        final List<Properties> sortedProperties = new ArrayList<>();
        boolean foundMaster = false;
        for (final Properties current : properties) {
            if (alreadyMergedKey != null) {
                final String master = current.getProperty(alreadyMergedKey);
                if (Boolean.parseBoolean(master)) {
                    if (foundMaster) {
                        throw new IllegalStateException(
                                "Ambiguous merged values: " + sortedProperties + ", " + current);
                    }
                    foundMaster = true;
                    sortedProperties.clear();
                    sortedProperties.add(current);
                }
            }
            if (!foundMaster) {
                final int configOrder = getConfigurationOrdinal(current);

                int i;
                for (i = 0; i < sortedProperties.size(); i++) {
                    int listConfigOrder = getConfigurationOrdinal(sortedProperties.get(i));
                    if ((!reverseOrder && listConfigOrder > configOrder)
                            || (reverseOrder && listConfigOrder < configOrder)) {
                        break;
                    }
                }
                sortedProperties.add(i, current);
            }
        }
        return sortedProperties;
    }