code: public Tag decorate(Tag tag)
      {
          Tag t = null;
          for (int i = 0; i < this.decorators.length; i++)
          {
              t = this.decorators[i].decorate(tag);
              if (t != null)
              {
                  return t;
              }
          }
          return tag;
      }
docs: Uses the chain of responsibility pattern to stop processing if any of the TagDecorators return a value other than
  null.
  
  @see javax.faces.view.facelets.TagDecorator#decorate(javax.faces.view.facelets.Tag)