code: public synchronized Set<String> getNames() {
          if (map == null) {
              return Collections.emptySet();
          }
          return Collections.unmodifiableSet(map.keySet());
      }
docs: Returns a Set of the names that can be used to get
  values of the private data.
  
  @return a Set of the names.