[ 
https://issues.apache.org/jira/browse/JCR-1865?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12750548#action_12750548
 ] 

Thomas Mueller commented on JCR-1865:
-------------------------------------

> By controlling access to the proposed ManagedRepository interface.

And how do you do that? For the admin session, getRepository() returns a 
ManagedRepositoryImpl, and for non-admin sessions, it returns RepositoryImpl? 
That sounds like a weird solution. Access rights are 'usually' bound to the 
user that is logged in (Repository.login()). This is true for the rest of 
Jackrabbit, and for other common APIs such as the JDBC API.

>  My point is that management operations like garbage collection, shutdown, 
> etc. should be outside the scope of normal client connections.

Why is that?

> This way we don't need to invent new access control privileges for such 
> operations.

So you want to have a completely different access rights mechanism? Why?

> > > Do we really need the MarkEventListener mechanism
> > Yes, we do, it's important.
> Why? 

I need it to do display the progress.  

> Could we achieve the same use case with a simpler API?

Not as far as I know.

> The current implementation can add an observation listener, and this needs to 
> be removed.

Could the listener rather be passed as an argument to mark()? 

The observation listener is an implementation detail of the garbage collector. 
The user of the API should have to deal with it.

> best balance

Sure! API design is hard, and it's always good if multiple people look at it.

> Add the Data Store to the Jackrabbit API
> ----------------------------------------
>
>                 Key: JCR-1865
>                 URL: https://issues.apache.org/jira/browse/JCR-1865
>             Project: Jackrabbit Content Repository
>          Issue Type: Improvement
>          Components: jackrabbit-core
>            Reporter: Thomas Mueller
>            Assignee: Thomas Mueller
>            Priority: Minor
>         Attachments: api.patch, api_2.patch, core.patch, core_2.patch
>
>
> Currently, the garbage collection is not part of the Jackrabbit API. However, 
> the data store garbage collection must be used once in a while if the data 
> store is enabled. I propose to add the required interfaces to the Jackrabbit 
> API. This will also allow to call garbage collection using RMI.

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.

Reply via email to