Looking at these 3 methods, I don't see why they need to be synchronized. All the state appears to be in method-scope.