Details
-
Type:
Improvement
-
Status:
Resolved
-
Priority:
Major
-
Resolution: Fixed
-
Affects Version/s: 0.5
-
Fix Version/s: 0.6
-
Component/s: yfaces-core
-
Labels:None
-
Number of attachments :
Description
YComponentInfo and Facelet are of different nature.
However the similarity is that both are representing a piece of the view (xhtml)
Facelet autodetect changes.
YComponentInfo doesn't.
In case YComponentInfo would do so, it could be used much better
Currently it's used for on the fly validation and default component instantiation (via ID)
But every YCOmponentInfo instance which is requested from the YComponentRegistry
doesn't recognize xhtml changes.
HtmlYComponent avoids this lack by creating a new YComponentInfo everytime.
In case reloading would be working many members would be useable e.g.:
YComponentInfo#getDefaultImplementation
YComponentInfo#getWriteableAttributes
YComponentRegistry collects YComponents during startup.
FaceletFactory creates Facelets on demand.
An own FaceletImplementation would resolve many things:
Assuming an additional (besides DefaultFacelet) YComponentFacelet
YComponentInfo and YComponentRegistry are legacy
changes of xhtml are managed by FaceletFactory
when xhtml changes new Facelet gets created, otherwise old instance is used
when new YComponentFacelet gets created, verification is done (id, classes, etc etc)