Details
-
Bug
-
Status: Closed
-
Major
-
Resolution: Fixed
-
0.3-incubating
-
None
Description
BaseFormatPropertySourceProvider can handle multiple formats registered. This is useful in my project because we actually support multiple formats for a certain type of config file and this way we can implement one Provider which can provide PropertySources for all of them.
But getPropertySources() will
- blindly try all files with all formats. E.g. if both, "properties" and "ini" formats are registered, it will try all files with both formats without checking format.accepts() first.
- try all the formats with the same InputStream. If the previous format does not reset the input stream, it is already at the end of the file and the following formats don't have anything left to read, returning null. This leads to some {{NullPointerException}}s being logged.