jackrabbit-oak-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Michael Dürig <mdue...@apache.org>
Subject Re: Semantics of MicroKernel.getNodes()
Date Wed, 14 Mar 2012 15:47:02 GMT

On 14.3.12 14:54, Julian Reschke wrote:
> Hi there,
> I'm looking at MicroKernel.getNodes(), and I believe the semantics might
> perform non-optimal unless we get the property filtering right.
> A typical use case always is browsing a repository using a tree view.
> A tree view usually needs, given a node N:
> - all or a subset of all properties of node N
> - the set of child node names, and for each of these child nodes, a
> predefined set of properties that will allow the caller to decorate the
> node properly -- such as whether it's a container, and maybe the type).

Couldn't we use the filter parameter for such cases. AFAIK the parameter 
is currently in the API only and its semantics is not defined yet. So if 
we come up with the right semantics for it, wouldn't that work?

> Another problem is the String-fits-all return type; it would make it
> impossible to implement streaming of the result to the client; which
> will make the behavior for large collections non-optimal (the caller
> needs to wait for the complete JSON string to be ready before it can
> start forwarding information up the stack).

Right. It was decided very early in the process to make the API string 
based in order to be language agnostic (i.e. leave the option for a C 
implementation). However we should really re-evaluate this requirement 
and its consequences taking into account the current situation.


> Best regards, Julian

View raw message