On Tue, Mar 18, 2008 at 9:54 AM, [EMAIL PROTECTED]
<[EMAIL PROTECTED]> wrote:
> Hi Andrew,
>
>  Andrew Robinson schrieb:
>
> > One major drawback to the javadoc annotation approach has been left
>  > out and that is attribute reuse. The maven-faces-plugin allows you to
>  > import XML fragments using XPath. So in Trinidad, onclick,
>  > onmouseover, onmouseout, etc. you can import one XML file and not have
>  > to re-define all these. But with the javadoc approach, you have to
>  > either one, try to hack the code to extend other classes, two have
>  > some weird interface usage to import these. Either way, the object
>  > hierarchy has to be hacked to get it to work.
>  >
>
>  Hmm..interesting. So trinidad has cases where a class X is not related
>  to A by inheritance, but does want to provide the same properties as A?
>
>  Java currently defines "implements" and "extends"; sounds like Trinidad
>  has invented a new OO concept, "emulates" :-).

No, it only imports certain attributes, not all of them. Take some
time to look at the trinidad-build project and how it works. It is
better to see than explain.

>
>  While I haven't analysed this carefully, I see no reason why there
>  couldn't be an extra annotation attribute:
>
>  /**
>   *  @mfp.component emulates="javax.faces.UIData" ...
>   */
>   class TrinidadData .. {...}
>
>  which would cause the plugin to look up the metadata for the
>  javax.faces.UIData component then simply copy all the property
>  definitions for that class into the metadata for the TrinidadData class.
>
>  Would that satisfy the trinidad requirement?

Nope, would definitely not work. It would have to be located outside
of a Java file

-Andrew

Reply via email to