Updated ContentFileProcessingException to stop throwing away the
original exception information.
Updated AliasesReader and AliasesWriter so that they now use static
methods, and so that they now hand back or receive an AliasesData
object, in preparation for changing AliasesFile so it can memoize access
to the underlying AliasesData.
Created an AliasData class that memoizes access to the underlying
AliasesData instance.
reverted accidental changes to 'aliasDefinitions.xml'
Modified AliasesFile to use the new AliasData class instead of
FileModifiedChecker.
Updated AliasDefinitionsReader and AliasDefinitionsWriter so that they
now use static methods, and so that they now hand back or receive an
AliasDefinitionsData object, in preparation for changing
AliasDefinitionsFile so it can memoize access to the underlying
AliasDefinitionsData.
Started memoizing access to the underlying AliasDefinitionsData.
Modified the AliasData class so we've gone back to only updating the
file when write() is explicitly invoked -- this makes testing easier.
Renamed AliasData to PersistentAliasesData, and changed it's
responsibilities so it now fully encapsulates all access to
AliasesReader, AliasesWriter & AliasesData, but provides no other
functionality.
Created a PersistentAliasDefinitionsData class that performs the same
role as PersistentAliasesData.
Changed PessimisticFileModificationService so it actually checks to see
if the file has changed in the case where it's being queried about a
file that actually exists, rather than a non-existent file or a
directory.
Changed BRJS and FileModificationService to allow file modification info
to be requested in batches, plus modified MemoizedValue to use the new
batch version of the method.
Added new FileModificationInfo wrapping classes that allow us to ignore
subsequent files if the first FMI is for a single file, so that we can
handle the case where MemoizedValue instances are being used for
read/write files, where other directories are having to be added too.
Updated AliasesData and AliasDefinitionsData to always re-read if the
file has changed, now that the tests are using the
ReadWriteCompatiblePessimisticFileModificationService class. Fixed a bug
in PessimisticFileModificationInfo.getLastModfied() that meant it only
checked the MD5 sum if the file modification dates were different,
rather than only checking if they are same, since if they are different
we immediately know the file has changed. Updated AliasDefinitionsFile
to start making use of PersistentAliasDefinitionsData.
Rewrote a couple of the alias model tests to take account of the fact
that the model now re-parses aliases files more often than it used to,
so they always need to be valid.
Finished conversion of AliasDefinitionsFile to be based on the
PersistentAliasDefinitionsData class.
Merge branch 'develop' into different-exception-after-reload
Updated XMLAsset to use MemoizedValue.
Modified ConfFile to use a MemoizedValue.
Removed the ConfFile.autoWriteOnSet() method.