code: @SuppressWarnings("unchecked")
      public <T> Map<String, ConfigItem<T>> getConfigItemMap(String key) {
          Map<String, ConfigItem<T>> configItemMap = (Map<String, ConfigItem<T>>) attributes.get(key);
          if (configItemMap == null) {
              configItemMap = new HashMap<String, ConfigItem<T>>();
              attributes.put(key, configItemMap);
  
              if (TraceComponent.isAnyTracingEnabled() && tc.isDebugEnabled()) {
                  Tr.debug(tc, "ConfigContext create map instance for {0}", key);
              }
          }
          return configItemMap;
      }
docs: Obtain an attribute value as a mapping.  Create and return a new empty mapping
  if one is not yet present.
  
  Once obtained as a mapping, the attribute value must always be obtained
  as a mapping.  A subsequent attempt to obtain the value as a set will fail
  with a class cast exception.
  
  @param key The key of the attribute value.
  
  @return The attribute value as a mapping.