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 "Julian Reschke (JIRA)" <ji...@apache.org> on 2018/07/11 09:45:00 UTC
[jira] [Commented] (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:comment-tabpanel&focusedCommentId=16539799#comment-16539799 ]
Julian Reschke commented on OAK-5430:
-------------------------------------
trunk: [r1778235|http://svn.apache.org/r1778235]
> 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
> Priority: Major
> Fix For: 1.5.18, 1.6.0
>
> 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
(v7.6.3#76005)