Details
Description
The getter methods in our implementation of ISO 19115 were intentionnaly not synchronized when the method does nothing else than returning an object reference. The rational was that fetching an object reference is an atomic operation anyway. However while the reference is garanteed to be correct, the values in the references object may not be fully published (see Java concurrency in practice). We should synchronize all methods, including the trivial ones.
Note that in this process, we noticed a few unsynchronized non-trivial methods, which are clearly bugs.
