docs: public boolean containsKey(Object key)
      {
          checkKey(key);
  
          int keyLength = ((String)key).length();
          if (keyLength >= MIN_LENGHT_CHECK)
          {
              if (MARK_CREATED.length() == keyLength &&
                  MARK_CREATED.equals(key))
              {
                  return ((UIComponentBase)_component).getOamVfMarkCreated() != null;
              }
              else if (FACET_NAME_KEY.length() == keyLength &&
                  FACET_NAME_KEY.equals(key))
              {
                  return _component.getOamVfFacetName() != null;
              }
              else if (COMPONENT_ADDED_BY_HANDLER_MARKER.length() == keyLength &&
                  COMPONENT_ADDED_BY_HANDLER_MARKER.equals(key))
              {
                  return _component.isOamVfAddedByHandler();
              }
              else if (FACET_CREATED_UIPANEL_MARKER.length() == keyLength &&
                  FACET_CREATED_UIPANEL_MARKER.equals(key))
              {
                  return _component.isOamVfFacetCreatedUIPanel();
              }
              // The most common call to this method comes from UIComponent.isCompositeComponent()
              // to reduce the impact. This is better than two lookups, once over property descriptor map
              // and the other one from the underlying map.
              if (Resource.COMPONENT_RESOURCE_KEY.length() == keyLength &&
                  Resource.COMPONENT_RESOURCE_KEY.equals(key))
              {
                  if (!_isCompositeComponentSet)
                  {
                      // Note we are not setting _isCompositeComponentSet, because when the component tree is built
                      // using JSF 1.2 state saving, PostAddToViewEvent is propagated and the component is check 
                      // if is a composite component, but the state is not restored, so the check return always
                      // false. A check for processing events was added to prevent that scenario, but anyway that 
                      // makes invalid set _isCompositeComponentSet to true on this location.
                      _isCompositeComponent = getUnderlyingMap().containsKey(Resource.COMPONENT_RESOURCE_KEY);
                  }
                  return _isCompositeComponent;
              }
          }
          return getPropertyDescriptor((String) key) == null ? getUnderlyingMap().containsKey(key) : false;
      }