jackrabbit-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Lars Michele (JIRA)" <j...@apache.org>
Subject [jira] [Commented] (JCR-3206) JSR-283 support for RMI
Date Thu, 11 Oct 2012 20:45:02 GMT

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

Lars Michele commented on JCR-3206:

Hi Claus,
I doubt, that I could split the patch into smaller patches. The problem lies in the caching
I added to the LocalAdapterFactory/ClientAdapterFactory and RemoteAdapterFactory/ServerAdapterFactory.
The other changes rely on this essential part. The current implementation always returns a
new RemoteStub for every access to a remote method. This means, one can execute getSession()
on a node and always create a new ServerSession as adapter which gets registered in the RMI
registry. Then a ClientSession is created for this "new" RemoteStub.
The cache on the server allows the reuse of already available remote stubs, so only the first
access creates a remote stub. On the client side a client object is only created, if it is
not already present in the cache. One big trick is the use of ReferenceIdentityMap for caching
Jackrabbit objects, because not all of them implement a meanigful hashcode method. On the
other hand, mapping remote stubs to Jackrabbit objects must be equals based to get the right
results for remote stubs. If this rudimentary cache implementation is ok, the rest of the
changes is not really a big deal. Just interfaces, server adapters for the jackrabbit objects,
client adapters for the remote stubs.
I hope this little description helps, but if this is not enough, I could call you and we could
walk through the changes together :-)
> JSR-283 support for RMI
> -----------------------
>                 Key: JCR-3206
>                 URL: https://issues.apache.org/jira/browse/JCR-3206
>             Project: Jackrabbit Content Repository
>          Issue Type: New Feature
>          Components: jackrabbit-jcr-rmi
>    Affects Versions: 2.3
>            Reporter: Claus Köll
>         Attachments: jackrabbit.diff, jackrabbit-jcr-rmi-ntm-ac-ej.patch
> We have the JCRRMI-26 Issue for the missing JSR-283 support.
> As we do no more use the Jira Project JCRRMI i would like to create a new Issue for that
feature request.

This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira

View raw message