You are viewing a plain text version of this content. The canonical link for it is here.
Posted to oak-issues@jackrabbit.apache.org by "Chetan Mehrotra (JIRA)" <ji...@apache.org> on 2017/01/11 05:28:58 UTC
[jira] [Resolved] (OAK-5430) Provide an extension point in
DocumentNodeStore Journal support
[ https://issues.apache.org/jira/browse/OAK-5430?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Chetan Mehrotra resolved OAK-5430.
----------------------------------
Resolution: Fixed
Done with1778158
> Provide an extension point in DocumentNodeStore Journal support
> ---------------------------------------------------------------
>
> Key: OAK-5430
> URL: https://issues.apache.org/jira/browse/OAK-5430
> Project: Jackrabbit Oak
> Issue Type: Technical task
> Components: documentmk
> Reporter: Chetan Mehrotra
> Assignee: Chetan Mehrotra
> Fix For: 1.5.18, 1.6
>
> Attachments: OAK-5430-v1.diff
>
>
> As discussed in OAK-4808 B1 I would like to expose an extension point in form of SPI in DocumentNodeStore Journal handling.
> Each component which needs to add a custom property to {{JournalEntry}} would provide a {{JournalPropertyService}}. This service would provide a {{JournalPropertyBuilder}} which would be used to accumulate the {{JournalProperty}}
> # For background write - {{JournalProperty}} would be read from {{CommitInfo}} and would be added to the builder. Upon background write cycle the builder would provide a string representation of the builder state which would be save as a property in {{JournalEntry}}
> # For background read - {{DocumentNodeStore}} would create builder for each service and would update them from string property value which are read from the JournalEntry
> {{DocumentNodeStore}} would lookup all {{JournalPropertyService}} via {{JournalPropertyServiceTracker}} and construct a {{JournalPropertyHandler}} which would manage the builder state
--
This message was sent by Atlassian JIRA
(v6.3.4#6332)