Martin,

Our application does the same thing (in fact it needs to support both
"soft deleted" nodes and "hidden" nodes [and actually has two different
kinds of "hidden", too - don't ask :-)!]). Although we're not using
webdav as an interface, it's something I've thought about for the
future. 

My idea is that rather than try to build support for such
application-specific logic into jackrabbit / JCR, which I would
definitely oppose, how about building a hook either into jackrabbit
itself or into the webdav code that allows a custom filter to be applied
when getting child nodes or properties. This could allow support for
different kinds of similar behaviour without breaking the main benefit
of jackrabbit IMO, which is that it doesn't try to do too much, and so
does what it does well.

Miro

-----Original Message-----
From: Martin Perez [mailto:[EMAIL PROTECTED] 
Sent: 04 February 2006 10:08
To: jackrabbit-dev@incubator.apache.org
Subject: Support for hidden nodes

Hello.

Please, forgive me if this topic was discussed before. I searched on the
mailing list but I did not find any references.

Currently, in our product, we were discussing about the implementation
of
logical deletes. We are interesting in offering support for logical
delete
operations for documents. This could be very necessary in some scenarios
due
to legal issues. For example, in Europe some document types (for example
invoices) cannot be deleted and must be maintained on their storage for
several years. So, when an user deletes this documents the system should
be
able to keep a copy. Well, this is only the background.

We have implemented this in a very simple way: adding an active property
to
all trackable nodes. Pretty easy. But now we have a problem. Our system,
successfully hides "deleted" documents to the users, but when an user
will
try to use the WebDAV browser (we are using the contrib module) he will
see
the "deleted" documents, because for Jackrabbit they are normal nodes.

So, my question is, does it have any sense to allow to tag nodes as
hidden
on a Jackrabbit repository?

I know that is something that is not reflected on the spec. Anyways, do
you
think is an interesting feature for futurible releases? Also, what about
supporting logical delete operations?

Martin

Reply via email to