At the moment we (Sakai) would might want to customze LoginModule and
WorkspaceAccessmanager and need to customize SecurityManager so that
we can get a custom DefaultAccessManager.
The difficulty is less that we cant replace these items as we already
customize the repository.xml, the problem is more that without putting
code in specific packages eg org.apache.jackrabbit.core we cant extend
the existing functionality in DefaultAccessManager.
So in our immediate use case, the need is 2 fold.
1) To have some of the core parts of org.apache.jackrabbit.core
exposed via provider interfaces and extendable classes.
2) To have some of that exported from the jackrabbit-server bundle or
another suitable bundle to make it possible to package the bundles in
a separate bundle.
At the moment, we have a big patch on the jackrabbit-server bundle,
which IMHO is not sustainable. I think this might really be an issue
for Jackrabbit rather than Sling. Happy to create a patch if it would
help explain the detail.
Ian
On 6 May 2009, at 10:33, Bertrand Delacretaz wrote:
Hi,
I'm trying to get an overview of the current issues related to
customizing an embedded Jackrabbit repository using Sling bundles. I
tried to find the info in our archives but I'm not quite sure what the
current status is.
In an ideal world, I think it should be possible to use separate
bundles to provide classes for all elements of the repository.xml
configuration that have a "class" attribute.
With the jackrabbit 1.5 repository.xml DTD, that would be the
FileSystem, SecurityManager, LoginModule, WorkspaceAccessManager,
PersistenceManager, SearchIndex, Journal, ISMLocking and DataStore.
Now, in practice we might not need all of these things to come from
separate bundles, as some customizations are not often needed.
Could people give a quick description of their use cases that require
customizing these things? Please also briefly indicate if/how that
works now.
The intention is to identify changes that we might need to make to the
Jackrabbit bundles to enable those customizations.
-Bertrand
[1] http://jackrabbit.apache.org/jackrabbit-configuration.html