Make possible to override an extension point definition
-------------------------------------------------------
Key: NXP-2288
URL: http://jira.nuxeo.org/browse/NXP-2288
Project: Nuxeo Enterprise Platform 5
Issue Type: New Feature
Reporter: Bogdan Stefanescu
Assignee: Thierry Delprat
There are cases when an extension point is too restrictive for the type of
objects that can be contributed by extensions.
For example let say you have a transformer extension that should be contributed
as
<transformer name="NAME" class="CLASS"/>
In some situations you may have complex transformers that need some
configurations so the syntax above is not enough.
For example you may have a wiki2html ytransformer that can be customized to use
0 or more filters and macro engines.
In that case you may want to define the transformer as:
<transformer name="wiki2html" class="org.nuxeo...WikiSerializer">
<filter pattern="NXP-[0-9]+" replacement="<a
href=\"http://jira.nuxeo.org/browse/$0\">$0</a>"/>
<macro name="freemarker" class="org.nuxeo..."/>
</transformer>
In this case you cannot contribute directly your extension to the transformer
extension point since the target extension point is
accepting objects described by an incompatible XML:
<transformer name="NAME" class="CLASS"/>
This new feature provides a solution to that problem.
You can now define a new extension point that is extending the "transformer"
extension point and change the type of the XML contribution it accepts.
The extended extension point will forward any contribution to the base
extension point.
Then you contribute your "extended" XML extension to the overriding extension
point (that will transform the XML into a java object and will forward the
registration of that object to the extended extension point)
This means the contributed java object should be of a compatible type with the
one expected by the original extension point.
You can see an example of the new extension point feature in
nuxeo-runtime-test/src/test/java/org/nuxeo/runtime/TestExtensionPoint.java
--
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators:
http://jira.nuxeo.org/secure/Administrators.jspa
-
For more information on JIRA, see: http://www.atlassian.com/software/jira
_______________________________________________
ECM-tickets mailing list
[email protected]
http://lists.nuxeo.com/mailman/listinfo/ecm-tickets