[
https://issues.apache.org/jira/browse/JCR-2301?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12753106#action_12753106
]
Michael Dürig commented on JCR-2301:
------------------------------------
Instead of using inheritance for parametrization of the parser I'd use
composition as explained above:
The parser already uses a builder (QNodeTypeDefinitionsBuilder) to build the
final representation. That is, the parser itself is rather independent of the
spi classes. The builder is not. I suggest to change things along the line of
class CompactNodeTypeDefReader {...}
to
class CompactNodeTypeDefReader<T> {...}
The constructor which now takes a QNodeTypeDefinitionsBuilder would then take a
NodeTypeDefinitionsBuilder<T> and getNodeTypeDefinitions() would return
List<T>.
Like this jcr-commons and spi-commons both need to provide a builder which can
be used with the parser. The parser itself can be reused amongst both modules.
> CND support in jackrabbit-jcr-commons
> -------------------------------------
>
> Key: JCR-2301
> URL: https://issues.apache.org/jira/browse/JCR-2301
> Project: Jackrabbit Content Repository
> Issue Type: New Feature
> Components: jackrabbit-jcr-commons, nodetype
> Reporter: Jukka Zitting
>
> It would be nice if the CND parsing functionality in spi-commons could be
> made available in jcr-commons for use by JCR clients that shouldn't have to
> know anything about the SPI.
--
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.