jackrabbit-oak-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Stefan Guggisberg (JIRA)" <j...@apache.org>
Subject [jira] [Commented] (OAK-75) specify format and semantics of 'filter' parameter in MicroKernel API
Date Thu, 03 May 2012 14:34:49 GMT

    [ https://issues.apache.org/jira/browse/OAK-75?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13267469#comment-13267469

Stefan Guggisberg commented on OAK-75:

> For the one getNodes method, the path is a parameter and could be set in the filter as
well. Could that lead to confusion?

my intention was to specify the 'path' filter on getJournal() and diff() only.

> I noticed getJournal supports a filter, but the related getRevisionHistory not yet. Would
it make sense to add the filter to getRevisionHistory as well?

the original idea was to support 'filtering' the 'tree data' (either json or diff) returned
by getJournal, diff and getNodes. since getRevisionHistory doesn't return tree data i didn't
add a filter parameter. 

> If we support path filtering in getJournal (I hope we do), should we support it in waitForCommit
and getHeadRevision as well?

same rationale as for not supporting filters on getRevisionHistory.

but i see your point. i didn't consider supporting path-based filtering on waitForCommit and
getHeadRevision. i wanted to keep the proposal simple and i am afraid that it will add considerable
complexity to the API semantics. 

OTOH if there's a real use case in oak-core for such a functionality which justifies the added
complexity of the MK API i am open to extending the current API. 
> specify format and semantics of 'filter' parameter in MicroKernel API
> ---------------------------------------------------------------------
>                 Key: OAK-75
>                 URL: https://issues.apache.org/jira/browse/OAK-75
>             Project: Jackrabbit Oak
>          Issue Type: New Feature
>          Components: mk
>            Reporter: Stefan Guggisberg
> the following MicroKernel methods contain a 'filter' string parameter:
> - getJournal
> - diff
> - getNodes
> through the filter an API client could e.g. specify:
> - special 'meta' properties to be included (e.g. ":hash")
> - glob patterns on the names of properties/child nodes to be included/excluded
> - path filter (for getJournal and diff)
> format/detailed semantics TBD, here's an initial proposal (json):
> {code} 
> {
>   "path" : "/some/path",
>   "incl" : [ ":hash", "*" ],
>   "excl" : [ "tmp*" ]
> }
> {code} 
> name filter patterns should ideally be the same 
> format as specified for JCR Node.getNodes/getProperties.

This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators: https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira


View raw message