users@javaserverfaces-spec-public.java.net

[jsr344-experts mirror] [jsr344-experts] [1111-PassThoughElements] Additional work

From: Edward Burns <edward.burns_at_oracle.com>
Date: Wed, 27 Feb 2013 21:31:35 -0800

>>>>> On Wed, 27 Feb 2013 14:41:57 -0500, Andy Schwartz <andy.schwartz_at_oracle.com> said:

AS> Minor API issue that I ran into when attempting to build Trinidad/ADF
AS> Faces against JSF 2.2. (Yes, I am finally looking at 2.2.)

Your expert insight is always welcome, though my ability to apply it may
be limited due to the timing of its arrival.

[...]

AS> We should make the no-arg convenience method final and include the
AS> trivial implementation in UIComponent.

AS> This makes the role of these two methods clear: the boolean overload
AS> provides the implementation, and the no-arg overload is a trivial
AS> convenience method.

AS> We should probably swap the javadoc around so that the main
AS> documentation is on the boolean method. The javadoc for the no-arg
AS> method can be simplified to state that it is a convenience for
AS> getPassThroughAttributes(true).

AS> Let me know if I should file an issue for this. (Or if there is any
AS> disagreement over this API design pattern.)

Done. Can you please scan the API for other places that would benefit
from this treatemnt. We don't use final very often, and I wonder if
we'd benefit by using it more.

Andy, please check the log message.

M jsf-ri/src/main/java/com/sun/faces/facelets/tag/composite/BehaviorHolderWrapper.java

    Remove getPassThroughAttributes(), it's available on the parent. Andy
    was it safe to do this? I think so, but I could use your oversight.

M jsf-api/src/main/java/javax/faces/component/UIComponent.java
M jsf-api/src/main/java/javax/faces/component/UIComponentBase.java

    Per Andy Schwartz's recommendation, remove
    UIComponentBase.getPassThroughAttributes(), moving it to the
    superclass and making it final.

    Sending jsf-api/src/main/java/javax/faces/component/UIComponent.java
    Sending jsf-api/src/main/java/javax/faces/component/UIComponentBase.java
    Sending jsf-ri/src/main/java/com/sun/faces/facelets/tag/composite/BehaviorHolderWrapper.java
    Transmitting file data ...
    Committed revision 11667.


Thanks,

Ed
--