[
https://issues.apache.org/jira/browse/JCR-1865?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12750857#action_12750857
]
Thomas Mueller commented on JCR-1865:
-------------------------------------
> ManagedRepository mr = new
> ManagedRepositoryImpl(RepositoryConfig.create(...));
Your solution is not JCR 2.0 spec compliant. According to the spec, page 77,
creating a Repository object goes like this:
RepositoryFactory.getRepository(Map parameters).
ManagedRepositoryImpl is a class, not an interface. So the application would
become dependent on a specific class. The point about APIs is to use interfaces
if possible. Using classes directly in an application will again lead to
problems, such as if you want to use the same application remotely, against
another implementation, and so on.
Your solution doesn't include any access rights checks. How do you ensure only
authorized users create a new ManagedRepositoryImpl or call
getGarbageCollector? Let's say the 'configuration' (which is again a class and
not an interface) points to a remote repository.
> The advantage of this approach over adding things to JackrabbitSession is
> that access control to such admin features becomes a deployment issue
Sorry why would that be an advantage? For me that's a disadvantage: you could
not call garbage collection remotely for example.
> We won't need to extend the JCR access control mechanism with custom
> privileges like "garbage collection" or "repository shutdown".
So you would need to create another access control mechanism. Why, if we
already have one?
> 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.