It's safer to do:

    return fAnnotationTypeToValidatorMap.putIfAbsent(validateWithAnnotation, annotationValidator);

That way, there will be only one validator instance ever returned for a given annotation