docs: public List getFacesExtensionsFilterMappings()
      {
          if (_facesExtensionsFilterMappings != null)
          {
              return _facesExtensionsFilterMappings;
          }
  
          List tempExtensionsFilterMappings = new ArrayList();
          for (Iterator it = _filters.entrySet().iterator(); it.hasNext(); )
          {
              Map.Entry entry = (Map.Entry)it.next();
              String filterName = (String)entry.getKey();
              String filterClassName = (String)entry.getValue();
              
              if (!"org.apache.myfaces.component.html.util.ExtensionsFilter".equals(filterClassName) &&
                  !"org.apache.myfaces.webapp.filter.ExtensionsFilter".equals(filterClassName))
              {
                  // not an extensions filter
                  continue;
              }
              
              Class filterClass = org.apache.myfaces.shared.util.ClassUtils.simpleClassForName(filterClassName);
              List urlPatterns = (List)_filterMappings.get(filterName);
              if( urlPatterns != null )
              {
                  for (Iterator it2 = urlPatterns.iterator(); it2.hasNext(); )
                  {
                      String urlpattern = (String)it2.next();
                      tempExtensionsFilterMappings.add(new org.apache.myfaces.shared.webapp.webxml.FilterMapping(
                          filterName, filterClass, urlpattern));
                      if (log.isLoggable(Level.FINEST))
                      {
                          log.finest("adding mapping for filter + " + filterName + " urlpattern = " + urlpattern);
                      }
                  }
              }
          }
          
          //Expose to all threads
          _facesExtensionsFilterMappings = tempExtensionsFilterMappings;
          
          return _facesExtensionsFilterMappings;
      }