[
https://issues.apache.org/jira/browse/OAK-7688?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16571416#comment-16571416
]
Marcel Reutegger commented on OAK-7688:
---------------------------------------
See https://github.com/apache/jackrabbit-oak/compare/trunk...mreutegg:OAK-7688
for the proposed changes.
They introduce a {{ValueFactoryStub}}, which is a partial implementation of a
JCR ValueFactory. It works without a {{Root}} because it doesn't implement the
blob related methods that need a {{Root}}. A {{ValueFactoryStub}} is sufficient
as a replacement for the static method usages and at the same time acts as a
base class for the {{ValueFactoryImpl}}. Both classes already come with support
for a {{BlobAccessProvider}}. Though, it is not yet wired. This should be done
in the context of OAK-7569.
The static methods are still there, but marked deprecated. There are no more
usages of those methods in Oak with the proposed changes. My preference is
actually to also remove the static methods on ValueFactoryImpl. The class is in
an exported OSGi package, but not versioned, which means the package is
considered Oak internal.
[~mduerig], WDYT?
> Replace usage of static ValueFactoryImpl methods
> ------------------------------------------------
>
> Key: OAK-7688
> URL: https://issues.apache.org/jira/browse/OAK-7688
> Project: Jackrabbit Oak
> Issue Type: Improvement
> Components: store-spi
> Reporter: Marcel Reutegger
> Assignee: Marcel Reutegger
> Priority: Minor
> Labels: technical_debt
> Fix For: 1.10
>
>
> The ValueFactoryImpl has a few static methods that are used to create a
> {{Value}} from a {{PropertyState}} or {{PropertyValue}}. Those methods should
> be refactored to make it easier to add a {{BlobAccessProvider}} for OAK-7569.
--
This message was sent by Atlassian JIRA
(v7.6.3#76005)