You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@jackrabbit.apache.org by ck...@apache.org on 2012/08/27 07:41:47 UTC

svn commit: r1377571 [1/2] - in /jackrabbit/trunk/jackrabbit-jcr-rmi: ./ src/main/java/org/apache/jackrabbit/rmi/client/ src/main/java/org/apache/jackrabbit/rmi/client/iterator/ src/main/java/org/apache/jackrabbit/rmi/observation/ src/main/java/org/apa...

Author: ckoell
Date: Mon Aug 27 05:41:46 2012
New Revision: 1377571

URL: http://svn.apache.org/viewvc?rev=1377571&view=rev
Log:
JCR-3206 JSR-283 support for RMI / Implementation of the missing versioning parts

Modified:
    jackrabbit/trunk/jackrabbit-jcr-rmi/pom.xml
    jackrabbit/trunk/jackrabbit-jcr-rmi/src/main/java/org/apache/jackrabbit/rmi/client/ClientAdapterFactory.java
    jackrabbit/trunk/jackrabbit-jcr-rmi/src/main/java/org/apache/jackrabbit/rmi/client/ClientQuery.java
    jackrabbit/trunk/jackrabbit-jcr-rmi/src/main/java/org/apache/jackrabbit/rmi/client/ClientQueryResult.java
    jackrabbit/trunk/jackrabbit-jcr-rmi/src/main/java/org/apache/jackrabbit/rmi/client/ClientRow.java
    jackrabbit/trunk/jackrabbit-jcr-rmi/src/main/java/org/apache/jackrabbit/rmi/client/ClientVersion.java
    jackrabbit/trunk/jackrabbit-jcr-rmi/src/main/java/org/apache/jackrabbit/rmi/client/ClientVersionHistory.java
    jackrabbit/trunk/jackrabbit-jcr-rmi/src/main/java/org/apache/jackrabbit/rmi/client/ClientVersionManager.java
    jackrabbit/trunk/jackrabbit-jcr-rmi/src/main/java/org/apache/jackrabbit/rmi/client/ClientWorkspace.java
    jackrabbit/trunk/jackrabbit-jcr-rmi/src/main/java/org/apache/jackrabbit/rmi/client/LocalAdapterFactory.java
    jackrabbit/trunk/jackrabbit-jcr-rmi/src/main/java/org/apache/jackrabbit/rmi/client/iterator/ClientRowIterator.java
    jackrabbit/trunk/jackrabbit-jcr-rmi/src/main/java/org/apache/jackrabbit/rmi/observation/ClientEventPoll.java
    jackrabbit/trunk/jackrabbit-jcr-rmi/src/main/java/org/apache/jackrabbit/rmi/remote/RemoteEventCollection.java
    jackrabbit/trunk/jackrabbit-jcr-rmi/src/main/java/org/apache/jackrabbit/rmi/remote/RemoteQuery.java
    jackrabbit/trunk/jackrabbit-jcr-rmi/src/main/java/org/apache/jackrabbit/rmi/remote/RemoteQueryResult.java
    jackrabbit/trunk/jackrabbit-jcr-rmi/src/main/java/org/apache/jackrabbit/rmi/remote/RemoteVersion.java
    jackrabbit/trunk/jackrabbit-jcr-rmi/src/main/java/org/apache/jackrabbit/rmi/remote/RemoteVersionHistory.java
    jackrabbit/trunk/jackrabbit-jcr-rmi/src/main/java/org/apache/jackrabbit/rmi/remote/RemoteVersionManager.java
    jackrabbit/trunk/jackrabbit-jcr-rmi/src/main/java/org/apache/jackrabbit/rmi/server/RemoteAdapterFactory.java
    jackrabbit/trunk/jackrabbit-jcr-rmi/src/main/java/org/apache/jackrabbit/rmi/server/ServerAdapterFactory.java
    jackrabbit/trunk/jackrabbit-jcr-rmi/src/main/java/org/apache/jackrabbit/rmi/server/ServerEventCollection.java
    jackrabbit/trunk/jackrabbit-jcr-rmi/src/main/java/org/apache/jackrabbit/rmi/server/ServerObservationManager.java
    jackrabbit/trunk/jackrabbit-jcr-rmi/src/main/java/org/apache/jackrabbit/rmi/server/ServerVersion.java
    jackrabbit/trunk/jackrabbit-jcr-rmi/src/main/java/org/apache/jackrabbit/rmi/server/ServerVersionHistory.java
    jackrabbit/trunk/jackrabbit-jcr-rmi/src/main/java/org/apache/jackrabbit/rmi/server/ServerVersionManager.java
    jackrabbit/trunk/jackrabbit-jcr-rmi/src/main/java/org/apache/jackrabbit/rmi/server/ServerWorkspace.java

Modified: jackrabbit/trunk/jackrabbit-jcr-rmi/pom.xml
URL: http://svn.apache.org/viewvc/jackrabbit/trunk/jackrabbit-jcr-rmi/pom.xml?rev=1377571&r1=1377570&r2=1377571&view=diff
==============================================================================
--- jackrabbit/trunk/jackrabbit-jcr-rmi/pom.xml (original)
+++ jackrabbit/trunk/jackrabbit-jcr-rmi/pom.xml Mon Aug 27 05:41:46 2012
@@ -151,13 +151,13 @@ org.apache.jackrabbit.test.api.SetValueV
 
 org.apache.jackrabbit.test.api.NameTest#testExpandedNameValue
 org.apache.jackrabbit.test.api.NameTest#testExpandedNameValueProperty
+
 org.apache.jackrabbit.test.api.NodeRemoveMixinTest#testNotAssigned
 org.apache.jackrabbit.test.api.ValueFactoryTest#testValueFormatException
-org.apache.jackrabbit.test.api.version.WorkspaceRestoreTest#testWorkspaceRestoreWithParent
-org.apache.jackrabbit.test.api.version.WorkspaceRestoreTest#testWorkspaceRestoreWithParentJcr2
 
 org.apache.jackrabbit.test.api.GetWeakReferencesTest#testMultiValues
 org.apache.jackrabbit.test.api.GetWeakReferencesTest#testSingleValue
+
 org.apache.jackrabbit.test.api.nodetype.NodeTypeCreationTest#testEmptyNodeDefinitionTemplate
 org.apache.jackrabbit.test.api.nodetype.NodeTypeCreationTest#testEmptyNodeTypeTemplate
 org.apache.jackrabbit.test.api.nodetype.NodeTypeCreationTest#testEmptyPropertyDefinitionTemplate
@@ -170,40 +170,14 @@ org.apache.jackrabbit.test.api.nodetype.
 org.apache.jackrabbit.test.api.nodetype.NodeTypeCreationTest#testRegisterNodeTypes
 org.apache.jackrabbit.test.api.nodetype.NodeTypeCreationTest#testResidualNames
 org.apache.jackrabbit.test.api.nodetype.NodeTypeCreationTest#testSetDefaultValues
-org.apache.jackrabbit.test.api.nodetype.NodeTypeTest#testGetDeclaredSubtypes
-org.apache.jackrabbit.test.api.nodetype.NodeTypeTest#testGetDeclaredSupertypes
-org.apache.jackrabbit.test.api.observation.EventJournalTest#testEventType
-org.apache.jackrabbit.test.api.observation.EventJournalTest#testIsDeepFalse
-org.apache.jackrabbit.test.api.observation.EventJournalTest#testIsDeepTrue
-org.apache.jackrabbit.test.api.observation.EventJournalTest#testLiveJournal
-org.apache.jackrabbit.test.api.observation.EventJournalTest#testNodeType
-org.apache.jackrabbit.test.api.observation.EventJournalTest#testPath
-org.apache.jackrabbit.test.api.observation.EventJournalTest#testSkipTo
-org.apache.jackrabbit.test.api.observation.EventJournalTest#testSkipToNow
-org.apache.jackrabbit.test.api.observation.EventJournalTest#testUserData
-org.apache.jackrabbit.test.api.observation.EventJournalTest#testUUID
-org.apache.jackrabbit.test.api.observation.EventJournalTest#testWorkspaceSeparation
-org.apache.jackrabbit.test.api.observation.GetDateTest#testLinearTime
-org.apache.jackrabbit.test.api.observation.GetIdentifierTest#testNodeAdded
-org.apache.jackrabbit.test.api.observation.GetIdentifierTest#testNodeMoved
-org.apache.jackrabbit.test.api.observation.GetIdentifierTest#testNodeRemoved
-org.apache.jackrabbit.test.api.observation.GetIdentifierTest#testPropertyAdded
-org.apache.jackrabbit.test.api.observation.GetIdentifierTest#testPropertyChanged
-org.apache.jackrabbit.test.api.observation.GetIdentifierTest#testPropertyRemoved
-org.apache.jackrabbit.test.api.observation.GetInfoTest#testNodeAdded
-org.apache.jackrabbit.test.api.observation.GetInfoTest#testNodeRemoved
-org.apache.jackrabbit.test.api.observation.GetInfoTest#testPropertyAdded
+
 org.apache.jackrabbit.test.api.observation.GetUserDataTest#testSave
 org.apache.jackrabbit.test.api.observation.GetUserDataTest#testVersioning
 org.apache.jackrabbit.test.api.observation.GetUserDataTest#testWorkspaceOperation
-org.apache.jackrabbit.test.api.observation.NodeMovedTest#testMoveNode
-org.apache.jackrabbit.test.api.observation.NodeMovedTest#testMoveTree
-org.apache.jackrabbit.test.api.observation.NodeMovedTest#testMoveWithRemove
-org.apache.jackrabbit.test.api.observation.NodeReorderTest#testNodeReorder
 org.apache.jackrabbit.test.api.observation.NodeReorderTest#testNodeReorderMove
-org.apache.jackrabbit.test.api.observation.NodeReorderTest#testNodeReorderSameName
-org.apache.jackrabbit.test.api.observation.NodeReorderTest#testNodeReorderSameNameWithRemove
+
 org.apache.jackrabbit.test.api.PathTest#testResolvedIdentifierBasedPropertyValue
+
 org.apache.jackrabbit.test.api.query.CreateQueryTest#testUnknownQueryLanguage
 org.apache.jackrabbit.test.api.query.DerefQueryLevel1Test#testDerefMultiPropWithNodeStar
 org.apache.jackrabbit.test.api.query.DerefQueryLevel1Test#testDerefMultiPropWithNodeTest
@@ -484,129 +458,22 @@ org.apache.jackrabbit.test.api.query.XPa
 org.apache.jackrabbit.test.api.query.XPathQueryLevel2Test#testPathColumn
 org.apache.jackrabbit.test.api.query.XPathQueryLevel2Test#testRange
 org.apache.jackrabbit.test.api.query.XPathQueryLevel2Test#testScoreColumn
+
 org.apache.jackrabbit.test.api.security.AccessControlPolicyTest#testSetIllegalPolicy
 org.apache.jackrabbit.test.api.security.RSessionAccessControlPolicyTest#testSetInvalidPolicy
+
 org.apache.jackrabbit.test.api.SerializationTest#testLockExceptionSessionWithHandler
 org.apache.jackrabbit.test.api.SerializationTest#testLockExceptionWorkspaceWithHandler
 org.apache.jackrabbit.test.api.SerializationTest#testVersioningExceptionFileChildSessionContentHandler
 org.apache.jackrabbit.test.api.SerializationTest#testVersioningExceptionFileChildWorkspaceContentHandler
 org.apache.jackrabbit.test.api.SerializationTest#testVersioningExceptionFileParentSessionContentHandler
 org.apache.jackrabbit.test.api.SerializationTest#testVersioningExceptionFileParentWorkspaceContentHandler
+
 org.apache.jackrabbit.test.api.SessionTest#testHasCapability
-org.apache.jackrabbit.test.api.version.ActivitiesTest#testActivitiesPath
-org.apache.jackrabbit.test.api.version.ActivitiesTest#testActivitiesRelation
-org.apache.jackrabbit.test.api.version.ActivitiesTest#testActivitiesRelationWithCheckpoint
-org.apache.jackrabbit.test.api.version.ActivitiesTest#testCreateRemoveActivity
-org.apache.jackrabbit.test.api.version.ActivitiesTest#testSetGetActivity
-org.apache.jackrabbit.test.api.version.ConfigurationsTest#testCreateConfigWithBaseline
-org.apache.jackrabbit.test.api.version.ConfigurationsTest#testRestoreBaseline
+
 org.apache.jackrabbit.test.api.version.CopyTest#testCopy
-org.apache.jackrabbit.test.api.version.GetPredecessorsTest#testGetLinearPredecessorSuccessor
-org.apache.jackrabbit.test.api.version.GetVersionableUUIDTest#testGetVersionableIdentifier
-org.apache.jackrabbit.test.api.version.MergeActivityTest#testMergeActivity
-org.apache.jackrabbit.test.api.version.MergeCancelMergeTest#testMergeNodeCancelMergeJcr2
-org.apache.jackrabbit.test.api.version.MergeDoneMergeTest#testMergeNodeDoneMergeJcr2
-org.apache.jackrabbit.test.api.version.OnParentVersionComputeTest#testRestorePropJcr2
-org.apache.jackrabbit.test.api.version.OnParentVersionCopyTest#testRestoreNodeJcr2
-org.apache.jackrabbit.test.api.version.OnParentVersionIgnoreTest#testRestoreNodeJcr2
-org.apache.jackrabbit.test.api.version.OnParentVersionIgnoreTest#testRestorePropJcr2
-org.apache.jackrabbit.test.api.version.OnParentVersionInitializeTest#testRestorePropJcr2
-org.apache.jackrabbit.test.api.version.RestoreTest#testRestoreChild1Jcr2
-org.apache.jackrabbit.test.api.version.RestoreTest#testRestoreChild1Jcr2_2
-org.apache.jackrabbit.test.api.version.RestoreTest#testRestoreChild1Jcr2_4
-org.apache.jackrabbit.test.api.version.RestoreTest#testRestoreCorrectPropertyJcr2
-org.apache.jackrabbit.test.api.version.RestoreTest#testRestoreCorrectPropertyJcr2_2
-org.apache.jackrabbit.test.api.version.RestoreTest#testRestoreCorrectPropertyJcr2_4
-org.apache.jackrabbit.test.api.version.RestoreTest#testRestoreInvalidVersionJcr2
-org.apache.jackrabbit.test.api.version.RestoreTest#testRestoreNameJcr2
-org.apache.jackrabbit.test.api.version.RestoreTest#testRestoreOnCheckedInNodeJcr2_1
-org.apache.jackrabbit.test.api.version.RestoreTest#testRestoreOnCheckedInNodeJcr2_2
-org.apache.jackrabbit.test.api.version.RestoreTest#testRestoreOnCheckedInNodeJcr2_4
-org.apache.jackrabbit.test.api.version.RestoreTest#testRestoreOnCheckedOutNodeJcr2
-org.apache.jackrabbit.test.api.version.RestoreTest#testRestoreOnCheckedOutNodeJcr2_2
-org.apache.jackrabbit.test.api.version.RestoreTest#testRestoreOnCheckedOutNodeJcr2_4
-org.apache.jackrabbit.test.api.version.RestoreTest#testRestoreOrder2Jcr2
-org.apache.jackrabbit.test.api.version.RestoreTest#testRestoreOrder2Jcr2_2
-org.apache.jackrabbit.test.api.version.RestoreTest#testRestoreOrder2Jcr2_3
-org.apache.jackrabbit.test.api.version.RestoreTest#testRestoreOrder2Jcr2_4
-org.apache.jackrabbit.test.api.version.RestoreTest#testRestoreOrderJcr2
-org.apache.jackrabbit.test.api.version.RestoreTest#testRestoreOrderJcr2_2
-org.apache.jackrabbit.test.api.version.RestoreTest#testRestoreOrderJcr2_4
-org.apache.jackrabbit.test.api.version.RestoreTest#testRestoreRemovedJcr2
-org.apache.jackrabbit.test.api.version.RestoreTest#testRestoreRootVersionFailJcr2
-org.apache.jackrabbit.test.api.version.RestoreTest#testRestoreSetsBaseVersionJcr2
-org.apache.jackrabbit.test.api.version.RestoreTest#testRestoreSetsBaseVersionJcr2_2
-org.apache.jackrabbit.test.api.version.RestoreTest#testRestoreSetsBaseVersionJcr2_4
-org.apache.jackrabbit.test.api.version.RestoreTest#testRestoreSetsIsCheckedOutToFalseJcr2
-org.apache.jackrabbit.test.api.version.RestoreTest#testRestoreSetsIsCheckedOutToFalseJcr2_2
-org.apache.jackrabbit.test.api.version.RestoreTest#testRestoreSetsIsCheckedOutToFalseJcr2_4
-org.apache.jackrabbit.test.api.version.RestoreTest#testRestoreWithInvalidVersionJcr2
-org.apache.jackrabbit.test.api.version.RestoreTest#testRestoreWithPendingChangesJcr2
-org.apache.jackrabbit.test.api.version.RestoreTest#testRestoreWithPendingChangesJcr2_2
-org.apache.jackrabbit.test.api.version.RestoreTest#testRestoreWithPendingChangesJcr2_4
-org.apache.jackrabbit.test.api.version.RestoreTest#testRestoreWithUUIDConflictJcr2
-org.apache.jackrabbit.test.api.version.RestoreTest#testRestoreWithUUIDConflictJcr2_2
-org.apache.jackrabbit.test.api.version.RestoreTest#testRestoreWithUUIDConflictJcr2_4
-org.apache.jackrabbit.test.api.version.simple.FrozenNodeTest#testFrozenChildNodeNodeType
-org.apache.jackrabbit.test.api.version.simple.FrozenNodeTest#testFrozenChildNodeType
-org.apache.jackrabbit.test.api.version.simple.FrozenNodeTest#testFrozenChildNodeUUUID
-org.apache.jackrabbit.test.api.version.simple.FrozenNodeTest#testFrozenChildUUUID
-org.apache.jackrabbit.test.api.version.simple.FrozenNodeTest#testFrozenNodeNodeType
-org.apache.jackrabbit.test.api.version.simple.FrozenNodeTest#testFrozenNodeType
-org.apache.jackrabbit.test.api.version.simple.FrozenNodeTest#testFrozenNodeUUUID
-org.apache.jackrabbit.test.api.version.simple.FrozenNodeTest#testFrozenUUUID
-org.apache.jackrabbit.test.api.version.simple.RestoreTest#testLinearVersions
-org.apache.jackrabbit.test.api.version.simple.RestoreTest#testLinearVersionsJcr2
-org.apache.jackrabbit.test.api.version.simple.RestoreTest#testLinearVersionsJcr2_2
-org.apache.jackrabbit.test.api.version.simple.RestoreTest#testLinearVersionsJcr2_3
-org.apache.jackrabbit.test.api.version.simple.RestoreTest#testLinearVersionsJcr2_4
-org.apache.jackrabbit.test.api.version.simple.RestoreTest#testRestoreChild1Jcr2
-org.apache.jackrabbit.test.api.version.simple.RestoreTest#testRestoreChild1Jcr2_2
-org.apache.jackrabbit.test.api.version.simple.RestoreTest#testRestoreChild1Jcr2_4
-org.apache.jackrabbit.test.api.version.simple.RestoreTest#testRestoreCorrectPropertyJcr2
-org.apache.jackrabbit.test.api.version.simple.RestoreTest#testRestoreCorrectPropertyJcr2_2
-org.apache.jackrabbit.test.api.version.simple.RestoreTest#testRestoreCorrectPropertyJcr2_4
-org.apache.jackrabbit.test.api.version.simple.RestoreTest#testRestoreInvalidVersionJcr2
-org.apache.jackrabbit.test.api.version.simple.RestoreTest#testRestoreNameJcr2
-org.apache.jackrabbit.test.api.version.simple.RestoreTest#testRestoreOnCheckedInNodeJcr2_1
-org.apache.jackrabbit.test.api.version.simple.RestoreTest#testRestoreOnCheckedInNodeJcr2_2
-org.apache.jackrabbit.test.api.version.simple.RestoreTest#testRestoreOnCheckedInNodeJcr2_4
-org.apache.jackrabbit.test.api.version.simple.RestoreTest#testRestoreOnCheckedOutNodeJcr2
-org.apache.jackrabbit.test.api.version.simple.RestoreTest#testRestoreOnCheckedOutNodeJcr2_2
-org.apache.jackrabbit.test.api.version.simple.RestoreTest#testRestoreOnCheckedOutNodeJcr2_4
-org.apache.jackrabbit.test.api.version.simple.RestoreTest#testRestoreOrder2Jcr2
-org.apache.jackrabbit.test.api.version.simple.RestoreTest#testRestoreOrder2Jcr2_2
-org.apache.jackrabbit.test.api.version.simple.RestoreTest#testRestoreOrder2Jcr2_3
-org.apache.jackrabbit.test.api.version.simple.RestoreTest#testRestoreOrder2Jcr2_4
-org.apache.jackrabbit.test.api.version.simple.RestoreTest#testRestoreOrderJcr2
-org.apache.jackrabbit.test.api.version.simple.RestoreTest#testRestoreOrderJcr2_2
-org.apache.jackrabbit.test.api.version.simple.RestoreTest#testRestoreOrderJcr2_4
-org.apache.jackrabbit.test.api.version.simple.RestoreTest#testRestoreRootVersionFailJcr2
-org.apache.jackrabbit.test.api.version.simple.RestoreTest#testRestoreSetsIsCheckedOutToFalseJcr2
-org.apache.jackrabbit.test.api.version.simple.RestoreTest#testRestoreSetsIsCheckedOutToFalseJcr2_2
-org.apache.jackrabbit.test.api.version.simple.RestoreTest#testRestoreSetsIsCheckedOutToFalseJcr2_4
-org.apache.jackrabbit.test.api.version.simple.RestoreTest#testRestoreWithInvalidVersionJcr2
-org.apache.jackrabbit.test.api.version.simple.RestoreTest#testRestoreWithPendingChangesJcr2
-org.apache.jackrabbit.test.api.version.simple.RestoreTest#testRestoreWithPendingChangesJcr2_2
-org.apache.jackrabbit.test.api.version.simple.RestoreTest#testRestoreWithPendingChangesJcr2_4
-org.apache.jackrabbit.test.api.version.simple.RestoreTest#testRestoreWithUUIDConflictJcr2
-org.apache.jackrabbit.test.api.version.simple.RestoreTest#testRestoreWithUUIDConflictJcr2_2
-org.apache.jackrabbit.test.api.version.simple.RestoreTest#testRestoreWithUUIDConflictJcr2_4
 org.apache.jackrabbit.test.api.version.VersionHistoryTest#testGetAllFrozenNodes
-org.apache.jackrabbit.test.api.version.VersionHistoryTest#testInitiallyGetAllLinearVersionsContainsTheRootAndTheBaseVersion
-org.apache.jackrabbit.test.api.version.VersionHistoryTest#testInitialNumberOfLinearVersions
-org.apache.jackrabbit.test.api.version.WorkspaceRestoreTest#testWorkspaceRestoreHasCorrespondingNode
-org.apache.jackrabbit.test.api.version.WorkspaceRestoreTest#testWorkspaceRestoreHasCorrespondingNodeJcr2
-org.apache.jackrabbit.test.api.version.WorkspaceRestoreTest#testWorkspaceRestoreOnCheckedInNode
-org.apache.jackrabbit.test.api.version.WorkspaceRestoreTest#testWorkspaceRestoreOnCheckedInNodeJcr2
-org.apache.jackrabbit.test.api.version.WorkspaceRestoreTest#testWorkspaceRestoreOnCheckedOutNode
-org.apache.jackrabbit.test.api.version.WorkspaceRestoreTest#testWorkspaceRestoreOnCheckedOutNodeJcr2
-org.apache.jackrabbit.test.api.version.WorkspaceRestoreTest#testWorkspaceRestoreWithPendingChanges
-org.apache.jackrabbit.test.api.version.WorkspaceRestoreTest#testWorkspaceRestoreWithPendingChangesJcr2
-org.apache.jackrabbit.test.api.version.WorkspaceRestoreTest#testWorkspaceRestoreWithRemoveExisting
-org.apache.jackrabbit.test.api.version.WorkspaceRestoreTest#testWorkspaceRestoreWithRemoveExistingJcr2
-org.apache.jackrabbit.test.api.version.WorkspaceRestoreTest#testWorkspaceRestoreWithUUIDConflict
-org.apache.jackrabbit.test.api.version.WorkspaceRestoreTest#testWorkspaceRestoreWithUUIDConflictJcr2
+
 org.apache.jackrabbit.test.api.security.AccessControlPolicyTest#testSetPolicy
 org.apache.jackrabbit.test.api.security.AccessControlPolicyTest#testSetAllPolicies
 org.apache.jackrabbit.test.api.security.AccessControlPolicyTest#testGetPolicyAfterSet

Modified: jackrabbit/trunk/jackrabbit-jcr-rmi/src/main/java/org/apache/jackrabbit/rmi/client/ClientAdapterFactory.java
URL: http://svn.apache.org/viewvc/jackrabbit/trunk/jackrabbit-jcr-rmi/src/main/java/org/apache/jackrabbit/rmi/client/ClientAdapterFactory.java?rev=1377571&r1=1377570&r2=1377571&view=diff
==============================================================================
--- jackrabbit/trunk/jackrabbit-jcr-rmi/src/main/java/org/apache/jackrabbit/rmi/client/ClientAdapterFactory.java (original)
+++ jackrabbit/trunk/jackrabbit-jcr-rmi/src/main/java/org/apache/jackrabbit/rmi/client/ClientAdapterFactory.java Mon Aug 27 05:41:46 2012
@@ -30,11 +30,11 @@ import javax.jcr.Session;
 import javax.jcr.Workspace;
 import javax.jcr.lock.Lock;
 import javax.jcr.lock.LockManager;
+import javax.jcr.nodetype.ItemDefinition;
+import javax.jcr.nodetype.NodeDefinition;
 import javax.jcr.nodetype.NodeType;
 import javax.jcr.nodetype.NodeTypeIterator;
 import javax.jcr.nodetype.NodeTypeManager;
-import javax.jcr.nodetype.ItemDefinition;
-import javax.jcr.nodetype.NodeDefinition;
 import javax.jcr.nodetype.PropertyDefinition;
 import javax.jcr.observation.ObservationManager;
 import javax.jcr.query.Query;
@@ -301,8 +301,8 @@ public class ClientAdapterFactory implem
      *
      * {@inheritDoc}
      */
-    public Row getRow(RemoteRow remote) {
-        return new ClientRow(remote);
+    public Row getRow(Session session, RemoteRow remote) {
+        return new ClientRow(session, remote, this);
     }
 
     /**
@@ -344,8 +344,8 @@ public class ClientAdapterFactory implem
      * Creates and returns a {@link ClientRowIterator} instance.
      * {@inheritDoc}
      */
-    public RowIterator getRowIterator(RemoteIterator remote) {
-        return new ClientRowIterator(remote, this);
+    public RowIterator getRowIterator(Session session, RemoteIterator remote) {
+        return new ClientRowIterator(session, remote, this);
     }
 
     public LockManager getLockManager(

Modified: jackrabbit/trunk/jackrabbit-jcr-rmi/src/main/java/org/apache/jackrabbit/rmi/client/ClientQuery.java
URL: http://svn.apache.org/viewvc/jackrabbit/trunk/jackrabbit-jcr-rmi/src/main/java/org/apache/jackrabbit/rmi/client/ClientQuery.java?rev=1377571&r1=1377570&r2=1377571&view=diff
==============================================================================
--- jackrabbit/trunk/jackrabbit-jcr-rmi/src/main/java/org/apache/jackrabbit/rmi/client/ClientQuery.java (original)
+++ jackrabbit/trunk/jackrabbit-jcr-rmi/src/main/java/org/apache/jackrabbit/rmi/client/ClientQuery.java Mon Aug 27 05:41:46 2012
@@ -21,7 +21,6 @@ import java.rmi.RemoteException;
 import javax.jcr.RepositoryException;
 import javax.jcr.Session;
 import javax.jcr.Node;
-import javax.jcr.UnsupportedRepositoryOperationException;
 import javax.jcr.Value;
 import javax.jcr.query.Query;
 import javax.jcr.query.QueryResult;
@@ -107,19 +106,38 @@ public class ClientQuery extends ClientO
     /** {@inheritDoc} */
     public void bindValue(String varName, Value value)
             throws RepositoryException {
-        throw new UnsupportedRepositoryOperationException("TODO: JCR-3206");
+        try {
+            remote.bindValue(varName, value);
+        } catch (RemoteException ex) {
+            throw new RemoteRepositoryException(ex);
+        }
     }
 
+    /** {@inheritDoc} */
     public String[] getBindVariableNames() throws RepositoryException {
-        throw new UnsupportedRepositoryOperationException("TODO: JCR-3206");
+        try {
+            return remote.getBindVariableNames();
+        } catch (RemoteException ex) {
+            throw new RemoteRepositoryException(ex);
+        }
     }
 
+    /** {@inheritDoc} */
     public void setLimit(long limit) {
-        throw new RuntimeException("TODO: JCR-3206");
+        try {
+            remote.setLimit(limit);
+        } catch (RemoteException ex) {
+            throw new RemoteRuntimeException(ex);
+        }
     }
 
+    /** {@inheritDoc} */
     public void setOffset(long offset) {
-        throw new RuntimeException("TODO: JCR-3206");
+        try {
+            remote.setOffset(offset);
+        } catch (RemoteException ex) {
+            throw new RemoteRuntimeException(ex);
+        }
     }
 
 }

Modified: jackrabbit/trunk/jackrabbit-jcr-rmi/src/main/java/org/apache/jackrabbit/rmi/client/ClientQueryResult.java
URL: http://svn.apache.org/viewvc/jackrabbit/trunk/jackrabbit-jcr-rmi/src/main/java/org/apache/jackrabbit/rmi/client/ClientQueryResult.java?rev=1377571&r1=1377570&r2=1377571&view=diff
==============================================================================
--- jackrabbit/trunk/jackrabbit-jcr-rmi/src/main/java/org/apache/jackrabbit/rmi/client/ClientQueryResult.java (original)
+++ jackrabbit/trunk/jackrabbit-jcr-rmi/src/main/java/org/apache/jackrabbit/rmi/client/ClientQueryResult.java Mon Aug 27 05:41:46 2012
@@ -21,7 +21,6 @@ import java.rmi.RemoteException;
 import javax.jcr.NodeIterator;
 import javax.jcr.RepositoryException;
 import javax.jcr.Session;
-import javax.jcr.UnsupportedRepositoryOperationException;
 import javax.jcr.query.QueryResult;
 import javax.jcr.query.RowIterator;
 
@@ -71,7 +70,7 @@ public class ClientQueryResult extends C
     /** {@inheritDoc} */
     public RowIterator getRows() throws RepositoryException {
         try {
-            return getFactory().getRowIterator(remote.getRows());
+            return getFactory().getRowIterator(session, remote.getRows());
         } catch (RemoteException ex) {
             throw new RemoteRepositoryException(ex);
         }
@@ -86,8 +85,13 @@ public class ClientQueryResult extends C
         }
     }
 
+    /** {@inheritDoc} */
     public String[] getSelectorNames() throws RepositoryException {
-        throw new UnsupportedRepositoryOperationException("TODO: JCR-3206");
+        try {
+            return remote.getSelectorNames();
+        } catch (RemoteException ex) {
+            throw new RemoteRepositoryException(ex);
+        }
     }
 
 }

Modified: jackrabbit/trunk/jackrabbit-jcr-rmi/src/main/java/org/apache/jackrabbit/rmi/client/ClientRow.java
URL: http://svn.apache.org/viewvc/jackrabbit/trunk/jackrabbit-jcr-rmi/src/main/java/org/apache/jackrabbit/rmi/client/ClientRow.java?rev=1377571&r1=1377570&r2=1377571&view=diff
==============================================================================
--- jackrabbit/trunk/jackrabbit-jcr-rmi/src/main/java/org/apache/jackrabbit/rmi/client/ClientRow.java (original)
+++ jackrabbit/trunk/jackrabbit-jcr-rmi/src/main/java/org/apache/jackrabbit/rmi/client/ClientRow.java Mon Aug 27 05:41:46 2012
@@ -20,7 +20,7 @@ import java.rmi.RemoteException;
 
 import javax.jcr.Node;
 import javax.jcr.RepositoryException;
-import javax.jcr.UnsupportedRepositoryOperationException;
+import javax.jcr.Session;
 import javax.jcr.Value;
 import javax.jcr.query.Row;
 
@@ -34,7 +34,10 @@ import org.apache.jackrabbit.rmi.remote.
  * @see javax.jcr.query.Row Row
  * @see org.apache.jackrabbit.rmi.remote.RemoteRow
  */
-public class ClientRow implements Row {
+public class ClientRow extends ClientObject implements Row {
+
+    /** Current session. */
+    private Session session;
 
     /** The remote query row. */
     private RemoteRow remote;
@@ -44,7 +47,10 @@ public class ClientRow implements Row {
      *
      * @param remote remote query row
      */
-    public ClientRow(RemoteRow remote) {
+    public ClientRow(Session session, RemoteRow remote,
+            LocalAdapterFactory factory) {
+        super(factory);
+        this.session = session;
         this.remote = remote;
     }
 
@@ -66,28 +72,58 @@ public class ClientRow implements Row {
         }
     }
 
+    /** {@inheritDoc} */
     public Node getNode() throws RepositoryException {
-        throw new UnsupportedRepositoryOperationException("TODO: JCR-3206");
+        try {
+            return getFactory().getNode(session, remote.getNode());
+        } catch (RemoteException ex) {
+            throw new RemoteRepositoryException(ex);
+        }
     }
 
+    /** {@inheritDoc} */
     public Node getNode(String selectorName) throws RepositoryException {
-        throw new UnsupportedRepositoryOperationException("TODO: JCR-3206");
+        try {
+            return getFactory().getNode(session, remote.getNode(selectorName));
+        } catch (RemoteException ex) {
+            throw new RemoteRepositoryException(ex);
+        }
     }
 
+    /** {@inheritDoc} */
     public String getPath() throws RepositoryException {
-        throw new UnsupportedRepositoryOperationException("TODO: JCR-3206");
+        try {
+            return remote.getPath();
+        } catch (RemoteException ex) {
+            throw new RemoteRepositoryException(ex);
+        }
     }
 
+    /** {@inheritDoc} */
     public String getPath(String selectorName) throws RepositoryException {
-        throw new UnsupportedRepositoryOperationException("TODO: JCR-3206");
+        try {
+            return remote.getPath(selectorName);
+        } catch (RemoteException ex) {
+            throw new RemoteRepositoryException(ex);
+        }
     }
 
+    /** {@inheritDoc} */
     public double getScore() throws RepositoryException {
-        throw new UnsupportedRepositoryOperationException("TODO: JCR-3206");
+        try {
+            return remote.getScore();
+        } catch (RemoteException ex) {
+            throw new RemoteRepositoryException(ex);
+        }
     }
 
+    /** {@inheritDoc} */
     public double getScore(String selectorName) throws RepositoryException {
-        throw new UnsupportedRepositoryOperationException("TODO: JCR-3206");
+        try {
+            return remote.getScore(selectorName);
+        } catch (RemoteException ex) {
+            throw new RemoteRepositoryException(ex);
+        }
     }
 
 }

Modified: jackrabbit/trunk/jackrabbit-jcr-rmi/src/main/java/org/apache/jackrabbit/rmi/client/ClientVersion.java
URL: http://svn.apache.org/viewvc/jackrabbit/trunk/jackrabbit-jcr-rmi/src/main/java/org/apache/jackrabbit/rmi/client/ClientVersion.java?rev=1377571&r1=1377570&r2=1377571&view=diff
==============================================================================
--- jackrabbit/trunk/jackrabbit-jcr-rmi/src/main/java/org/apache/jackrabbit/rmi/client/ClientVersion.java (original)
+++ jackrabbit/trunk/jackrabbit-jcr-rmi/src/main/java/org/apache/jackrabbit/rmi/client/ClientVersion.java Mon Aug 27 05:41:46 2012
@@ -22,7 +22,6 @@ import java.util.Calendar;
 import javax.jcr.Node;
 import javax.jcr.RepositoryException;
 import javax.jcr.Session;
-import javax.jcr.UnsupportedRepositoryOperationException;
 import javax.jcr.version.Version;
 import javax.jcr.version.VersionHistory;
 
@@ -114,15 +113,40 @@ public class ClientVersion extends Clien
         }
    }
 
+    /** {@inheritDoc} */
     public Node getFrozenNode() throws RepositoryException {
-        throw new UnsupportedRepositoryOperationException("TODO: JCR-3206");
+        try {
+            return getFactory().getNode(getSession(), remote.getFrozenNode());
+        } catch (RemoteException ex) {
+            throw new RemoteRepositoryException(ex);
+        }
     }
 
+    /** {@inheritDoc} */
     public Version getLinearPredecessor() throws RepositoryException {
-        throw new UnsupportedRepositoryOperationException("TODO: JCR-3206");
+        try {
+            RemoteVersion linearPredecessor = remote.getLinearPredecessor();
+            if (linearPredecessor == null) {
+                return null;
+            } else {
+                return getFactory().getVersion(getSession(), linearPredecessor);
+            }
+        } catch (RemoteException ex) {
+            throw new RemoteRepositoryException(ex);
+        }
     }
 
+    /** {@inheritDoc} */
     public Version getLinearSuccessor() throws RepositoryException {
-        throw new UnsupportedRepositoryOperationException("TODO: JCR-3206");
+        try {
+            RemoteVersion linearSuccessor = remote.getLinearSuccessor();
+            if (linearSuccessor == null) {
+                return null;
+            } else {
+                return getFactory().getVersion(getSession(), linearSuccessor);
+            }
+        } catch (RemoteException ex) {
+            throw new RemoteRepositoryException(ex);
+        }
     }
 }

Modified: jackrabbit/trunk/jackrabbit-jcr-rmi/src/main/java/org/apache/jackrabbit/rmi/client/ClientVersionHistory.java
URL: http://svn.apache.org/viewvc/jackrabbit/trunk/jackrabbit-jcr-rmi/src/main/java/org/apache/jackrabbit/rmi/client/ClientVersionHistory.java?rev=1377571&r1=1377570&r2=1377571&view=diff
==============================================================================
--- jackrabbit/trunk/jackrabbit-jcr-rmi/src/main/java/org/apache/jackrabbit/rmi/client/ClientVersionHistory.java (original)
+++ jackrabbit/trunk/jackrabbit-jcr-rmi/src/main/java/org/apache/jackrabbit/rmi/client/ClientVersionHistory.java Mon Aug 27 05:41:46 2012
@@ -128,8 +128,8 @@ public class ClientVersionHistory extend
     public boolean hasVersionLabel(Version version, String label)
             throws VersionException, RepositoryException {
         try {
-            String versionUUID = version.getUUID();
-            return remote.hasVersionLabel(versionUUID, label);
+            String versionIdentifier = version.getIdentifier();
+            return remote.hasVersionLabel(versionIdentifier, label);
         } catch (RemoteException ex) {
             throw new RemoteRepositoryException(ex);
         }
@@ -149,8 +149,8 @@ public class ClientVersionHistory extend
     public String[] getVersionLabels(Version version)
             throws VersionException, RepositoryException {
         try {
-            String versionUUID = version.getUUID();
-            return remote.getVersionLabels(versionUUID);
+            String versionIdentifier = version.getIdentifier();
+            return remote.getVersionLabels(versionIdentifier);
         } catch (RemoteException ex) {
             throw new RemoteRepositoryException(ex);
         }
@@ -167,7 +167,10 @@ public class ClientVersionHistory extend
         }
     }
 
-    /** {@inheritDoc} */
+    /** {@inheritDoc}
+     * @deprecated As of JCR 2.0, {@link #getVersionableIdentifier} should be
+     *             used instead.
+     */
     public String getVersionableUUID() throws RepositoryException {
         try {
             return remote.getVersionableUUID();
@@ -176,19 +179,39 @@ public class ClientVersionHistory extend
         }
     }
 
+    /** {@inheritDoc} */
     public NodeIterator getAllFrozenNodes() throws RepositoryException {
-        throw new UnsupportedRepositoryOperationException("TODO: JCR-3206");
+        try {
+            return getFactory().getNodeIterator(getSession(), remote.getAllFrozenNodes());
+        } catch (RemoteException ex) {
+            throw new RemoteRepositoryException(ex);
+        }
     }
 
+    /** {@inheritDoc} */
     public NodeIterator getAllLinearFrozenNodes() throws RepositoryException {
-        throw new UnsupportedRepositoryOperationException("TODO: JCR-3206");
+        try {
+            return getFactory().getNodeIterator(getSession(), remote.getAllLinearFrozenNodes());
+        } catch (RemoteException ex) {
+            throw new RemoteRepositoryException(ex);
+        }
     }
 
+    /** {@inheritDoc} */
     public VersionIterator getAllLinearVersions() throws RepositoryException {
-        throw new UnsupportedRepositoryOperationException("TODO: JCR-3206");
+        try {
+            return getFactory().getVersionIterator(getSession(), remote.getAllLinearVersions());
+        } catch (RemoteException ex) {
+            throw new RemoteRepositoryException(ex);
+        }
     }
 
+    /** {@inheritDoc} */
     public String getVersionableIdentifier() throws RepositoryException {
-        throw new UnsupportedRepositoryOperationException("TODO: JCR-3206");
+        try {
+            return remote.getVersionableIdentifier();
+        } catch (RemoteException ex) {
+            throw new RemoteRepositoryException(ex);
+        }
     }
 }

Modified: jackrabbit/trunk/jackrabbit-jcr-rmi/src/main/java/org/apache/jackrabbit/rmi/client/ClientVersionManager.java
URL: http://svn.apache.org/viewvc/jackrabbit/trunk/jackrabbit-jcr-rmi/src/main/java/org/apache/jackrabbit/rmi/client/ClientVersionManager.java?rev=1377571&r1=1377570&r2=1377571&view=diff
==============================================================================
--- jackrabbit/trunk/jackrabbit-jcr-rmi/src/main/java/org/apache/jackrabbit/rmi/client/ClientVersionManager.java (original)
+++ jackrabbit/trunk/jackrabbit-jcr-rmi/src/main/java/org/apache/jackrabbit/rmi/client/ClientVersionManager.java Mon Aug 27 05:41:46 2012
@@ -22,11 +22,12 @@ import javax.jcr.Node;
 import javax.jcr.NodeIterator;
 import javax.jcr.RepositoryException;
 import javax.jcr.Session;
-import javax.jcr.UnsupportedRepositoryOperationException;
 import javax.jcr.version.Version;
 import javax.jcr.version.VersionHistory;
 import javax.jcr.version.VersionManager;
 
+import org.apache.jackrabbit.rmi.remote.RemoteIterator;
+import org.apache.jackrabbit.rmi.remote.RemoteNode;
 import org.apache.jackrabbit.rmi.remote.RemoteVersionManager;
 
 public class ClientVersionManager extends ClientObject
@@ -48,7 +49,11 @@ public class ClientVersionManager extend
     /** {@inheritDoc} */
     public void cancelMerge(String absPath, Version version)
             throws RepositoryException {
-        throw new UnsupportedRepositoryOperationException("TODO: JCR-3206");
+        try {
+            remote.cancelMerge(absPath, version.getIdentifier());
+        } catch (RemoteException e) {
+            throw new RemoteRepositoryException(e);
+        }
     }
 
     /** {@inheritDoc} */
@@ -102,13 +107,22 @@ public class ClientVersionManager extend
     /** {@inheritDoc} */
     public void doneMerge(String absPath, Version version)
             throws RepositoryException {
-        throw new UnsupportedRepositoryOperationException("TODO: JCR-3206");
+        try {
+            remote.doneMerge(absPath, version.getIdentifier());
+        } catch (RemoteException e) {
+            throw new RemoteRepositoryException(e);
+        }
     }
 
     /** {@inheritDoc} */
     public Node getActivity() throws RepositoryException {
         try {
-            return getFactory().getNode(session, remote.getActivity());
+            RemoteNode activity = remote.getActivity();
+            if (activity == null) {
+                return null;
+            } else {
+                return getFactory().getNode(session, activity);
+            }
         } catch (RemoteException e) {
             throw new RemoteRepositoryException(e);
         }
@@ -146,7 +160,12 @@ public class ClientVersionManager extend
 
     /** {@inheritDoc} */
     public NodeIterator merge(Node activityNode) throws RepositoryException {
-        throw new UnsupportedRepositoryOperationException("TODO: JCR-3206");
+        try {
+            RemoteIterator iterator = remote.merge(activityNode.getIdentifier());
+            return getFactory().getNodeIterator(session, iterator);
+        } catch (RemoteException e) {
+            throw new RemoteRepositoryException(e);
+        }
     }
 
     /** {@inheritDoc} */
@@ -175,19 +194,35 @@ public class ClientVersionManager extend
 
     /** {@inheritDoc} */
     public void removeActivity(Node activityNode) throws RepositoryException {
-        throw new UnsupportedRepositoryOperationException("TODO: JCR-3206");
+        try {
+            remote.removeActivity(activityNode.getIdentifier());
+        } catch (RemoteException e) {
+            throw new RemoteRepositoryException(e);
+        }
     }
 
     /** {@inheritDoc} */
     public void restore(Version[] versions, boolean removeExisting)
             throws RepositoryException {
-        throw new UnsupportedRepositoryOperationException("TODO: JCR-3206");
+        try {
+            String[] versionIdentifiers = new String[versions.length];
+            for (int i = 0; i < versions.length; i++) {
+                versionIdentifiers[i] = versions[i].getIdentifier();
+            }
+            remote.restore(versionIdentifiers, removeExisting);
+        } catch (RemoteException e) {
+            throw new RemoteRepositoryException(e);
+        }
     }
 
     /** {@inheritDoc} */
     public void restore(Version version, boolean removeExisting)
             throws RepositoryException {
-        throw new UnsupportedRepositoryOperationException("TODO: JCR-3206");
+        try {
+            remote.restore(version.getIdentifier(), removeExisting);
+        } catch (RemoteException e) {
+            throw new RemoteRepositoryException(e);
+        }
     }
 
     /** {@inheritDoc} */
@@ -204,7 +239,11 @@ public class ClientVersionManager extend
     /** {@inheritDoc} */
     public void restore(String absPath, Version version, boolean removeExisting)
             throws RepositoryException {
-        throw new UnsupportedRepositoryOperationException("TODO: JCR-3206");
+        try {
+            remote.restoreVI(absPath, version.getIdentifier(), removeExisting);
+        } catch (RemoteException e) {
+            throw new RemoteRepositoryException(e);
+        }
     }
 
     /** {@inheritDoc} */
@@ -220,7 +259,21 @@ public class ClientVersionManager extend
 
     /** {@inheritDoc} */
     public Node setActivity(Node activity) throws RepositoryException {
-        throw new UnsupportedRepositoryOperationException("TODO: JCR-3206");
+        try {
+            RemoteNode remoteActivity;
+            if (activity == null) {
+                remoteActivity = remote.setActivity(null);
+            } else {
+                remoteActivity = remote.setActivity(activity.getIdentifier());
+            }
+            if (remoteActivity == null) {
+                return null;
+            } else {
+                return getFactory().getNode(session, remoteActivity);
+            }
+        } catch (RemoteException e) {
+            throw new RemoteRepositoryException(e);
+        }
     }
 
 }

Modified: jackrabbit/trunk/jackrabbit-jcr-rmi/src/main/java/org/apache/jackrabbit/rmi/client/ClientWorkspace.java
URL: http://svn.apache.org/viewvc/jackrabbit/trunk/jackrabbit-jcr-rmi/src/main/java/org/apache/jackrabbit/rmi/client/ClientWorkspace.java?rev=1377571&r1=1377570&r2=1377571&view=diff
==============================================================================
--- jackrabbit/trunk/jackrabbit-jcr-rmi/src/main/java/org/apache/jackrabbit/rmi/client/ClientWorkspace.java (original)
+++ jackrabbit/trunk/jackrabbit-jcr-rmi/src/main/java/org/apache/jackrabbit/rmi/client/ClientWorkspace.java Mon Aug 27 05:41:46 2012
@@ -24,7 +24,6 @@ import java.rmi.RemoteException;
 import javax.jcr.NamespaceRegistry;
 import javax.jcr.RepositoryException;
 import javax.jcr.Session;
-import javax.jcr.UnsupportedRepositoryOperationException;
 import javax.jcr.Workspace;
 import javax.jcr.lock.LockManager;
 import javax.jcr.nodetype.NodeTypeManager;
@@ -240,8 +239,7 @@ public class ClientWorkspace extends Cli
     /** {@inheritDoc} */
     public void restore(Version[] versions, boolean removeExisting)
             throws RepositoryException {
-        // TODO Auto-generated method stub
-        throw new UnsupportedRepositoryOperationException();
+        getVersionManager().restore(versions, removeExisting);
     }
 
     public void createWorkspace(String name) throws RepositoryException {

Modified: jackrabbit/trunk/jackrabbit-jcr-rmi/src/main/java/org/apache/jackrabbit/rmi/client/LocalAdapterFactory.java
URL: http://svn.apache.org/viewvc/jackrabbit/trunk/jackrabbit-jcr-rmi/src/main/java/org/apache/jackrabbit/rmi/client/LocalAdapterFactory.java?rev=1377571&r1=1377570&r2=1377571&view=diff
==============================================================================
--- jackrabbit/trunk/jackrabbit-jcr-rmi/src/main/java/org/apache/jackrabbit/rmi/client/LocalAdapterFactory.java (original)
+++ jackrabbit/trunk/jackrabbit-jcr-rmi/src/main/java/org/apache/jackrabbit/rmi/client/LocalAdapterFactory.java Mon Aug 27 05:41:46 2012
@@ -285,10 +285,11 @@ public interface LocalAdapterFactory {
     /**
      * Factory method for creating a local adapter for a remote query row.
      *
+     * @param session current session
      * @param remote remote query row
      * @return local query row adapter
      */
-    Row getRow(RemoteRow remote);
+    Row getRow(Session session, RemoteRow remote);
 
     /**
      * Factory method for creating a local adapter for a remote node iterator.
@@ -329,10 +330,11 @@ public interface LocalAdapterFactory {
     /**
      * Factory method for creating a local adapter for a remote row iterator.
      *
+     * @param session current session
      * @param remote remote row iterator
      * @return local row iterator adapter
      */
-    RowIterator getRowIterator(RemoteIterator remote);
+    RowIterator getRowIterator(Session session, RemoteIterator remote);
 
     LockManager getLockManager(Session session, RemoteLockManager lockManager);
 

Modified: jackrabbit/trunk/jackrabbit-jcr-rmi/src/main/java/org/apache/jackrabbit/rmi/client/iterator/ClientRowIterator.java
URL: http://svn.apache.org/viewvc/jackrabbit/trunk/jackrabbit-jcr-rmi/src/main/java/org/apache/jackrabbit/rmi/client/iterator/ClientRowIterator.java?rev=1377571&r1=1377570&r2=1377571&view=diff
==============================================================================
--- jackrabbit/trunk/jackrabbit-jcr-rmi/src/main/java/org/apache/jackrabbit/rmi/client/iterator/ClientRowIterator.java (original)
+++ jackrabbit/trunk/jackrabbit-jcr-rmi/src/main/java/org/apache/jackrabbit/rmi/client/iterator/ClientRowIterator.java Mon Aug 27 05:41:46 2012
@@ -16,6 +16,7 @@
  */
 package org.apache.jackrabbit.rmi.client.iterator;
 
+import javax.jcr.Session;
 import javax.jcr.query.Row;
 import javax.jcr.query.RowIterator;
 
@@ -28,15 +29,19 @@ import org.apache.jackrabbit.rmi.remote.
  */
 public class ClientRowIterator extends ClientIterator implements RowIterator {
 
+    /** Current session. */
+    private Session session;
+
     /**
      * Creates a ClientRowIterator instance.
      *
      * @param iterator      remote iterator
      * @param factory       local adapter factory
      */
-    public ClientRowIterator(
+    public ClientRowIterator(Session session,
             RemoteIterator iterator, LocalAdapterFactory factory) {
         super(iterator, factory);
+        this.session = session;
     }
 
     /**
@@ -47,7 +52,7 @@ public class ClientRowIterator extends C
      * @see ClientIterator#getObject(Object)
      */
     protected Object getObject(Object remote) {
-        return getFactory().getRow((RemoteRow) remote);
+        return getFactory().getRow(session, (RemoteRow) remote);
     }
 
     /**

Modified: jackrabbit/trunk/jackrabbit-jcr-rmi/src/main/java/org/apache/jackrabbit/rmi/observation/ClientEventPoll.java
URL: http://svn.apache.org/viewvc/jackrabbit/trunk/jackrabbit-jcr-rmi/src/main/java/org/apache/jackrabbit/rmi/observation/ClientEventPoll.java?rev=1377571&r1=1377570&r2=1377571&view=diff
==============================================================================
--- jackrabbit/trunk/jackrabbit-jcr-rmi/src/main/java/org/apache/jackrabbit/rmi/observation/ClientEventPoll.java (original)
+++ jackrabbit/trunk/jackrabbit-jcr-rmi/src/main/java/org/apache/jackrabbit/rmi/observation/ClientEventPoll.java Mon Aug 27 05:41:46 2012
@@ -22,11 +22,12 @@ import java.util.Map;
 
 import javax.jcr.RepositoryException;
 import javax.jcr.Session;
-import javax.jcr.UnsupportedRepositoryOperationException;
 import javax.jcr.observation.Event;
 import javax.jcr.observation.EventIterator;
 import javax.jcr.observation.EventListener;
 
+import org.apache.jackrabbit.rmi.client.RemoteRepositoryException;
+import org.apache.jackrabbit.rmi.client.RemoteRuntimeException;
 import org.apache.jackrabbit.rmi.iterator.ArrayEventIterator;
 import org.apache.jackrabbit.rmi.remote.RemoteEventCollection;
 import org.apache.jackrabbit.rmi.remote.RemoteObservationManager;
@@ -261,15 +262,9 @@ public class ClientEventPoll extends Thr
      */
     private static class JCREvent implements Event {
 
-        /** The event type */
-        private final int type;
-
-        /** The path of the repository item underlying the event */
-        private final String path;
-
-        /** The user id of the session originating the event */
-        private final String userID;
-
+    	/** The adapted remote event. */
+    	private final RemoteEventCollection.RemoteEvent remote;
+    	
         /**
          * Creates an instance of this class from the contents of the given
          * <code>remoteEvent</code>.
@@ -280,40 +275,70 @@ public class ClientEventPoll extends Thr
          * @throws RemoteException if an RMI error occurrs.
          */
         private JCREvent(RemoteEventCollection.RemoteEvent remoteEvent) throws RemoteException {
-            type = remoteEvent.getType();
-            path = remoteEvent.getPath();
-            userID = remoteEvent.getUserID();
+            remote = remoteEvent;
         }
 
         /** {@inheritDoc} */
         public int getType() {
-            return type;
+            try {
+                return remote.getType();
+            } catch (RemoteException ex) {
+                throw new RemoteRuntimeException(ex);
+            }
         }
 
         /** {@inheritDoc} */
-        public String getPath() {
-            return path;
+        public String getPath() throws RepositoryException {
+            try {
+                return remote.getPath();
+            } catch (RemoteException ex) {
+                throw new RemoteRepositoryException(ex);
+            }
         }
 
         /** {@inheritDoc} */
         public String getUserID() {
-            return userID;
+            try {
+                return remote.getUserID();
+            } catch (RemoteException ex) {
+                throw new RemoteRuntimeException(ex);
+            }
         }
 
+        /** {@inheritDoc} */
         public long getDate() throws RepositoryException {
-            throw new UnsupportedRepositoryOperationException("TODO: JCR-3206");
+            try {
+                return remote.getDate();
+            } catch (RemoteException ex) {
+                throw new RemoteRepositoryException(ex);
+            }
         }
 
+        /** {@inheritDoc} */
         public String getIdentifier() throws RepositoryException {
-            throw new UnsupportedRepositoryOperationException("TODO: JCR-3206");
+            try {
+                return remote.getIdentifier();
+            } catch (RemoteException ex) {
+                throw new RemoteRepositoryException(ex);
+            }
         }
 
+        /** {@inheritDoc} */
         public Map getInfo() throws RepositoryException {
-            throw new UnsupportedRepositoryOperationException("TODO: JCR-3206");
+            try {
+                return remote.getInfo();
+            } catch (RemoteException ex) {
+                throw new RemoteRepositoryException(ex);
+            }
         }
 
+        /** {@inheritDoc} */
         public String getUserData() throws RepositoryException {
-            throw new UnsupportedRepositoryOperationException("TODO: JCR-3206");
+            try {
+                return remote.getUserData();
+            } catch (RemoteException ex) {
+                throw new RemoteRepositoryException(ex);
+            }
         }
     }
 }

Modified: jackrabbit/trunk/jackrabbit-jcr-rmi/src/main/java/org/apache/jackrabbit/rmi/remote/RemoteEventCollection.java
URL: http://svn.apache.org/viewvc/jackrabbit/trunk/jackrabbit-jcr-rmi/src/main/java/org/apache/jackrabbit/rmi/remote/RemoteEventCollection.java?rev=1377571&r1=1377570&r2=1377571&view=diff
==============================================================================
--- jackrabbit/trunk/jackrabbit-jcr-rmi/src/main/java/org/apache/jackrabbit/rmi/remote/RemoteEventCollection.java (original)
+++ jackrabbit/trunk/jackrabbit-jcr-rmi/src/main/java/org/apache/jackrabbit/rmi/remote/RemoteEventCollection.java Mon Aug 27 05:41:46 2012
@@ -18,6 +18,9 @@ package org.apache.jackrabbit.rmi.remote
 
 import java.rmi.Remote;
 import java.rmi.RemoteException;
+import java.util.Map;
+
+import javax.jcr.RepositoryException;
 
 /**
  * The <code>RemoteEventCollection</code> class serves as a container for
@@ -52,28 +55,75 @@ public interface RemoteEventCollection e
      */
     public static interface RemoteEvent extends Remote {
         /**
-         * Returns the event type.
+         * Remote version of the
+         * {@link javax.jcr.Event#getType() Event.getType()} method.
          *
-         * @return event type
+         * @return the type of this event.
          * @throws RemoteException on RMI errors
          */
         int getType() throws RemoteException;
 
         /**
-         * Returns the absolute path of the underlying item.
+         * Remote version of the
+         * {@link javax.jcr.Event#getPath() Event.getPath()} method.
          *
-         * @return item path
+         * @return the absolute path associated with this event or
+         *         <code>null</code>.
+         * @throws RepositoryException on repository errors
          * @throws RemoteException on RMI errors
          */
-        String getPath() throws RemoteException;
+        String getPath() throws RepositoryException, RemoteException;
 
         /**
-         * Returns the userID of the session causing this event.
+         * Remote version of the
+         * {@link javax.jcr.Event#getUserID() Event.getUserID()} method.
          *
-         * @return user identifier
+         * @return the user ID.
          * @throws RemoteException on RMI errors
          */
         String getUserID() throws RemoteException;
+        
+        /**
+         * Remote version of the
+         * {@link javax.jcr.Event#getIdentifier() Event.getIdentifier()} method.
+         *
+         * @return the identifier associated with this event or <code>null</code>.
+         * @throws RepositoryException on repository errors
+         * @throws RemoteException on RMI errors
+         */
+        String getIdentifier() throws RepositoryException, RemoteException;
+        
+        /**
+         * Remote version of the
+         * {@link javax.jcr.Event#getInfo() Event.getInfo()} method.
+         *
+         * @return A <code>Map</code> containing parameter information for instances
+     *         of a <code>NODE_MOVED</code> event.
+         * @throws RepositoryException on repository errors
+         * @throws RemoteException on RMI errors
+         */
+        Map getInfo() throws RepositoryException, RemoteException;
+        
+        /**
+         * Remote version of the
+         * {@link javax.jcr.Event#getUserData() Event.getUserData()} method.
+         *
+         * @return The user data string.
+         * @throws RepositoryException on repository errors
+         * @throws RemoteException on RMI errors
+         */
+        String getUserData() throws RepositoryException, RemoteException;
+        
+        /**
+         * Remote version of the
+         * {@link javax.jcr.Event#getDate() Event.getDate()} method.
+         *
+         * @return the date when the change was persisted that caused this event.
+         * @throws RepositoryException on repository errors
+         * @throws RemoteException on RMI errors
+         */
+        long getDate() throws RepositoryException, RemoteException;
+        
     }
 
 }

Modified: jackrabbit/trunk/jackrabbit-jcr-rmi/src/main/java/org/apache/jackrabbit/rmi/remote/RemoteQuery.java
URL: http://svn.apache.org/viewvc/jackrabbit/trunk/jackrabbit-jcr-rmi/src/main/java/org/apache/jackrabbit/rmi/remote/RemoteQuery.java?rev=1377571&r1=1377570&r2=1377571&view=diff
==============================================================================
--- jackrabbit/trunk/jackrabbit-jcr-rmi/src/main/java/org/apache/jackrabbit/rmi/remote/RemoteQuery.java (original)
+++ jackrabbit/trunk/jackrabbit-jcr-rmi/src/main/java/org/apache/jackrabbit/rmi/remote/RemoteQuery.java Mon Aug 27 05:41:46 2012
@@ -20,6 +20,7 @@ import java.rmi.Remote;
 import java.rmi.RemoteException;
 
 import javax.jcr.RepositoryException;
+import javax.jcr.Value;
 
 /**
  * Remote version of the JCR {@link javax.jcr.query.Query Query} interface.
@@ -45,6 +46,22 @@ public interface RemoteQuery extends Rem
     RemoteQueryResult execute() throws RepositoryException, RemoteException;
 
     /**
+     * @see javax.jcr.query.Query#setLimit()
+     *
+     * @param limit a <code>long</code>
+     * @throws RemoteException on RMI errors
+     */
+    void setLimit(long limit) throws RemoteException;
+    
+    /**
+     * @see javax.jcr.query.Query#setOffset()
+     *
+     * @param offset a <code>long</code>
+     * @throws RemoteException on RMI errors
+     */
+    void setOffset(long offset) throws RemoteException;
+    
+    /**
      * @see javax.jcr.query.Query#getStatement()
      *
      * @return the query statement.
@@ -79,4 +96,22 @@ public interface RemoteQuery extends Rem
      */
     RemoteNode storeAsNode(String absPath) throws RepositoryException, RemoteException;
 
+    /**
+     * @see javax.jcr.query.Query#bindValue(String, Value)
+     *
+     * @param varName name of variable in query
+     * @param value   value to bind
+     * @throws RepositoryException on repository errors
+     * @throws RemoteException on RMI errors
+     */
+    void bindValue(String varName, Value value) throws RepositoryException, RemoteException;
+    
+    /**
+     * @see javax.jcr.query.Query#getBindVariableNames()
+     *
+     * @return the names of the bind variables in this query.
+     * @throws RepositoryException on repository errors
+     * @throws RemoteException on RMI errors
+     */
+    public String[] getBindVariableNames() throws RepositoryException, RemoteException;
 }

Modified: jackrabbit/trunk/jackrabbit-jcr-rmi/src/main/java/org/apache/jackrabbit/rmi/remote/RemoteQueryResult.java
URL: http://svn.apache.org/viewvc/jackrabbit/trunk/jackrabbit-jcr-rmi/src/main/java/org/apache/jackrabbit/rmi/remote/RemoteQueryResult.java?rev=1377571&r1=1377570&r2=1377571&view=diff
==============================================================================
--- jackrabbit/trunk/jackrabbit-jcr-rmi/src/main/java/org/apache/jackrabbit/rmi/remote/RemoteQueryResult.java (original)
+++ jackrabbit/trunk/jackrabbit-jcr-rmi/src/main/java/org/apache/jackrabbit/rmi/remote/RemoteQueryResult.java Mon Aug 27 05:41:46 2012
@@ -61,4 +61,12 @@ public interface RemoteQueryResult exten
      */
     RemoteIterator getNodes() throws RepositoryException, RemoteException;
 
+    /**
+     * @see javax.jcr.query.QueryResult#getSelectorNames()
+     *
+     * @return a <code>String</code> array holding the selector names.
+     * @throws RepositoryException on repository errors
+     * @throws RemoteException on RMI errors
+     */
+    public String[] getSelectorNames() throws RepositoryException, RemoteException;
 }

Modified: jackrabbit/trunk/jackrabbit-jcr-rmi/src/main/java/org/apache/jackrabbit/rmi/remote/RemoteVersion.java
URL: http://svn.apache.org/viewvc/jackrabbit/trunk/jackrabbit-jcr-rmi/src/main/java/org/apache/jackrabbit/rmi/remote/RemoteVersion.java?rev=1377571&r1=1377570&r2=1377571&view=diff
==============================================================================
--- jackrabbit/trunk/jackrabbit-jcr-rmi/src/main/java/org/apache/jackrabbit/rmi/remote/RemoteVersion.java (original)
+++ jackrabbit/trunk/jackrabbit-jcr-rmi/src/main/java/org/apache/jackrabbit/rmi/remote/RemoteVersion.java Mon Aug 27 05:41:46 2012
@@ -21,7 +21,6 @@ import java.util.Calendar;
 
 import javax.jcr.RepositoryException;
 
-
 /**
  * Remote version of the JCR {@link javax.jcr.version.Version Version} interface.
  * Used by the {@link org.apache.jackrabbit.rmi.server.ServerVersion ServerVersion}
@@ -52,7 +51,7 @@ public interface RemoteVersion extends R
      * @throws RepositoryException on repository errors
      * @throws RemoteException on RMI errors
      */
-//     RemoteVersionHistory getContainingHistory() throws RepositoryException;
+     RemoteVersionHistory getContainingHistory() throws RepositoryException, RemoteException;
 
     /**
      * Remote version of the
@@ -66,6 +65,18 @@ public interface RemoteVersion extends R
 
     /**
      * Remote version of the
+     * {@link javax.jcr.version.Version#getLinearSuccessor() Version.getLinearSuccessor()} method.
+     *
+     * @return a <code>RemoteVersion</code> or <code>null</code> if no linear
+     *         successor exists.
+     * @throws RepositoryException on repository errors
+     * @throws RemoteException on RMI errors
+     * @see RemoteVersionHistory#getAllLinearVersions
+     */
+    RemoteVersion getLinearSuccessor() throws RepositoryException, RemoteException;
+
+    /**
+     * Remote version of the
      * {@link javax.jcr.version.Version#getSuccessors() Version.getSuccessors()} method.
      *
      * @return a <code>RemoteVersion</code> array.
@@ -76,6 +87,18 @@ public interface RemoteVersion extends R
 
     /**
      * Remote version of the
+     * {@link javax.jcr.version.Version#getLinearPredecessor() Version.getLinearPredecessor()} method.
+     *
+     * @return a <code>RemoteVersion</code> or <code>null</code> if no linear
+     *         predecessor exists.
+     * @throws RepositoryException on repository errors
+     * @throws RemoteException on RMI errors
+     * @see RemoteVersionHistory#getAllLinearVersions
+     */
+    RemoteVersion getLinearPredecessor() throws RepositoryException, RemoteException;
+
+    /**
+     * Remote version of the
      * {@link javax.jcr.version.Version#getPredecessors() Version.getPredecessors()} method.
      *
      * @return a <code>RemoteVersion</code> array.
@@ -86,14 +109,11 @@ public interface RemoteVersion extends R
 
     /**
      * Remote version of the
-     * {@link javax.jcr.version.Version#getContainingHistory()} Version.getContainingHistory()} method.
+     * {@link javax.jcr.version.Version#getFrozenNode() Version.getFrozenNode()} method.
      *
-     * @return a <code>RemoteVersionHistory</code>.
+     * @return a <code>RemoteNode</code> object.
      * @throws RepositoryException on repository errors
      * @throws RemoteException on RMI errors
      */
-    RemoteVersionHistory getContainingHistory() throws RepositoryException, RemoteException;
-
-
-
+    RemoteNode getFrozenNode() throws RepositoryException, RemoteException;
 }

Modified: jackrabbit/trunk/jackrabbit-jcr-rmi/src/main/java/org/apache/jackrabbit/rmi/remote/RemoteVersionHistory.java
URL: http://svn.apache.org/viewvc/jackrabbit/trunk/jackrabbit-jcr-rmi/src/main/java/org/apache/jackrabbit/rmi/remote/RemoteVersionHistory.java?rev=1377571&r1=1377570&r2=1377571&view=diff
==============================================================================
--- jackrabbit/trunk/jackrabbit-jcr-rmi/src/main/java/org/apache/jackrabbit/rmi/remote/RemoteVersionHistory.java (original)
+++ jackrabbit/trunk/jackrabbit-jcr-rmi/src/main/java/org/apache/jackrabbit/rmi/remote/RemoteVersionHistory.java Mon Aug 27 05:41:46 2012
@@ -46,17 +46,30 @@ public interface RemoteVersionHistory ex
 
     /**
      * Remote version of the
-     * {@link javax.jcr.version.VersionHistory#getVersionableUUID() VersionHistory.getVersionableUUID()}
+     * {@link javax.jcr.version.VersionHistory#getVersionableUUID()}  VersionHistory.getVersionableUUID()}
      * method.
      *
-     * @return the UUID of the versionable node for which this is the version history.
+     * @return the uuid of the versionable node
      * @throws RepositoryException if an error occurs.
      * @throws RemoteException on RMI errors
+     * @deprecated As of JCR 2.0, {@link #getVersionableIdentifier} should be
+     *             used instead.
      */
-//    String getVersionableUUID() throws RepositoryException, RemoteException;
+    String getVersionableUUID() throws RepositoryException, RemoteException;
 
     /**
      * Remote version of the
+     * {@link javax.jcr.version.VersionHistory#getVersionableIdentifier()}  VersionHistory.getVersionableIdentifier()}
+     * method.
+     *
+     * @return the identifier of the versionable node
+     * @throws RepositoryException if an error occurs.
+     * @throws RemoteException on RMI errors
+     */
+    String getVersionableIdentifier() throws RepositoryException, RemoteException;
+	
+    /**
+     * Remote version of the
      * {@link javax.jcr.version.VersionHistory#getRootVersion() VersionHistory.getRootVersion()}
      * method.
      *
@@ -68,6 +81,17 @@ public interface RemoteVersionHistory ex
 
     /**
      * Remote version of the
+     * {@link javax.jcr.version.VersionHistory#getAllLinearVersions() VersionHistory.getAllLinearVersions()}
+     * method.
+     *
+     * @return linear remote versions
+     * @throws RepositoryException if an error occurs.
+     * @throws RemoteException on RMI errors
+     */
+    RemoteIterator getAllLinearVersions() throws RepositoryException, RemoteException;
+
+    /**
+     * Remote version of the
      * {@link javax.jcr.version.VersionHistory#getAllVersions() VersionHistory.getAllVersions()}
      * method.
      *
@@ -79,6 +103,28 @@ public interface RemoteVersionHistory ex
 
     /**
      * Remote version of the
+     * {@link javax.jcr.version.VersionHistory#getAllLinearFrozenNodes() VersionHistory.getAllLinearFrozenNodes()}
+     * method.
+     *
+     * @return linear remote frozen nodes
+     * @throws RepositoryException if an error occurs.
+     * @throws RemoteException on RMI errors
+     */
+    RemoteIterator getAllLinearFrozenNodes() throws RepositoryException, RemoteException;
+
+    /**
+     * Remote version of the
+     * {@link javax.jcr.version.VersionHistory#getAllFrozenNodes() VersionHistory.getAllFrozenNodes()}
+     * method.
+     *
+     * @return remote frozen nodes
+     * @throws RepositoryException if an error occurs.
+     * @throws RemoteException on RMI errors
+     */
+    RemoteIterator getAllFrozenNodes() throws RepositoryException, RemoteException;
+
+    /**
+     * Remote version of the
      * {@link javax.jcr.version.VersionHistory#getVersion(String) VersionHistory.getVersion(String)}
      * method.
      *
@@ -195,16 +241,4 @@ public interface RemoteVersionHistory ex
     void removeVersion(String versionName)
             throws RepositoryException, RemoteException;
 
-
-    /**
-     * Remote version of the
-     * {@link javax.jcr.version.VersionHistory#getVersionableUUID()}  VersionHistory.getVersionableUUID()}
-     * method.
-     *
-     * @return the uuid of the versionable node
-     * @throws RepositoryException if another error occurs.
-     * @throws RemoteException on RMI errors
-     */
-    String getVersionableUUID() throws RepositoryException, RemoteException;
-
 }

Modified: jackrabbit/trunk/jackrabbit-jcr-rmi/src/main/java/org/apache/jackrabbit/rmi/remote/RemoteVersionManager.java
URL: http://svn.apache.org/viewvc/jackrabbit/trunk/jackrabbit-jcr-rmi/src/main/java/org/apache/jackrabbit/rmi/remote/RemoteVersionManager.java?rev=1377571&r1=1377570&r2=1377571&view=diff
==============================================================================
--- jackrabbit/trunk/jackrabbit-jcr-rmi/src/main/java/org/apache/jackrabbit/rmi/remote/RemoteVersionManager.java (original)
+++ jackrabbit/trunk/jackrabbit-jcr-rmi/src/main/java/org/apache/jackrabbit/rmi/remote/RemoteVersionManager.java Mon Aug 27 05:41:46 2012
@@ -23,69 +23,87 @@ import javax.jcr.RepositoryException;
 
 public interface RemoteVersionManager extends Remote {
 
-//    void cancelMerge(String absPath, Version version)
-//        throws RepositoryException, RemoteException;
-
-    RemoteVersion checkin(String absPath)
-        throws RepositoryException, RemoteException;
-
+    /**
+     * Remote version of the
+     * {@link javax.jcr.version.VersionManager#checkin(String) VersionManager.checkin(String)}
+     * method.
+     *
+     * @param absPath an absolute path.
+     * @return the created version.
+     * @throws RepositoryException on repository errors
+     * @throws RemoteException on RMI errors
+     */
+    RemoteVersion checkin(String absPath) throws RepositoryException, RemoteException;
+
+    /**
+     * Remote version of the
+     * {@link javax.jcr.version.VersionManager#checkout(String) VersionManager.checkout(String)}
+     * method.
+     *
+     * @param absPath an absolute path.
+     * @throws RepositoryException on repository errors
+     * @throws RemoteException on RMI errors
+     */
     void checkout(String absPath) throws RepositoryException, RemoteException;
 
-    RemoteVersion checkpoint(String absPath)
-        throws RepositoryException, RemoteException;
+    /**
+     * Remote version of the
+     * {@link javax.jcr.version.VersionManager#checkpoint(String) VersionManager.checkpoint(String)}
+     * method.
+     *
+     * @param absPath an absolute path.
+     * @return the created version.
+     * @throws RepositoryException on repository errors
+     * @throws RemoteException on RMI errors
+     */
+    RemoteVersion checkpoint(String absPath) throws RepositoryException, RemoteException;
 
-    RemoteNode createActivity(String title)
-        throws RepositoryException, RemoteException;
+    /**
+     * Remote version of the
+     * {@link javax.jcr.version.VersionManager#isCheckedOut(String) VersionManager.isCheckedOut(String)}
+     * method.
+     *
+     * @param absPath an absolute path.
+     * @return a boolean
+     * @throws RepositoryException on repository errors
+     * @throws RemoteException on RMI errors
+     */
+    boolean isCheckedOut(String absPath) throws RepositoryException, RemoteException;
 
-    RemoteNode createConfiguration(String absPath)
-        throws RepositoryException, RemoteException;
+    RemoteVersionHistory getVersionHistory(String absPath) throws RepositoryException, RemoteException;
 
-//    void doneMerge(String absPath, Version version)
-//        throws RepositoryException, RemoteException;
+    RemoteVersion getBaseVersion(String absPath) throws RepositoryException, RemoteException;
 
-    RemoteNode getActivity() throws RepositoryException, RemoteException;
+    void restore(String[] versionIdentifiers, boolean removeExisting) throws RepositoryException, RemoteException;
 
-    RemoteVersion getBaseVersion(String absPath)
-        throws RepositoryException, RemoteException;
+    void restore(String absPath, String versionName, boolean removeExisting) throws RepositoryException, RemoteException;
 
-    RemoteVersionHistory getVersionHistory(String absPath)
-        throws RepositoryException, RemoteException;
+    void restore(String versionIdentifier, boolean removeExisting) throws RepositoryException, RemoteException;
 
-    boolean isCheckedOut(String absPath)
-        throws RepositoryException, RemoteException;
+    void restoreVI(String absPath, String versionIdentifier, boolean removeExisting) throws RepositoryException, RemoteException;
 
-//    NodeIterator merge(Node activityNode)
-//        throws RepositoryException, RemoteException;
+    void restoreByLabel(String absPath, String versionLabel, boolean removeExisting) throws RepositoryException, RemoteException;
 
-    RemoteIterator merge(
-        String absPath, String srcWorkspace, boolean bestEffort)
-        throws RepositoryException, RemoteException;
+    RemoteIterator merge(String absPath, String srcWorkspace, boolean bestEffort)
+            throws RepositoryException, RemoteException;
 
-    RemoteIterator merge(
-        String absPath, String srcWorkspace, boolean bestEffort,
-        boolean isShallow)
-        throws RepositoryException, RemoteException;
+    RemoteIterator merge(String absPath, String srcWorkspace, boolean bestEffort, boolean isShallow)
+            throws RepositoryException, RemoteException;
 
-//    void removeActivity(Node activityNode)
-//        throws RepositoryException, RemoteException;
+    void doneMerge(String absPath, String versionIdentifier) throws RepositoryException, RemoteException;
+    
+    void cancelMerge(String absPath, String versionIdentifier) throws RepositoryException, RemoteException;
 
-//    void restore(Version[] versions, boolean removeExisting)
-//        throws RepositoryException, RemoteException;
+    RemoteNode createConfiguration(String absPath) throws RepositoryException, RemoteException;
 
-//    void restore(Version version, boolean removeExisting)
-//        throws RepositoryException, RemoteException;
+    RemoteNode setActivity(String activityNodeIdentifier) throws RepositoryException, RemoteException;
 
-    void restore(
-        String absPath, String versionName, boolean removeExisting)
-        throws RepositoryException, RemoteException;
+    RemoteNode getActivity() throws RepositoryException, RemoteException;
 
-//    void restore(String absPath, Version version, boolean removeExisting)
-//        throws RepositoryException, RemoteException;
+    RemoteNode createActivity(String title) throws RepositoryException, RemoteException;
 
-    void restoreByLabel(
-        String absPath, String versionLabel, boolean removeExisting)
-        throws RepositoryException, RemoteException;
+    void removeActivity(String activityNodeIdentifier) throws RepositoryException, RemoteException;
 
-//    Node setActivity(Node activity) throws RepositoryException, RemoteException;
+    RemoteIterator merge(String activityNodeIdentifier) throws RepositoryException, RemoteException;
 
 }

Modified: jackrabbit/trunk/jackrabbit-jcr-rmi/src/main/java/org/apache/jackrabbit/rmi/server/RemoteAdapterFactory.java
URL: http://svn.apache.org/viewvc/jackrabbit/trunk/jackrabbit-jcr-rmi/src/main/java/org/apache/jackrabbit/rmi/server/RemoteAdapterFactory.java?rev=1377571&r1=1377570&r2=1377571&view=diff
==============================================================================
--- jackrabbit/trunk/jackrabbit-jcr-rmi/src/main/java/org/apache/jackrabbit/rmi/server/RemoteAdapterFactory.java (original)
+++ jackrabbit/trunk/jackrabbit-jcr-rmi/src/main/java/org/apache/jackrabbit/rmi/server/RemoteAdapterFactory.java Mon Aug 27 05:41:46 2012
@@ -380,7 +380,7 @@ public interface RemoteAdapterFactory {
     RemoteLockManager getRemoteLockManager(LockManager lockManager)
         throws RemoteException;
 
-    RemoteVersionManager getRemoteVersionManager(VersionManager versionManager)
+    RemoteVersionManager getRemoteVersionManager(Session session, VersionManager versionManager)
         throws RemoteException;
 
     /**

Modified: jackrabbit/trunk/jackrabbit-jcr-rmi/src/main/java/org/apache/jackrabbit/rmi/server/ServerAdapterFactory.java
URL: http://svn.apache.org/viewvc/jackrabbit/trunk/jackrabbit-jcr-rmi/src/main/java/org/apache/jackrabbit/rmi/server/ServerAdapterFactory.java?rev=1377571&r1=1377570&r2=1377571&view=diff
==============================================================================
--- jackrabbit/trunk/jackrabbit-jcr-rmi/src/main/java/org/apache/jackrabbit/rmi/server/ServerAdapterFactory.java (original)
+++ jackrabbit/trunk/jackrabbit-jcr-rmi/src/main/java/org/apache/jackrabbit/rmi/server/ServerAdapterFactory.java Mon Aug 27 05:41:46 2012
@@ -30,7 +30,6 @@ import javax.jcr.NodeIterator;
 import javax.jcr.Property;
 import javax.jcr.PropertyIterator;
 import javax.jcr.Repository;
-import javax.jcr.RepositoryException;
 import javax.jcr.Session;
 import javax.jcr.Workspace;
 import javax.jcr.lock.Lock;
@@ -102,9 +101,9 @@ import org.apache.jackrabbit.rmi.server.
 import org.apache.jackrabbit.rmi.server.principal.ServerPrincipalIterator;
 import org.apache.jackrabbit.rmi.server.security.ServerAccessControlEntry;
 import org.apache.jackrabbit.rmi.server.security.ServerAccessControlList;
-import org.apache.jackrabbit.rmi.server.security.ServerAccessControlPolicyIterator;
 import org.apache.jackrabbit.rmi.server.security.ServerAccessControlManager;
 import org.apache.jackrabbit.rmi.server.security.ServerAccessControlPolicy;
+import org.apache.jackrabbit.rmi.server.security.ServerAccessControlPolicyIterator;
 import org.apache.jackrabbit.rmi.server.security.ServerPrivilege;
 
 /**
@@ -351,18 +350,13 @@ public class ServerAdapterFactory implem
             EventIterator events) throws RemoteException {
         RemoteEventCollection.RemoteEvent[] remoteEvents;
         if (events != null) {
-            List eventList = new ArrayList();
-            while (events.hasNext()) {
-                try {
-                    Event event = events.nextEvent();
-                    eventList.add(new ServerEventCollection.ServerEvent(
-                        event.getType(), event.getPath(), event.getUserID(),
-                        this));
-                } catch (RepositoryException re) {
-                    throw new RemoteException(re.getMessage(), re);
-                }
-            }
-            remoteEvents = (RemoteEventCollection.RemoteEvent[]) eventList.toArray(new RemoteEventCollection.RemoteEvent[eventList.size()]);
+			List<ServerEventCollection.ServerEvent> eventList = new ArrayList<ServerEventCollection.ServerEvent>();
+			while (events.hasNext()) {
+				Event event = events.nextEvent();
+				eventList
+						.add(new ServerEventCollection.ServerEvent(event, this));
+			}
+            remoteEvents = eventList.toArray(new RemoteEventCollection.RemoteEvent[eventList.size()]);
         } else {
             remoteEvents = new RemoteEventCollection.RemoteEvent[0]; // for
             // safety
@@ -450,9 +444,9 @@ public class ServerAdapterFactory implem
         return new ServerLockManager(lockManager, this);
     }
 
-    public RemoteVersionManager getRemoteVersionManager(
+    public RemoteVersionManager getRemoteVersionManager(Session session,
             VersionManager versionManager) throws RemoteException {
-        return new ServerVersionManager(versionManager, this);
+        return new ServerVersionManager(session, versionManager, this);
     }
 
     /**

Modified: jackrabbit/trunk/jackrabbit-jcr-rmi/src/main/java/org/apache/jackrabbit/rmi/server/ServerEventCollection.java
URL: http://svn.apache.org/viewvc/jackrabbit/trunk/jackrabbit-jcr-rmi/src/main/java/org/apache/jackrabbit/rmi/server/ServerEventCollection.java?rev=1377571&r1=1377570&r2=1377571&view=diff
==============================================================================
--- jackrabbit/trunk/jackrabbit-jcr-rmi/src/main/java/org/apache/jackrabbit/rmi/server/ServerEventCollection.java (original)
+++ jackrabbit/trunk/jackrabbit-jcr-rmi/src/main/java/org/apache/jackrabbit/rmi/server/ServerEventCollection.java Mon Aug 27 05:41:46 2012
@@ -17,6 +17,10 @@
 package org.apache.jackrabbit.rmi.server;
 
 import java.rmi.RemoteException;
+import java.util.Map;
+
+import javax.jcr.RepositoryException;
+import javax.jcr.observation.Event;
 
 import org.apache.jackrabbit.rmi.remote.RemoteEventCollection;
 
@@ -77,14 +81,8 @@ public class ServerEventCollection exten
      */
     public static class ServerEvent extends ServerObject implements RemoteEvent {
 
-        /** Event type */
-        private final int type;
-
-        /** Item path */
-        private final String path;
-
-        /** User identifier */
-        private final String userID;
+        /** The adapted local event. */
+        private Event event;
 
         /**
          * Creates an instance of this class.
@@ -94,28 +92,46 @@ public class ServerEventCollection exten
          * @param factory remote adapter factory
          * @throws RemoteException on RMI errors
          */
-        ServerEvent(
-                int type, String path, String userId, RemoteAdapterFactory factory)
+        ServerEvent(Event event, RemoteAdapterFactory factory)
                 throws RemoteException {
             super(factory);
-            this.type = type;
-            this.path = path;
-            this.userID = userId;
+            this.event = event;
         }
 
         /** {@inheritDoc} */
-        public String getPath() {
-            return path;
+        public String getPath() throws RepositoryException {
+            return event.getPath();
         }
 
         /** {@inheritDoc} */
         public int getType() {
-            return type;
+            return event.getType();
         }
 
         /** {@inheritDoc} */
         public String getUserID() {
-            return userID;
+            return event.getUserID();
         }
+
+        /** {@inheritDoc} */
+		public String getIdentifier() throws RepositoryException,
+				RemoteException {
+			return event.getIdentifier();
+		}
+
+        /** {@inheritDoc} */
+		public Map getInfo() throws RepositoryException, RemoteException {
+			return event.getInfo();
+		}
+
+        /** {@inheritDoc} */
+		public String getUserData() throws RepositoryException, RemoteException {
+			return event.getUserData();
+		}
+
+        /** {@inheritDoc} */
+		public long getDate() throws RepositoryException, RemoteException {
+			return event.getDate();
+		}
     }
 }

Modified: jackrabbit/trunk/jackrabbit-jcr-rmi/src/main/java/org/apache/jackrabbit/rmi/server/ServerObservationManager.java
URL: http://svn.apache.org/viewvc/jackrabbit/trunk/jackrabbit-jcr-rmi/src/main/java/org/apache/jackrabbit/rmi/server/ServerObservationManager.java?rev=1377571&r1=1377570&r2=1377571&view=diff
==============================================================================
--- jackrabbit/trunk/jackrabbit-jcr-rmi/src/main/java/org/apache/jackrabbit/rmi/server/ServerObservationManager.java (original)
+++ jackrabbit/trunk/jackrabbit-jcr-rmi/src/main/java/org/apache/jackrabbit/rmi/server/ServerObservationManager.java Mon Aug 27 05:41:46 2012
@@ -53,7 +53,7 @@ public class ServerObservationManager ex
     /**
      * The map of event listener proxies indexed by the unique identifier.
      */
-    private Map proxyMap;
+	private Map<Long, ServerEventListenerProxy> proxyMap;
 
     /**
      * The queue to which event listener proxies post events to be reported
@@ -84,11 +84,11 @@ public class ServerObservationManager ex
         ServerEventListenerProxy proxy;
         synchronized (this) {
             if (proxyMap == null) {
-                proxyMap = new HashMap();
+                proxyMap = new HashMap<Long, ServerEventListenerProxy>();
             }
 
-            Long id = new Long(listenerId);
-            proxy = (ServerEventListenerProxy) proxyMap.get(id);
+            Long id = Long.valueOf(listenerId);
+            proxy = proxyMap.get(id);
             if (proxy == null) {
                 proxy = new ServerEventListenerProxy(getFactory(), listenerId,
                     getQueue());

Modified: jackrabbit/trunk/jackrabbit-jcr-rmi/src/main/java/org/apache/jackrabbit/rmi/server/ServerVersion.java
URL: http://svn.apache.org/viewvc/jackrabbit/trunk/jackrabbit-jcr-rmi/src/main/java/org/apache/jackrabbit/rmi/server/ServerVersion.java?rev=1377571&r1=1377570&r2=1377571&view=diff
==============================================================================
--- jackrabbit/trunk/jackrabbit-jcr-rmi/src/main/java/org/apache/jackrabbit/rmi/server/ServerVersion.java (original)
+++ jackrabbit/trunk/jackrabbit-jcr-rmi/src/main/java/org/apache/jackrabbit/rmi/server/ServerVersion.java Mon Aug 27 05:41:46 2012
@@ -22,6 +22,7 @@ import java.util.Calendar;
 import javax.jcr.RepositoryException;
 import javax.jcr.version.Version;
 
+import org.apache.jackrabbit.rmi.remote.RemoteNode;
 import org.apache.jackrabbit.rmi.remote.RemoteVersion;
 import org.apache.jackrabbit.rmi.remote.RemoteVersionHistory;
 
@@ -76,15 +77,14 @@ public class ServerVersion extends Serve
         }
     }
 
-//  This is only available after 0.16.2
-//    /** {@inheritDoc} */
-//    public RemoteVersionHistory getContainingHistory() throws RepositoryException {
-//        try {
-//            return getFactory().getRemoteVersionHistory(version.getContainingHistory());
-//        } catch (RepositoryException ex) {
-//            throw getRepositoryException(ex);
-//        }
-//    }
+    /** {@inheritDoc} */
+    public RemoteVersionHistory getContainingHistory() throws RepositoryException, RemoteException {
+        try {
+            return getFactory().getRemoteVersionHistory(version.getContainingHistory());
+        } catch (RepositoryException ex) {
+            throw getRepositoryException(ex);
+        }
+    }
 
     /** {@inheritDoc} */
     public Calendar getCreated() throws RepositoryException {
@@ -96,6 +96,21 @@ public class ServerVersion extends Serve
     }
 
     /** {@inheritDoc} */
+    public RemoteVersion getLinearSuccessor() throws RepositoryException,
+    		RemoteException {
+        try {
+            Version linearSuccessor = version.getLinearSuccessor();
+            if (linearSuccessor == null) {
+                return null;
+            } else {
+                return getFactory().getRemoteVersion(linearSuccessor);
+            }
+        } catch (RepositoryException ex) {
+            throw getRepositoryException(ex);
+        }
+    }
+    
+    /** {@inheritDoc} */
     public RemoteVersion[] getSuccessors() throws RepositoryException, RemoteException {
         try {
             return getRemoteVersionArray(version.getSuccessors());
@@ -105,6 +120,21 @@ public class ServerVersion extends Serve
     }
 
     /** {@inheritDoc} */
+    public RemoteVersion getLinearPredecessor() throws RepositoryException,
+    		RemoteException {
+        try {
+            Version linearPredecessor = version.getLinearPredecessor();
+            if (linearPredecessor == null) {
+                return null;
+            } else {
+                return getFactory().getRemoteVersion(linearPredecessor);
+            }
+        } catch (RepositoryException ex) {
+            throw getRepositoryException(ex);
+        }
+    }
+    
+    /** {@inheritDoc} */
     public RemoteVersion[] getPredecessors() throws RepositoryException, RemoteException {
         try {
             return getRemoteVersionArray(version.getPredecessors());
@@ -114,9 +144,10 @@ public class ServerVersion extends Serve
     }
 
     /** {@inheritDoc} */
-    public RemoteVersionHistory getContainingHistory() throws RepositoryException, RemoteException {
+    public RemoteNode getFrozenNode() throws RepositoryException,
+    		RemoteException {
         try {
-            return getFactory().getRemoteVersionHistory(version.getContainingHistory());
+            return getFactory().getRemoteNode(version.getFrozenNode());
         } catch (RepositoryException ex) {
             throw getRepositoryException(ex);
         }

Modified: jackrabbit/trunk/jackrabbit-jcr-rmi/src/main/java/org/apache/jackrabbit/rmi/server/ServerVersionHistory.java
URL: http://svn.apache.org/viewvc/jackrabbit/trunk/jackrabbit-jcr-rmi/src/main/java/org/apache/jackrabbit/rmi/server/ServerVersionHistory.java?rev=1377571&r1=1377570&r2=1377571&view=diff
==============================================================================
--- jackrabbit/trunk/jackrabbit-jcr-rmi/src/main/java/org/apache/jackrabbit/rmi/server/ServerVersionHistory.java (original)
+++ jackrabbit/trunk/jackrabbit-jcr-rmi/src/main/java/org/apache/jackrabbit/rmi/server/ServerVersionHistory.java Mon Aug 27 05:41:46 2012
@@ -56,6 +56,16 @@ public class ServerVersionHistory extend
     }
 
     /** {@inheritDoc} */
+    public String getVersionableIdentifier() throws RepositoryException,
+    		RemoteException {
+        try {
+            return versionHistory.getVersionableIdentifier();
+        } catch (RepositoryException ex) {
+            throw getRepositoryException(ex);
+        }
+    }
+    
+    /** {@inheritDoc} */
     public RemoteVersion getRootVersion()
             throws RepositoryException, RemoteException {
         try {
@@ -66,6 +76,17 @@ public class ServerVersionHistory extend
     }
 
     /** {@inheritDoc} */
+    public RemoteIterator getAllLinearVersions() throws RepositoryException,
+    		RemoteException {
+        try {
+            return getFactory().getRemoteVersionIterator(
+                    versionHistory.getAllLinearVersions());
+        } catch (RepositoryException ex) {
+            throw getRepositoryException(ex);
+        }
+    }
+    
+    /** {@inheritDoc} */
     public RemoteIterator getAllVersions()
             throws RepositoryException, RemoteException {
         try {
@@ -77,6 +98,28 @@ public class ServerVersionHistory extend
     }
 
     /** {@inheritDoc} */
+    public RemoteIterator getAllLinearFrozenNodes() throws RepositoryException,
+    		RemoteException {
+        try {
+            return getFactory().getRemoteNodeIterator(
+                    versionHistory.getAllLinearFrozenNodes());
+        } catch (RepositoryException ex) {
+            throw getRepositoryException(ex);
+        }
+    }
+    
+    /** {@inheritDoc} */
+    public RemoteIterator getAllFrozenNodes() throws RepositoryException,
+    		RemoteException {
+        try {
+            return getFactory().getRemoteNodeIterator(
+                    versionHistory.getAllFrozenNodes());
+        } catch (RepositoryException ex) {
+            throw getRepositoryException(ex);
+        }
+    }
+    
+    /** {@inheritDoc} */
     public RemoteVersion getVersion(String versionName)
         throws RepositoryException, RemoteException {
         try {