jackrabbit-oak-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Jukka Zitting <jukka.zitt...@gmail.com>
Subject Re: svn commit: r1583285 - /jackrabbit/oak/trunk/oak-core/src/main/java/org/apache/jackrabbit/oak/plugins/value/ValueImpl.java
Date Mon, 31 Mar 2014 15:35:59 GMT
Hi,

On Mon, Mar 31, 2014 at 6:14 AM,  <mduerig@apache.org> wrote:
> +    @Override
> +    public String getContentIdentity() {
> +        return getBlob().getReference();
> +    }

This is a bit troublesome, as the getContentIdentity() contract
requires that "Once an identifier is available, it will never change
because values are immutable." The Blob.getReference() method (that's
based on the ReferenceBinary design) does not necessarily return such
a stable identifier (references can expire, etc.).

If we want to expose a stable content identifier like in
getContentIdentity(), we should extend the Blob interface accordingly
and have the underlying implementation return such a value if
available.

BR,

Jukka Zitting

Mime
View raw message