<html>
  <head>

    <meta http-equiv="content-type" content="text/html; charset=utf-8">
  </head>
  <body text="#000000" bgcolor="#FFFFFF">
    Hello rich faced devs!<br>
    <br>
    In reviewing a recent PR [1] for RF-13301:"
    <meta http-equiv="content-type" content="text/html; charset=utf-8">
    Favor use of Page Fragments in Framework Tests" [2] I've gotten a
    good chance to see page fragments in action.  I really like how they
    remove a much of the DOM setup of the integration tests.  A powerful
    abstraction indeed.<br>
    <br>
    However I'm a little concerned over some of the generic names we
    have in the page fragments API.  Consider the RichFacesTabPanel
    fragment [3] in the above PR.  It has methods (among others) with
    the following names:<br>
    <br>
    <meta http-equiv="content-type" content="text/html; charset=utf-8">
    * RichFacesTabPanel#getRootOfContainerElement() to return the
    content element of the TabPanel component<br>
    * RichFacesTabPanel#getSwitcherControllerElements() to get the
    headers of the parent Tab<br>
    <br>
    Both of these names are quite generic since they are inherited from
    a parent class that shared amongst all switchable components. 
    However, for both these methods the super method is abstract, so
    there is no shared implementation.  Can someone with more knowledge
    of the page fragments implementation explain the benefit of the
    method inheritance here?  IMO the abstraction leaves us with an
    unclear API which won't help adoption.<br>
    <br>
    If we can come to an agreement of how we can improve this, we can
    scan the remaining page fragments for methods that can benefit from
    a similar naming improvement.<br>
    <br>
    Also, while on the subject of page fragments, I noticed the javadoc
    for page fragments is not included in our generated javadoc.  This
    also will hurt adoption.  I've created a jira RF-13816 [4] to
    address including the javadoc for page fragments.  Please comment
    there if you feel they shouldn't be included.<br>
    <br>
    Cheers,<br>
    Brian Leathem<br>
    <br>
    [1] <a class="moz-txt-link-freetext" href="https://github.com/richfaces/richfaces/pull/108">https://github.com/richfaces/richfaces/pull/108</a><br>
    [2] <a class="moz-txt-link-freetext" href="https://issues.jboss.org/browse/RF-13301">https://issues.jboss.org/browse/RF-13301</a><br>
    [3]
<a class="moz-txt-link-freetext" href="https://github.com/richfaces/richfaces/blob/master/build/page-fragments/src/main/java/org/richfaces/fragment/tabPanel/RichFacesTabPanel.java">https://github.com/richfaces/richfaces/blob/master/build/page-fragments/src/main/java/org/richfaces/fragment/tabPanel/RichFacesTabPanel.java</a><br>
    [4] <a class="moz-txt-link-freetext" href="https://issues.jboss.org/browse/RF-13816">https://issues.jboss.org/browse/RF-13816</a><br>
  </body>
</html>