use guava for lock handling