Class SortedProperties

  • All Implemented Interfaces:
    java.io.Serializable, java.lang.Cloneable, java.util.Map<java.lang.Object,​java.lang.Object>

    public final class SortedProperties
    extends java.util.Properties
    Author:
    pugh
    See Also:
    Serialized Form
    • Field Summary

      • Fields inherited from class java.util.Properties

        defaults
    • Method Summary

      All Methods Static Methods Instance Methods Concrete Methods 
      Modifier and Type Method Description
      java.util.Enumeration<java.lang.Object> keys()
      Overriden to be able to write properties sorted by keys to the disk
      static java.util.Enumeration<?> sortKeys​(java.util.Set<java.lang.String> keySet)
      To be compatible with version control systems, we need to sort properties before storing them to disk.
      • Methods inherited from class java.util.Properties

        clear, clone, compute, computeIfAbsent, computeIfPresent, contains, containsKey, containsValue, elements, entrySet, equals, forEach, get, getOrDefault, getProperty, getProperty, hashCode, isEmpty, keySet, list, list, load, load, loadFromXML, merge, propertyNames, put, putAll, putIfAbsent, rehash, remove, remove, replace, replace, replaceAll, save, setProperty, size, store, store, storeToXML, storeToXML, storeToXML, stringPropertyNames, toString, values
      • Methods inherited from class java.lang.Object

        finalize, getClass, notify, notifyAll, wait, wait, wait
    • Constructor Detail

      • SortedProperties

        public SortedProperties()
    • Method Detail

      • keys

        public java.util.Enumeration<java.lang.Object> keys()
        Overriden to be able to write properties sorted by keys to the disk
        Overrides:
        keys in class java.util.Properties
        See Also:
        Hashtable.keys()
      • sortKeys

        public static java.util.Enumeration<?> sortKeys​(java.util.Set<java.lang.String> keySet)
        To be compatible with version control systems, we need to sort properties before storing them to disk. Otherwise each change may lead to problems by diff against previous version - because Property entries are randomly distributed (it's a map).
        Parameters:
        keySet - non null set instance to sort
        Returns:
        non null list wich contains all given keys, sorted lexicographically. The list may be empty if given set was empty