code: public synchronized IHEAuditor getAuditor(final Class<? extends IHEAuditor> clazz, boolean useContextAuditorRegistry)
  	{
  		if (null == clazz) {
  			return null;
  		}
  		
  		IHEAuditor auditor = null;
  		if (useContextAuditorRegistry) {
  			auditor = getRegisteredAuditor(clazz.getName());
  			if (auditor != null) {
  				if (LOGGER.isDebugEnabled()) {
  					LOGGER.debug("Reusing auditor " + auditor.toString());
  				}
  				return auditor;
  			}
  		}
  		
  		auditor = AuditorFactory.getAuditor(clazz, null, null);
  
  		if (useContextAuditorRegistry) {
  			registerAuditor(clazz.getName(), auditor);
  		}
  		
  		return auditor;
  	}
docs: Instantiate (or get from cache) an auditor instance for a given Class instance
  @param clazz The class instance to instantiate the auditor for
  @param useContextAuditorRegistry Whether to use a cached auditor
  @return An auditor instance