{@link LockAdviser} is responsible for obtaining and releasing {@link Lock file locks} for read and write access. The {@link Lock file locks} are storedon disk at the specified {@link File lock path directory}. This locking mechanism allows for multiple read locks to be obtained, but only one write lock.
Each unique {@link File lock path directory} will have a single instance of{@link LockAdviser lock adviser}. {@link LockAdviser} is thread-safe whichallows multiple threads to obtain and release {@link Lock locks} from thesame {@link LockAdviser lock adviser instance} without concurrency problems.
TODO Document Lockable implementations with LockAdviser-specific details. TODO Review and refactor if necessary. TODO Document fully once you're happy with the design.
@author Anthony Bargnesi {@code
}