code: private static Collection<String> getPropertyGuard()
      {
          Collection<String> propertyGuard = propertyGuardThreadLocal.get();
  
          if (propertyGuard == null)
          {
              propertyGuard = new HashSet<String>();
              propertyGuardThreadLocal.set(propertyGuard);
          }
  
          return propertyGuard;
      }
docs: Gets the Collection<String> value of the propertyGuardThreadLocal.
  If the value from the ThreadLocal ist null, a new Collection<String>
  will be created.
  
  NOTE that we should not accomplish this by setting an initialValue on the
  ThreadLocal, because this will automatically be set on the ThreadLocalMap
  and thus can propably cause a memory leak.
  
  @return