public void execute(TransformerImpl transformer) throws TransformerException
  {

    transformer.pushCurrentTemplateRuleIsNull(false);

    boolean pushMode = false;

    try
    {
      // %REVIEW% Do we need this check??
      //      if (null != sourceNode)
      //      {
      // boolean needToTurnOffInfiniteLoopCheck = false;
      QName mode = transformer.getMode();

      if (!m_isDefaultTemplate)
      {
        if (((null == mode) && (null != m_mode))
                || ((null != mode) &&!mode.equals(m_mode)))
        {
          pushMode = true;

          transformer.pushMode(m_mode);
        }
      }

      transformSelectedNodes(transformer);
    }
    finally
    {
      if (pushMode)
        transformer.popMode();

      transformer.popCurrentTemplateRuleIsNull();
    }
  }
public void execute ( TransformerImpl transformer ) throws TransformerException { transformer . pushCurrentTemplateRuleIsNull ( false ) ; boolean pushMode = false ; try { QName mode = transformer . getMode ( ) ; if ( ! m_isDefaultTemplate ) { if ( ( ( null == mode ) && ( null != m_mode ) ) || ( ( null != mode ) && ! mode . equals ( m_mode ) ) ) { pushMode = true ; transformer . pushMode ( m_mode ) ; } } transformSelectedNodes ( transformer ) ; } finally { if ( pushMode ) transformer . popMode ( ) ; transformer . popCurrentTemplateRuleIsNull ( ) ; } }
Apply the context node to the matching templates.
@see <a href="http://www.w3.org/TR/xslt#section-Applying-Template-Rules">section-Applying-Template-Rules in XSLT Specification</a>

@param transformer non-null reference to the the current transform-time state.

@throws TransformerException