You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@jackrabbit.apache.org by re...@apache.org on 2024/01/19 17:36:17 UTC

(jackrabbit) 01/01: JCR-5021: jackrabbit-jcr-rmi: deprecate RMI support "for removal"

This is an automated email from the ASF dual-hosted git repository.

reschke pushed a commit to branch JCR-5021
in repository https://gitbox.apache.org/repos/asf/jackrabbit.git

commit 20405ac058a96442e5c40877e796b08237e496d8
Author: Julian Reschke <re...@apache.org>
AuthorDate: Fri Jan 19 18:35:39 2024 +0100

    JCR-5021: jackrabbit-jcr-rmi: deprecate RMI support "for removal"
---
 .../java/org/apache/jackrabbit/rmi/client/BrokenRemoteRepository.java   | 2 +-
 .../java/org/apache/jackrabbit/rmi/client/ClientAdapterFactory.java     | 2 +-
 .../src/main/java/org/apache/jackrabbit/rmi/client/ClientItem.java      | 2 +-
 .../java/org/apache/jackrabbit/rmi/client/ClientItemDefinition.java     | 2 +-
 .../src/main/java/org/apache/jackrabbit/rmi/client/ClientLock.java      | 2 +-
 .../main/java/org/apache/jackrabbit/rmi/client/ClientLockManager.java   | 2 +-
 .../java/org/apache/jackrabbit/rmi/client/ClientNamespaceRegistry.java  | 2 +-
 .../src/main/java/org/apache/jackrabbit/rmi/client/ClientNode.java      | 2 +-
 .../java/org/apache/jackrabbit/rmi/client/ClientNodeDefinition.java     | 2 +-
 .../src/main/java/org/apache/jackrabbit/rmi/client/ClientNodeType.java  | 2 +-
 .../java/org/apache/jackrabbit/rmi/client/ClientNodeTypeManager.java    | 2 +-
 .../src/main/java/org/apache/jackrabbit/rmi/client/ClientObject.java    | 2 +-
 .../java/org/apache/jackrabbit/rmi/client/ClientObservationManager.java | 2 +-
 .../src/main/java/org/apache/jackrabbit/rmi/client/ClientProperty.java  | 2 +-
 .../java/org/apache/jackrabbit/rmi/client/ClientPropertyDefinition.java | 2 +-
 .../src/main/java/org/apache/jackrabbit/rmi/client/ClientQuery.java     | 2 +-
 .../main/java/org/apache/jackrabbit/rmi/client/ClientQueryManager.java  | 2 +-
 .../main/java/org/apache/jackrabbit/rmi/client/ClientQueryResult.java   | 2 +-
 .../main/java/org/apache/jackrabbit/rmi/client/ClientRepository.java    | 2 +-
 .../java/org/apache/jackrabbit/rmi/client/ClientRepositoryFactory.java  | 2 +-
 .../src/main/java/org/apache/jackrabbit/rmi/client/ClientRow.java       | 2 +-
 .../src/main/java/org/apache/jackrabbit/rmi/client/ClientSession.java   | 2 +-
 .../src/main/java/org/apache/jackrabbit/rmi/client/ClientVersion.java   | 2 +-
 .../java/org/apache/jackrabbit/rmi/client/ClientVersionHistory.java     | 2 +-
 .../java/org/apache/jackrabbit/rmi/client/ClientVersionManager.java     | 2 +-
 .../src/main/java/org/apache/jackrabbit/rmi/client/ClientWorkspace.java | 2 +-
 .../src/main/java/org/apache/jackrabbit/rmi/client/ClientXASession.java | 2 +-
 .../java/org/apache/jackrabbit/rmi/client/DefaultContentHandler.java    | 2 +-
 .../main/java/org/apache/jackrabbit/rmi/client/LocalAdapterFactory.java | 2 +-
 .../org/apache/jackrabbit/rmi/client/RemoteRepositoryException.java     | 2 +-
 .../java/org/apache/jackrabbit/rmi/client/RemoteRuntimeException.java   | 2 +-
 .../java/org/apache/jackrabbit/rmi/client/SafeClientRepository.java     | 2 +-
 .../org/apache/jackrabbit/rmi/client/SerializingContentHandler.java     | 2 +-
 .../java/org/apache/jackrabbit/rmi/client/iterator/ClientIterator.java  | 2 +-
 .../org/apache/jackrabbit/rmi/client/iterator/ClientNodeIterator.java   | 2 +-
 .../apache/jackrabbit/rmi/client/iterator/ClientNodeTypeIterator.java   | 2 +-
 .../apache/jackrabbit/rmi/client/iterator/ClientPropertyIterator.java   | 2 +-
 .../org/apache/jackrabbit/rmi/client/iterator/ClientRowIterator.java    | 2 +-
 .../apache/jackrabbit/rmi/client/iterator/ClientVersionIterator.java    | 2 +-
 .../java/org/apache/jackrabbit/rmi/client/principal/ClientGroup.java    | 2 +-
 .../org/apache/jackrabbit/rmi/client/principal/ClientPrincipal.java     | 2 +-
 .../apache/jackrabbit/rmi/client/principal/ClientPrincipalIterator.java | 2 +-
 .../apache/jackrabbit/rmi/client/security/ClientAccessControlEntry.java | 2 +-
 .../apache/jackrabbit/rmi/client/security/ClientAccessControlList.java  | 2 +-
 .../jackrabbit/rmi/client/security/ClientAccessControlManager.java      | 2 +-
 .../jackrabbit/rmi/client/security/ClientAccessControlPolicy.java       | 2 +-
 .../rmi/client/security/ClientAccessControlPolicyIterator.java          | 2 +-
 .../java/org/apache/jackrabbit/rmi/client/security/ClientPrivilege.java | 2 +-
 .../java/org/apache/jackrabbit/rmi/iterator/ArrayEventIterator.java     | 2 +-
 .../org/apache/jackrabbit/rmi/iterator/ArrayEventListenerIterator.java  | 2 +-
 .../src/main/java/org/apache/jackrabbit/rmi/iterator/ArrayIterator.java | 2 +-
 .../jackrabbit/rmi/jackrabbit/JackrabbitClientAdapterFactory.java       | 2 +-
 .../java/org/apache/jackrabbit/rmi/observation/ClientEventPoll.java     | 2 +-
 .../src/main/java/org/apache/jackrabbit/rmi/observation/Queue.java      | 2 +-
 .../org/apache/jackrabbit/rmi/observation/ServerEventListenerProxy.java | 2 +-
 .../src/main/java/org/apache/jackrabbit/rmi/remote/ArrayIterator.java   | 2 +-
 .../src/main/java/org/apache/jackrabbit/rmi/remote/BufferIterator.java  | 2 +-
 .../java/org/apache/jackrabbit/rmi/remote/RemoteEventCollection.java    | 2 +-
 .../src/main/java/org/apache/jackrabbit/rmi/remote/RemoteItem.java      | 2 +-
 .../java/org/apache/jackrabbit/rmi/remote/RemoteItemDefinition.java     | 2 +-
 .../src/main/java/org/apache/jackrabbit/rmi/remote/RemoteIterator.java  | 2 +-
 .../src/main/java/org/apache/jackrabbit/rmi/remote/RemoteLock.java      | 2 +-
 .../main/java/org/apache/jackrabbit/rmi/remote/RemoteLockManager.java   | 2 +-
 .../java/org/apache/jackrabbit/rmi/remote/RemoteNamespaceRegistry.java  | 2 +-
 .../src/main/java/org/apache/jackrabbit/rmi/remote/RemoteNode.java      | 2 +-
 .../java/org/apache/jackrabbit/rmi/remote/RemoteNodeDefinition.java     | 2 +-
 .../src/main/java/org/apache/jackrabbit/rmi/remote/RemoteNodeType.java  | 2 +-
 .../java/org/apache/jackrabbit/rmi/remote/RemoteNodeTypeManager.java    | 2 +-
 .../java/org/apache/jackrabbit/rmi/remote/RemoteObservationManager.java | 2 +-
 .../src/main/java/org/apache/jackrabbit/rmi/remote/RemoteProperty.java  | 2 +-
 .../java/org/apache/jackrabbit/rmi/remote/RemotePropertyDefinition.java | 2 +-
 .../src/main/java/org/apache/jackrabbit/rmi/remote/RemoteQuery.java     | 2 +-
 .../main/java/org/apache/jackrabbit/rmi/remote/RemoteQueryManager.java  | 2 +-
 .../main/java/org/apache/jackrabbit/rmi/remote/RemoteQueryResult.java   | 2 +-
 .../main/java/org/apache/jackrabbit/rmi/remote/RemoteRepository.java    | 2 +-
 .../src/main/java/org/apache/jackrabbit/rmi/remote/RemoteRow.java       | 2 +-
 .../src/main/java/org/apache/jackrabbit/rmi/remote/RemoteSession.java   | 2 +-
 .../src/main/java/org/apache/jackrabbit/rmi/remote/RemoteVersion.java   | 2 +-
 .../java/org/apache/jackrabbit/rmi/remote/RemoteVersionHistory.java     | 2 +-
 .../java/org/apache/jackrabbit/rmi/remote/RemoteVersionManager.java     | 2 +-
 .../src/main/java/org/apache/jackrabbit/rmi/remote/RemoteWorkspace.java | 2 +-
 .../src/main/java/org/apache/jackrabbit/rmi/remote/RemoteXASession.java | 2 +-
 .../src/main/java/org/apache/jackrabbit/rmi/remote/SerializableXid.java | 2 +-
 .../java/org/apache/jackrabbit/rmi/remote/principal/RemoteGroup.java    | 2 +-
 .../org/apache/jackrabbit/rmi/remote/principal/RemotePrincipal.java     | 2 +-
 .../apache/jackrabbit/rmi/remote/security/RemoteAccessControlEntry.java | 2 +-
 .../apache/jackrabbit/rmi/remote/security/RemoteAccessControlList.java  | 2 +-
 .../jackrabbit/rmi/remote/security/RemoteAccessControlManager.java      | 2 +-
 .../jackrabbit/rmi/remote/security/RemoteAccessControlPolicy.java       | 2 +-
 .../java/org/apache/jackrabbit/rmi/remote/security/RemotePrivilege.java | 2 +-
 .../jackrabbit/rmi/repository/AbstractRemoteRepositoryFactory.java      | 2 +-
 .../java/org/apache/jackrabbit/rmi/repository/JNDIRemoteRepository.java | 2 +-
 .../apache/jackrabbit/rmi/repository/JNDIRemoteRepositoryFactory.java   | 2 +-
 .../main/java/org/apache/jackrabbit/rmi/repository/ProxyRepository.java | 2 +-
 .../java/org/apache/jackrabbit/rmi/repository/RMIRemoteRepository.java  | 2 +-
 .../apache/jackrabbit/rmi/repository/RMIRemoteRepositoryFactory.java    | 2 +-
 .../java/org/apache/jackrabbit/rmi/repository/RepositoryFactory.java    | 2 +-
 .../java/org/apache/jackrabbit/rmi/repository/RmiRepositoryFactory.java | 2 +-
 .../java/org/apache/jackrabbit/rmi/repository/URLRemoteRepository.java  | 2 +-
 .../apache/jackrabbit/rmi/repository/URLRemoteRepositoryFactory.java    | 2 +-
 .../java/org/apache/jackrabbit/rmi/server/RemoteAdapterFactory.java     | 2 +-
 .../java/org/apache/jackrabbit/rmi/server/ServerAdapterFactory.java     | 2 +-
 .../java/org/apache/jackrabbit/rmi/server/ServerEventCollection.java    | 2 +-
 .../src/main/java/org/apache/jackrabbit/rmi/server/ServerItem.java      | 2 +-
 .../java/org/apache/jackrabbit/rmi/server/ServerItemDefinition.java     | 2 +-
 .../src/main/java/org/apache/jackrabbit/rmi/server/ServerLock.java      | 2 +-
 .../main/java/org/apache/jackrabbit/rmi/server/ServerLockManager.java   | 2 +-
 .../java/org/apache/jackrabbit/rmi/server/ServerNamespaceRegistry.java  | 2 +-
 .../src/main/java/org/apache/jackrabbit/rmi/server/ServerNode.java      | 2 +-
 .../java/org/apache/jackrabbit/rmi/server/ServerNodeDefinition.java     | 2 +-
 .../src/main/java/org/apache/jackrabbit/rmi/server/ServerNodeType.java  | 2 +-
 .../java/org/apache/jackrabbit/rmi/server/ServerNodeTypeManager.java    | 2 +-
 .../src/main/java/org/apache/jackrabbit/rmi/server/ServerObject.java    | 2 +-
 .../java/org/apache/jackrabbit/rmi/server/ServerObservationManager.java | 2 +-
 .../src/main/java/org/apache/jackrabbit/rmi/server/ServerProperty.java  | 2 +-
 .../java/org/apache/jackrabbit/rmi/server/ServerPropertyDefinition.java | 2 +-
 .../src/main/java/org/apache/jackrabbit/rmi/server/ServerQuery.java     | 2 +-
 .../main/java/org/apache/jackrabbit/rmi/server/ServerQueryManager.java  | 2 +-
 .../main/java/org/apache/jackrabbit/rmi/server/ServerQueryResult.java   | 2 +-
 .../main/java/org/apache/jackrabbit/rmi/server/ServerRepository.java    | 2 +-
 .../src/main/java/org/apache/jackrabbit/rmi/server/ServerRow.java       | 2 +-
 .../src/main/java/org/apache/jackrabbit/rmi/server/ServerSession.java   | 2 +-
 .../src/main/java/org/apache/jackrabbit/rmi/server/ServerVersion.java   | 2 +-
 .../java/org/apache/jackrabbit/rmi/server/ServerVersionHistory.java     | 2 +-
 .../java/org/apache/jackrabbit/rmi/server/ServerVersionManager.java     | 2 +-
 .../src/main/java/org/apache/jackrabbit/rmi/server/ServerWorkspace.java | 2 +-
 .../src/main/java/org/apache/jackrabbit/rmi/server/ServerXASession.java | 2 +-
 .../java/org/apache/jackrabbit/rmi/server/iterator/ServerIterator.java  | 2 +-
 .../org/apache/jackrabbit/rmi/server/iterator/ServerNodeIterator.java   | 2 +-
 .../apache/jackrabbit/rmi/server/iterator/ServerNodeTypeIterator.java   | 2 +-
 .../apache/jackrabbit/rmi/server/iterator/ServerPropertyIterator.java   | 2 +-
 .../org/apache/jackrabbit/rmi/server/iterator/ServerRowIterator.java    | 2 +-
 .../apache/jackrabbit/rmi/server/iterator/ServerVersionIterator.java    | 2 +-
 .../src/main/java/org/apache/jackrabbit/rmi/server/jmx/JCRServer.java   | 2 +-
 .../main/java/org/apache/jackrabbit/rmi/server/jmx/JCRServerMBean.java  | 2 +-
 .../java/org/apache/jackrabbit/rmi/server/principal/ServerGroup.java    | 2 +-
 .../org/apache/jackrabbit/rmi/server/principal/ServerPrincipal.java     | 2 +-
 .../apache/jackrabbit/rmi/server/principal/ServerPrincipalIterator.java | 2 +-
 .../apache/jackrabbit/rmi/server/security/ServerAccessControlEntry.java | 2 +-
 .../apache/jackrabbit/rmi/server/security/ServerAccessControlList.java  | 2 +-
 .../jackrabbit/rmi/server/security/ServerAccessControlManager.java      | 2 +-
 .../jackrabbit/rmi/server/security/ServerAccessControlPolicy.java       | 2 +-
 .../rmi/server/security/ServerAccessControlPolicyIterator.java          | 2 +-
 .../java/org/apache/jackrabbit/rmi/server/security/ServerPrivilege.java | 2 +-
 .../src/main/java/org/apache/jackrabbit/rmi/value/AbstractValue.java    | 2 +-
 .../src/main/java/org/apache/jackrabbit/rmi/value/BinaryValue.java      | 2 +-
 .../src/main/java/org/apache/jackrabbit/rmi/value/BooleanValue.java     | 2 +-
 .../src/main/java/org/apache/jackrabbit/rmi/value/DateValue.java        | 2 +-
 .../src/main/java/org/apache/jackrabbit/rmi/value/DecimalValue.java     | 2 +-
 .../src/main/java/org/apache/jackrabbit/rmi/value/DoubleValue.java      | 2 +-
 .../src/main/java/org/apache/jackrabbit/rmi/value/LongValue.java        | 2 +-
 .../src/main/java/org/apache/jackrabbit/rmi/value/NameValue.java        | 2 +-
 .../src/main/java/org/apache/jackrabbit/rmi/value/PathValue.java        | 2 +-
 .../src/main/java/org/apache/jackrabbit/rmi/value/ReferenceValue.java   | 2 +-
 .../main/java/org/apache/jackrabbit/rmi/value/SerialValueFactory.java   | 2 +-
 .../main/java/org/apache/jackrabbit/rmi/value/SerializableBinary.java   | 2 +-
 .../src/main/java/org/apache/jackrabbit/rmi/value/StringValue.java      | 2 +-
 .../src/test/java/org/apache/jackrabbit/rmi/ConformanceTest.java        | 2 +-
 .../src/test/java/org/apache/jackrabbit/rmi/RepositoryStubImpl.java     | 2 +-
 159 files changed, 159 insertions(+), 159 deletions(-)

diff --git a/jackrabbit-jcr-rmi/src/main/java/org/apache/jackrabbit/rmi/client/BrokenRemoteRepository.java b/jackrabbit-jcr-rmi/src/main/java/org/apache/jackrabbit/rmi/client/BrokenRemoteRepository.java
index efb1408d0..1b4c329c9 100644
--- a/jackrabbit-jcr-rmi/src/main/java/org/apache/jackrabbit/rmi/client/BrokenRemoteRepository.java
+++ b/jackrabbit-jcr-rmi/src/main/java/org/apache/jackrabbit/rmi/client/BrokenRemoteRepository.java
@@ -31,7 +31,7 @@ import org.apache.jackrabbit.rmi.remote.RemoteSession;
  * whenever any method is invoked. Used as a sentinel object by the
  * {@link SafeClientRepository} class.
  */
-@Deprecated public class BrokenRemoteRepository implements RemoteRepository {
+@Deprecated(forRemoval = true) public class BrokenRemoteRepository implements RemoteRepository {
 
     /**
      * The remote exception thrown by methods of this instance.
diff --git a/jackrabbit-jcr-rmi/src/main/java/org/apache/jackrabbit/rmi/client/ClientAdapterFactory.java b/jackrabbit-jcr-rmi/src/main/java/org/apache/jackrabbit/rmi/client/ClientAdapterFactory.java
index 5b5007e28..7b8c50eaa 100644
--- a/jackrabbit-jcr-rmi/src/main/java/org/apache/jackrabbit/rmi/client/ClientAdapterFactory.java
+++ b/jackrabbit-jcr-rmi/src/main/java/org/apache/jackrabbit/rmi/client/ClientAdapterFactory.java
@@ -108,7 +108,7 @@ import org.apache.jackrabbit.rmi.remote.security.RemotePrivilege;
  * easily override or extend the default adapters by implementing the
  * corresponding factory methods.
  */
-@Deprecated public class ClientAdapterFactory implements LocalAdapterFactory {
+@Deprecated(forRemoval = true) public class ClientAdapterFactory implements LocalAdapterFactory {
 
     /**
      * Creates and returns a {@link ClientRepository ClientRepository}
diff --git a/jackrabbit-jcr-rmi/src/main/java/org/apache/jackrabbit/rmi/client/ClientItem.java b/jackrabbit-jcr-rmi/src/main/java/org/apache/jackrabbit/rmi/client/ClientItem.java
index 6be987761..901e34004 100644
--- a/jackrabbit-jcr-rmi/src/main/java/org/apache/jackrabbit/rmi/client/ClientItem.java
+++ b/jackrabbit-jcr-rmi/src/main/java/org/apache/jackrabbit/rmi/client/ClientItem.java
@@ -42,7 +42,7 @@ import org.apache.jackrabbit.rmi.remote.RemoteItem;
  * @see javax.jcr.Item
  * @see org.apache.jackrabbit.rmi.remote.RemoteItem
  */
-@Deprecated public class ClientItem extends ClientObject implements Item {
+@Deprecated(forRemoval = true) public class ClientItem extends ClientObject implements Item {
 
     /** Current session. */
     private Session session;
diff --git a/jackrabbit-jcr-rmi/src/main/java/org/apache/jackrabbit/rmi/client/ClientItemDefinition.java b/jackrabbit-jcr-rmi/src/main/java/org/apache/jackrabbit/rmi/client/ClientItemDefinition.java
index 34785c5d9..a602adc16 100644
--- a/jackrabbit-jcr-rmi/src/main/java/org/apache/jackrabbit/rmi/client/ClientItemDefinition.java
+++ b/jackrabbit-jcr-rmi/src/main/java/org/apache/jackrabbit/rmi/client/ClientItemDefinition.java
@@ -39,7 +39,7 @@ import org.apache.jackrabbit.rmi.remote.RemoteNodeType;
  * @see javax.jcr.nodetype.ItemDefinition
  * @see org.apache.jackrabbit.rmi.remote.RemoteItemDefinition
  */
-@Deprecated public class ClientItemDefinition extends ClientObject implements ItemDefinition {
+@Deprecated(forRemoval = true) public class ClientItemDefinition extends ClientObject implements ItemDefinition {
 
     /** The adapted remote item definition. */
     private RemoteItemDefinition remote;
diff --git a/jackrabbit-jcr-rmi/src/main/java/org/apache/jackrabbit/rmi/client/ClientLock.java b/jackrabbit-jcr-rmi/src/main/java/org/apache/jackrabbit/rmi/client/ClientLock.java
index 9d27d87a5..39e32ad76 100644
--- a/jackrabbit-jcr-rmi/src/main/java/org/apache/jackrabbit/rmi/client/ClientLock.java
+++ b/jackrabbit-jcr-rmi/src/main/java/org/apache/jackrabbit/rmi/client/ClientLock.java
@@ -36,7 +36,7 @@ import org.apache.jackrabbit.rmi.remote.RemoteLock;
  * @see javax.jcr.lock.Lock
  * @see org.apache.jackrabbit.rmi.remote.RemoteLock
  */
-@Deprecated public class ClientLock extends ClientObject implements Lock {
+@Deprecated(forRemoval = true) public class ClientLock extends ClientObject implements Lock {
 
     /** Current session. */
     private Session session;
diff --git a/jackrabbit-jcr-rmi/src/main/java/org/apache/jackrabbit/rmi/client/ClientLockManager.java b/jackrabbit-jcr-rmi/src/main/java/org/apache/jackrabbit/rmi/client/ClientLockManager.java
index 1a6218c2c..02ca2d94f 100644
--- a/jackrabbit-jcr-rmi/src/main/java/org/apache/jackrabbit/rmi/client/ClientLockManager.java
+++ b/jackrabbit-jcr-rmi/src/main/java/org/apache/jackrabbit/rmi/client/ClientLockManager.java
@@ -25,7 +25,7 @@ import javax.jcr.lock.LockManager;
 
 import org.apache.jackrabbit.rmi.remote.RemoteLockManager;
 
-@Deprecated public class ClientLockManager extends ClientObject implements LockManager {
+@Deprecated(forRemoval = true) public class ClientLockManager extends ClientObject implements LockManager {
 
     /** The current session. */
     private Session session;
diff --git a/jackrabbit-jcr-rmi/src/main/java/org/apache/jackrabbit/rmi/client/ClientNamespaceRegistry.java b/jackrabbit-jcr-rmi/src/main/java/org/apache/jackrabbit/rmi/client/ClientNamespaceRegistry.java
index 364d6bcc8..0a95cc576 100644
--- a/jackrabbit-jcr-rmi/src/main/java/org/apache/jackrabbit/rmi/client/ClientNamespaceRegistry.java
+++ b/jackrabbit-jcr-rmi/src/main/java/org/apache/jackrabbit/rmi/client/ClientNamespaceRegistry.java
@@ -35,7 +35,7 @@ import org.apache.jackrabbit.rmi.remote.RemoteNamespaceRegistry;
  * @see javax.jcr.NamespaceRegistry
  * @see org.apache.jackrabbit.rmi.remote.RemoteNamespaceRegistry
  */
-@Deprecated public class ClientNamespaceRegistry extends ClientObject implements
+@Deprecated(forRemoval = true) public class ClientNamespaceRegistry extends ClientObject implements
         NamespaceRegistry {
 
     /** The adapted remote namespace registry. */
diff --git a/jackrabbit-jcr-rmi/src/main/java/org/apache/jackrabbit/rmi/client/ClientNode.java b/jackrabbit-jcr-rmi/src/main/java/org/apache/jackrabbit/rmi/client/ClientNode.java
index 76bbed5ac..eb970ebea 100644
--- a/jackrabbit-jcr-rmi/src/main/java/org/apache/jackrabbit/rmi/client/ClientNode.java
+++ b/jackrabbit-jcr-rmi/src/main/java/org/apache/jackrabbit/rmi/client/ClientNode.java
@@ -53,7 +53,7 @@ import org.apache.jackrabbit.rmi.value.SerialValueFactory;
  * @see javax.jcr.Node
  * @see org.apache.jackrabbit.rmi.remote.RemoteNode
  */
-@Deprecated public class ClientNode extends ClientItem implements Node {
+@Deprecated(forRemoval = true) public class ClientNode extends ClientItem implements Node {
 
     /** The adapted remote node. */
     private RemoteNode remote;
diff --git a/jackrabbit-jcr-rmi/src/main/java/org/apache/jackrabbit/rmi/client/ClientNodeDefinition.java b/jackrabbit-jcr-rmi/src/main/java/org/apache/jackrabbit/rmi/client/ClientNodeDefinition.java
index de52d5fb5..05cbc5685 100644
--- a/jackrabbit-jcr-rmi/src/main/java/org/apache/jackrabbit/rmi/client/ClientNodeDefinition.java
+++ b/jackrabbit-jcr-rmi/src/main/java/org/apache/jackrabbit/rmi/client/ClientNodeDefinition.java
@@ -35,7 +35,7 @@ import org.apache.jackrabbit.rmi.remote.RemoteNodeType;
  * @see javax.jcr.nodetype.NodeDefinition
  * @see org.apache.jackrabbit.rmi.remote.RemoteNodeDefinition
  */
-@Deprecated public class ClientNodeDefinition extends ClientItemDefinition implements NodeDefinition {
+@Deprecated(forRemoval = true) public class ClientNodeDefinition extends ClientItemDefinition implements NodeDefinition {
 
     /** The adapted remote node definition. */
     private RemoteNodeDefinition remote;
diff --git a/jackrabbit-jcr-rmi/src/main/java/org/apache/jackrabbit/rmi/client/ClientNodeType.java b/jackrabbit-jcr-rmi/src/main/java/org/apache/jackrabbit/rmi/client/ClientNodeType.java
index e122288e1..37bf47364 100644
--- a/jackrabbit-jcr-rmi/src/main/java/org/apache/jackrabbit/rmi/client/ClientNodeType.java
+++ b/jackrabbit-jcr-rmi/src/main/java/org/apache/jackrabbit/rmi/client/ClientNodeType.java
@@ -41,7 +41,7 @@ import org.apache.jackrabbit.rmi.value.SerialValueFactory;
  * @see javax.jcr.nodetype.NodeType
  * @see org.apache.jackrabbit.rmi.remote.RemoteNodeType
  */
-@Deprecated public class ClientNodeType extends ClientObject implements NodeType {
+@Deprecated(forRemoval = true) public class ClientNodeType extends ClientObject implements NodeType {
 
     /** The adapted remote node type. */
     private RemoteNodeType remote;
diff --git a/jackrabbit-jcr-rmi/src/main/java/org/apache/jackrabbit/rmi/client/ClientNodeTypeManager.java b/jackrabbit-jcr-rmi/src/main/java/org/apache/jackrabbit/rmi/client/ClientNodeTypeManager.java
index b60113577..2a4555521 100644
--- a/jackrabbit-jcr-rmi/src/main/java/org/apache/jackrabbit/rmi/client/ClientNodeTypeManager.java
+++ b/jackrabbit-jcr-rmi/src/main/java/org/apache/jackrabbit/rmi/client/ClientNodeTypeManager.java
@@ -42,7 +42,7 @@ import org.apache.jackrabbit.rmi.remote.RemoteNodeTypeManager;
  * @see javax.jcr.nodetype.NodeTypeManager
  * @see org.apache.jackrabbit.rmi.remote.RemoteNodeTypeManager
  */
-@Deprecated public class ClientNodeTypeManager extends ClientObject
+@Deprecated(forRemoval = true) public class ClientNodeTypeManager extends ClientObject
         implements NodeTypeManager {
 
     /** The adapted remote node type manager. */
diff --git a/jackrabbit-jcr-rmi/src/main/java/org/apache/jackrabbit/rmi/client/ClientObject.java b/jackrabbit-jcr-rmi/src/main/java/org/apache/jackrabbit/rmi/client/ClientObject.java
index 79cedec65..524161992 100644
--- a/jackrabbit-jcr-rmi/src/main/java/org/apache/jackrabbit/rmi/client/ClientObject.java
+++ b/jackrabbit-jcr-rmi/src/main/java/org/apache/jackrabbit/rmi/client/ClientObject.java
@@ -36,7 +36,7 @@ import org.apache.jackrabbit.rmi.remote.RemoteVersionHistory;
  * local adapter factory used by the client adapters to
  * instantiate new adapters.
  */
-@Deprecated public class ClientObject {
+@Deprecated(forRemoval = true) public class ClientObject {
 
     /** Local adapter factory. */
     private LocalAdapterFactory factory;
diff --git a/jackrabbit-jcr-rmi/src/main/java/org/apache/jackrabbit/rmi/client/ClientObservationManager.java b/jackrabbit-jcr-rmi/src/main/java/org/apache/jackrabbit/rmi/client/ClientObservationManager.java
index dee8bc99b..e30761eaf 100644
--- a/jackrabbit-jcr-rmi/src/main/java/org/apache/jackrabbit/rmi/client/ClientObservationManager.java
+++ b/jackrabbit-jcr-rmi/src/main/java/org/apache/jackrabbit/rmi/client/ClientObservationManager.java
@@ -49,7 +49,7 @@ import org.apache.jackrabbit.rmi.remote.RemoteObservationManager;
  *
  * @see org.apache.jackrabbit.rmi.observation.ClientEventPoll
  */
-@Deprecated public class ClientObservationManager extends ClientObject implements
+@Deprecated(forRemoval = true) public class ClientObservationManager extends ClientObject implements
         ObservationManager {
 
     /** The remote observation manager */
diff --git a/jackrabbit-jcr-rmi/src/main/java/org/apache/jackrabbit/rmi/client/ClientProperty.java b/jackrabbit-jcr-rmi/src/main/java/org/apache/jackrabbit/rmi/client/ClientProperty.java
index 8646f1e4c..16f0359f6 100644
--- a/jackrabbit-jcr-rmi/src/main/java/org/apache/jackrabbit/rmi/client/ClientProperty.java
+++ b/jackrabbit-jcr-rmi/src/main/java/org/apache/jackrabbit/rmi/client/ClientProperty.java
@@ -49,7 +49,7 @@ import org.apache.jackrabbit.rmi.value.SerialValueFactory;
  * @see javax.jcr.Property
  * @see org.apache.jackrabbit.rmi.remote.RemoteProperty
  */
-@Deprecated public class ClientProperty extends ClientItem implements Property {
+@Deprecated(forRemoval = true) public class ClientProperty extends ClientItem implements Property {
 
     /** The adapted remote property. */
     private RemoteProperty remote;
diff --git a/jackrabbit-jcr-rmi/src/main/java/org/apache/jackrabbit/rmi/client/ClientPropertyDefinition.java b/jackrabbit-jcr-rmi/src/main/java/org/apache/jackrabbit/rmi/client/ClientPropertyDefinition.java
index 0fdec0628..161ba536f 100644
--- a/jackrabbit-jcr-rmi/src/main/java/org/apache/jackrabbit/rmi/client/ClientPropertyDefinition.java
+++ b/jackrabbit-jcr-rmi/src/main/java/org/apache/jackrabbit/rmi/client/ClientPropertyDefinition.java
@@ -34,7 +34,7 @@ import org.apache.jackrabbit.rmi.remote.RemotePropertyDefinition;
  * @see javax.jcr.nodetype.PropertyDefinition
  * @see org.apache.jackrabbit.rmi.remote.RemotePropertyDefinition
  */
-@Deprecated public class ClientPropertyDefinition extends ClientItemDefinition implements PropertyDefinition {
+@Deprecated(forRemoval = true) public class ClientPropertyDefinition extends ClientItemDefinition implements PropertyDefinition {
 
     /** The adapted remote property. */
     private RemotePropertyDefinition remote;
diff --git a/jackrabbit-jcr-rmi/src/main/java/org/apache/jackrabbit/rmi/client/ClientQuery.java b/jackrabbit-jcr-rmi/src/main/java/org/apache/jackrabbit/rmi/client/ClientQuery.java
index 65d9d821f..aee001a45 100644
--- a/jackrabbit-jcr-rmi/src/main/java/org/apache/jackrabbit/rmi/client/ClientQuery.java
+++ b/jackrabbit-jcr-rmi/src/main/java/org/apache/jackrabbit/rmi/client/ClientQuery.java
@@ -38,7 +38,7 @@ import org.apache.jackrabbit.rmi.remote.RemoteQuery;
  * @see javax.jcr.query.Query Query
  * @see org.apache.jackrabbit.rmi.remote.RemoteQuery
  */
-@Deprecated public class ClientQuery extends ClientObject implements Query {
+@Deprecated(forRemoval = true) public class ClientQuery extends ClientObject implements Query {
 
     /** The current session */
     private Session session;
diff --git a/jackrabbit-jcr-rmi/src/main/java/org/apache/jackrabbit/rmi/client/ClientQueryManager.java b/jackrabbit-jcr-rmi/src/main/java/org/apache/jackrabbit/rmi/client/ClientQueryManager.java
index f29f40b93..3590c2be6 100644
--- a/jackrabbit-jcr-rmi/src/main/java/org/apache/jackrabbit/rmi/client/ClientQueryManager.java
+++ b/jackrabbit-jcr-rmi/src/main/java/org/apache/jackrabbit/rmi/client/ClientQueryManager.java
@@ -38,7 +38,7 @@ import org.apache.jackrabbit.rmi.remote.RemoteQueryManager;
  * @see javax.jcr.query.QueryManager QueryManager
  * @see org.apache.jackrabbit.rmi.remote.RemoteQueryManager
  */
-@Deprecated public class ClientQueryManager extends ClientObject implements QueryManager {
+@Deprecated(forRemoval = true) public class ClientQueryManager extends ClientObject implements QueryManager {
 
     /** The current session */
     private Session session;
diff --git a/jackrabbit-jcr-rmi/src/main/java/org/apache/jackrabbit/rmi/client/ClientQueryResult.java b/jackrabbit-jcr-rmi/src/main/java/org/apache/jackrabbit/rmi/client/ClientQueryResult.java
index 030a786e9..a03b45862 100644
--- a/jackrabbit-jcr-rmi/src/main/java/org/apache/jackrabbit/rmi/client/ClientQueryResult.java
+++ b/jackrabbit-jcr-rmi/src/main/java/org/apache/jackrabbit/rmi/client/ClientQueryResult.java
@@ -37,7 +37,7 @@ import org.apache.jackrabbit.rmi.remote.RemoteQueryResult;
  * @see javax.jcr.query.QueryResult QueryResult
  * @see org.apache.jackrabbit.rmi.remote.RemoteQueryResult
  */
-@Deprecated public class ClientQueryResult extends ClientObject implements QueryResult {
+@Deprecated(forRemoval = true) public class ClientQueryResult extends ClientObject implements QueryResult {
 
     /** The current session */
     private Session session;
diff --git a/jackrabbit-jcr-rmi/src/main/java/org/apache/jackrabbit/rmi/client/ClientRepository.java b/jackrabbit-jcr-rmi/src/main/java/org/apache/jackrabbit/rmi/client/ClientRepository.java
index 974af7134..07285c7c9 100644
--- a/jackrabbit-jcr-rmi/src/main/java/org/apache/jackrabbit/rmi/client/ClientRepository.java
+++ b/jackrabbit-jcr-rmi/src/main/java/org/apache/jackrabbit/rmi/client/ClientRepository.java
@@ -41,7 +41,7 @@ import org.apache.jackrabbit.rmi.value.SerialValueFactory;
  * @see javax.jcr.Repository
  * @see org.apache.jackrabbit.rmi.remote.RemoteRepository
  */
-@Deprecated public class ClientRepository implements Repository {
+@Deprecated(forRemoval = true) public class ClientRepository implements Repository {
 
     /**
      * The set of standard descriptor keys defined in the
diff --git a/jackrabbit-jcr-rmi/src/main/java/org/apache/jackrabbit/rmi/client/ClientRepositoryFactory.java b/jackrabbit-jcr-rmi/src/main/java/org/apache/jackrabbit/rmi/client/ClientRepositoryFactory.java
index b360ef4f7..dd7856368 100644
--- a/jackrabbit-jcr-rmi/src/main/java/org/apache/jackrabbit/rmi/client/ClientRepositoryFactory.java
+++ b/jackrabbit-jcr-rmi/src/main/java/org/apache/jackrabbit/rmi/client/ClientRepositoryFactory.java
@@ -39,7 +39,7 @@ import org.apache.jackrabbit.rmi.remote.RemoteRepository;
  *
  * @see ClientRepository
  */
-@Deprecated public class ClientRepositoryFactory implements ObjectFactory {
+@Deprecated(forRemoval = true) public class ClientRepositoryFactory implements ObjectFactory {
 
     /**
      * The JNDI parameter name for configuring the RMI URL of
diff --git a/jackrabbit-jcr-rmi/src/main/java/org/apache/jackrabbit/rmi/client/ClientRow.java b/jackrabbit-jcr-rmi/src/main/java/org/apache/jackrabbit/rmi/client/ClientRow.java
index f64aa8317..38701da76 100644
--- a/jackrabbit-jcr-rmi/src/main/java/org/apache/jackrabbit/rmi/client/ClientRow.java
+++ b/jackrabbit-jcr-rmi/src/main/java/org/apache/jackrabbit/rmi/client/ClientRow.java
@@ -36,7 +36,7 @@ import org.apache.jackrabbit.rmi.remote.RemoteRow;
  * @see javax.jcr.query.Row Row
  * @see org.apache.jackrabbit.rmi.remote.RemoteRow
  */
-@Deprecated public class ClientRow extends ClientObject implements Row {
+@Deprecated(forRemoval = true) public class ClientRow extends ClientObject implements Row {
 
     /** Current session. */
     private Session session;
diff --git a/jackrabbit-jcr-rmi/src/main/java/org/apache/jackrabbit/rmi/client/ClientSession.java b/jackrabbit-jcr-rmi/src/main/java/org/apache/jackrabbit/rmi/client/ClientSession.java
index b74e8ee0a..a07769bbd 100644
--- a/jackrabbit-jcr-rmi/src/main/java/org/apache/jackrabbit/rmi/client/ClientSession.java
+++ b/jackrabbit-jcr-rmi/src/main/java/org/apache/jackrabbit/rmi/client/ClientSession.java
@@ -63,7 +63,7 @@ import org.xml.sax.SAXException;
  * @see javax.jcr.Session
  * @see org.apache.jackrabbit.rmi.remote.RemoteSession
  */
-@Deprecated public class ClientSession extends ClientObject implements Session {
+@Deprecated(forRemoval = true) public class ClientSession extends ClientObject implements Session {
 
     /**
      * Logger instance.
diff --git a/jackrabbit-jcr-rmi/src/main/java/org/apache/jackrabbit/rmi/client/ClientVersion.java b/jackrabbit-jcr-rmi/src/main/java/org/apache/jackrabbit/rmi/client/ClientVersion.java
index 8f101222f..c48b605a7 100644
--- a/jackrabbit-jcr-rmi/src/main/java/org/apache/jackrabbit/rmi/client/ClientVersion.java
+++ b/jackrabbit-jcr-rmi/src/main/java/org/apache/jackrabbit/rmi/client/ClientVersion.java
@@ -38,7 +38,7 @@ import org.apache.jackrabbit.rmi.remote.RemoteVersion;
  * @see javax.jcr.version.Version
  * @see org.apache.jackrabbit.rmi.remote.RemoteVersion
  */
-@Deprecated public class ClientVersion extends ClientNode implements Version {
+@Deprecated(forRemoval = true) public class ClientVersion extends ClientNode implements Version {
 
     /** The adapted remote version. */
     private RemoteVersion remote;
diff --git a/jackrabbit-jcr-rmi/src/main/java/org/apache/jackrabbit/rmi/client/ClientVersionHistory.java b/jackrabbit-jcr-rmi/src/main/java/org/apache/jackrabbit/rmi/client/ClientVersionHistory.java
index 5c495526b..6e6887b8d 100644
--- a/jackrabbit-jcr-rmi/src/main/java/org/apache/jackrabbit/rmi/client/ClientVersionHistory.java
+++ b/jackrabbit-jcr-rmi/src/main/java/org/apache/jackrabbit/rmi/client/ClientVersionHistory.java
@@ -40,7 +40,7 @@ import org.apache.jackrabbit.rmi.remote.RemoteVersionHistory;
  * @see javax.jcr.version.VersionHistory
  * @see org.apache.jackrabbit.rmi.remote.RemoteVersionHistory
  */
-@Deprecated public class ClientVersionHistory extends ClientNode implements VersionHistory {
+@Deprecated(forRemoval = true) public class ClientVersionHistory extends ClientNode implements VersionHistory {
 
     /** The adapted remote version history. */
     private RemoteVersionHistory remote;
diff --git a/jackrabbit-jcr-rmi/src/main/java/org/apache/jackrabbit/rmi/client/ClientVersionManager.java b/jackrabbit-jcr-rmi/src/main/java/org/apache/jackrabbit/rmi/client/ClientVersionManager.java
index 7cf35518d..502146b85 100644
--- a/jackrabbit-jcr-rmi/src/main/java/org/apache/jackrabbit/rmi/client/ClientVersionManager.java
+++ b/jackrabbit-jcr-rmi/src/main/java/org/apache/jackrabbit/rmi/client/ClientVersionManager.java
@@ -30,7 +30,7 @@ import org.apache.jackrabbit.rmi.remote.RemoteIterator;
 import org.apache.jackrabbit.rmi.remote.RemoteNode;
 import org.apache.jackrabbit.rmi.remote.RemoteVersionManager;
 
-@Deprecated public class ClientVersionManager extends ClientObject
+@Deprecated(forRemoval = true) public class ClientVersionManager extends ClientObject
         implements VersionManager {
 
     /** The current session. */
diff --git a/jackrabbit-jcr-rmi/src/main/java/org/apache/jackrabbit/rmi/client/ClientWorkspace.java b/jackrabbit-jcr-rmi/src/main/java/org/apache/jackrabbit/rmi/client/ClientWorkspace.java
index 1bcf10d30..ec8e74e53 100644
--- a/jackrabbit-jcr-rmi/src/main/java/org/apache/jackrabbit/rmi/client/ClientWorkspace.java
+++ b/jackrabbit-jcr-rmi/src/main/java/org/apache/jackrabbit/rmi/client/ClientWorkspace.java
@@ -49,7 +49,7 @@ import org.xml.sax.SAXException;
  * @see javax.jcr.Workspace
  * @see org.apache.jackrabbit.rmi.remote.RemoteWorkspace
  */
-@Deprecated public class ClientWorkspace extends ClientObject implements Workspace {
+@Deprecated(forRemoval = true) public class ClientWorkspace extends ClientObject implements Workspace {
 
     /** The current session. */
     private Session session;
diff --git a/jackrabbit-jcr-rmi/src/main/java/org/apache/jackrabbit/rmi/client/ClientXASession.java b/jackrabbit-jcr-rmi/src/main/java/org/apache/jackrabbit/rmi/client/ClientXASession.java
index 4aea1217f..d9fcb0f12 100644
--- a/jackrabbit-jcr-rmi/src/main/java/org/apache/jackrabbit/rmi/client/ClientXASession.java
+++ b/jackrabbit-jcr-rmi/src/main/java/org/apache/jackrabbit/rmi/client/ClientXASession.java
@@ -36,7 +36,7 @@ import org.apache.jackrabbit.rmi.remote.SerializableXid;
  *
  * @since 1.4
  */
-@Deprecated public class ClientXASession extends ClientSession implements XAResource {
+@Deprecated(forRemoval = true) public class ClientXASession extends ClientSession implements XAResource {
 
     /**
      * The adapted remote transaction enabled session.
diff --git a/jackrabbit-jcr-rmi/src/main/java/org/apache/jackrabbit/rmi/client/DefaultContentHandler.java b/jackrabbit-jcr-rmi/src/main/java/org/apache/jackrabbit/rmi/client/DefaultContentHandler.java
index a4b3027a1..c2d1765de 100644
--- a/jackrabbit-jcr-rmi/src/main/java/org/apache/jackrabbit/rmi/client/DefaultContentHandler.java
+++ b/jackrabbit-jcr-rmi/src/main/java/org/apache/jackrabbit/rmi/client/DefaultContentHandler.java
@@ -28,7 +28,7 @@ import org.xml.sax.helpers.DefaultHandler;
  * Adapter class for exposing a {@link ContentHandler} instance as
  * {@link DefaultHandler} object.
  */
-@Deprecated class DefaultContentHandler extends DefaultHandler {
+@Deprecated(forRemoval = true) class DefaultContentHandler extends DefaultHandler {
 
     /**
      * The adapted content handler instance.
diff --git a/jackrabbit-jcr-rmi/src/main/java/org/apache/jackrabbit/rmi/client/LocalAdapterFactory.java b/jackrabbit-jcr-rmi/src/main/java/org/apache/jackrabbit/rmi/client/LocalAdapterFactory.java
index 7c2efe771..611860c07 100644
--- a/jackrabbit-jcr-rmi/src/main/java/org/apache/jackrabbit/rmi/client/LocalAdapterFactory.java
+++ b/jackrabbit-jcr-rmi/src/main/java/org/apache/jackrabbit/rmi/client/LocalAdapterFactory.java
@@ -101,7 +101,7 @@ import org.apache.jackrabbit.rmi.remote.security.RemotePrivilege;
  * @see org.apache.jackrabbit.rmi.client.ClientAdapterFactory
  * @see org.apache.jackrabbit.rmi.client.ClientObject
  */
-@Deprecated public interface LocalAdapterFactory {
+@Deprecated(forRemoval = true) public interface LocalAdapterFactory {
 
     /**
      * Factory method for creating a local adapter for a remote repository.
diff --git a/jackrabbit-jcr-rmi/src/main/java/org/apache/jackrabbit/rmi/client/RemoteRepositoryException.java b/jackrabbit-jcr-rmi/src/main/java/org/apache/jackrabbit/rmi/client/RemoteRepositoryException.java
index 30eaf35b2..ef22fd94c 100644
--- a/jackrabbit-jcr-rmi/src/main/java/org/apache/jackrabbit/rmi/client/RemoteRepositoryException.java
+++ b/jackrabbit-jcr-rmi/src/main/java/org/apache/jackrabbit/rmi/client/RemoteRepositoryException.java
@@ -30,7 +30,7 @@ import javax.jcr.RepositoryException;
  * exceptions, then the RemoteException is wrapped into a
  * RemoteRuntimeException.
  */
-@Deprecated public class RemoteRepositoryException extends RepositoryException {
+@Deprecated(forRemoval = true) public class RemoteRepositoryException extends RepositoryException {
 
     /**
      * Creates a RemoteRepositoryException based on the given RemoteException.
diff --git a/jackrabbit-jcr-rmi/src/main/java/org/apache/jackrabbit/rmi/client/RemoteRuntimeException.java b/jackrabbit-jcr-rmi/src/main/java/org/apache/jackrabbit/rmi/client/RemoteRuntimeException.java
index e2eb42aed..a446e5117 100644
--- a/jackrabbit-jcr-rmi/src/main/java/org/apache/jackrabbit/rmi/client/RemoteRuntimeException.java
+++ b/jackrabbit-jcr-rmi/src/main/java/org/apache/jackrabbit/rmi/client/RemoteRuntimeException.java
@@ -28,7 +28,7 @@ import java.rmi.RemoteException;
  * throw RepositoryExceptions, then the RemoteException is wrapped into
  * a RemoteRepositoryException.
  */
-@Deprecated public class RemoteRuntimeException extends RuntimeException {
+@Deprecated(forRemoval = true) public class RemoteRuntimeException extends RuntimeException {
 
     /**
      * Creates a RemoteRuntimeException based on the given RemoteException.
diff --git a/jackrabbit-jcr-rmi/src/main/java/org/apache/jackrabbit/rmi/client/SafeClientRepository.java b/jackrabbit-jcr-rmi/src/main/java/org/apache/jackrabbit/rmi/client/SafeClientRepository.java
index 5a7319413..c9981ba00 100644
--- a/jackrabbit-jcr-rmi/src/main/java/org/apache/jackrabbit/rmi/client/SafeClientRepository.java
+++ b/jackrabbit-jcr-rmi/src/main/java/org/apache/jackrabbit/rmi/client/SafeClientRepository.java
@@ -41,7 +41,7 @@ import org.apache.jackrabbit.rmi.remote.RemoteSession;
  * @see javax.jcr.Repository
  * @see org.apache.jackrabbit.rmi.remote.RemoteRepository
  */
-@Deprecated public abstract class SafeClientRepository extends ClientObject
+@Deprecated(forRemoval = true) public abstract class SafeClientRepository extends ClientObject
         implements Repository {
 
     /** The adapted remote repository. */
diff --git a/jackrabbit-jcr-rmi/src/main/java/org/apache/jackrabbit/rmi/client/SerializingContentHandler.java b/jackrabbit-jcr-rmi/src/main/java/org/apache/jackrabbit/rmi/client/SerializingContentHandler.java
index 0afc09e79..a50bcdafe 100644
--- a/jackrabbit-jcr-rmi/src/main/java/org/apache/jackrabbit/rmi/client/SerializingContentHandler.java
+++ b/jackrabbit-jcr-rmi/src/main/java/org/apache/jackrabbit/rmi/client/SerializingContentHandler.java
@@ -57,7 +57,7 @@ import org.xml.sax.helpers.DefaultHandler;
  * org.apache.cocoon.serialization.AbstractTextSerializer class in the
  * cocoon-pipeline-impl component for the original code.
  */
-@Deprecated class SerializingContentHandler extends DefaultContentHandler {
+@Deprecated(forRemoval = true) class SerializingContentHandler extends DefaultContentHandler {
 
     /**
      * The character encoding used for serialization (UTF-8).
diff --git a/jackrabbit-jcr-rmi/src/main/java/org/apache/jackrabbit/rmi/client/iterator/ClientIterator.java b/jackrabbit-jcr-rmi/src/main/java/org/apache/jackrabbit/rmi/client/iterator/ClientIterator.java
index 3610a7974..dfc4123c1 100644
--- a/jackrabbit-jcr-rmi/src/main/java/org/apache/jackrabbit/rmi/client/iterator/ClientIterator.java
+++ b/jackrabbit-jcr-rmi/src/main/java/org/apache/jackrabbit/rmi/client/iterator/ClientIterator.java
@@ -36,7 +36,7 @@ import org.apache.jackrabbit.rmi.remote.RemoteIterator;
  * <p>
  * See the subclasses for type-specific versions of this abstract class.
  */
-@Deprecated public abstract class ClientIterator extends ClientObject
+@Deprecated(forRemoval = true) public abstract class ClientIterator extends ClientObject
         implements RangeIterator {
 
     /** The adapted remote iterator. */
diff --git a/jackrabbit-jcr-rmi/src/main/java/org/apache/jackrabbit/rmi/client/iterator/ClientNodeIterator.java b/jackrabbit-jcr-rmi/src/main/java/org/apache/jackrabbit/rmi/client/iterator/ClientNodeIterator.java
index f57dcec0c..71c7e1214 100644
--- a/jackrabbit-jcr-rmi/src/main/java/org/apache/jackrabbit/rmi/client/iterator/ClientNodeIterator.java
+++ b/jackrabbit-jcr-rmi/src/main/java/org/apache/jackrabbit/rmi/client/iterator/ClientNodeIterator.java
@@ -29,7 +29,7 @@ import org.apache.jackrabbit.rmi.remote.RemoteNode;
  * <p>
  * A ClientIterator for iterating remote nodes.
  */
-@Deprecated public class ClientNodeIterator extends ClientIterator implements NodeIterator {
+@Deprecated(forRemoval = true) public class ClientNodeIterator extends ClientIterator implements NodeIterator {
 
     /** The current session. */
     private final Session session;
diff --git a/jackrabbit-jcr-rmi/src/main/java/org/apache/jackrabbit/rmi/client/iterator/ClientNodeTypeIterator.java b/jackrabbit-jcr-rmi/src/main/java/org/apache/jackrabbit/rmi/client/iterator/ClientNodeTypeIterator.java
index 73d1803ac..8bf80cbf3 100644
--- a/jackrabbit-jcr-rmi/src/main/java/org/apache/jackrabbit/rmi/client/iterator/ClientNodeTypeIterator.java
+++ b/jackrabbit-jcr-rmi/src/main/java/org/apache/jackrabbit/rmi/client/iterator/ClientNodeTypeIterator.java
@@ -28,7 +28,7 @@ import org.apache.jackrabbit.rmi.remote.RemoteNodeType;
  * <p>
  * A ClientIterator for iterating remote node types.
  */
-@Deprecated public class ClientNodeTypeIterator extends ClientIterator
+@Deprecated(forRemoval = true) public class ClientNodeTypeIterator extends ClientIterator
         implements NodeTypeIterator {
 
     /**
diff --git a/jackrabbit-jcr-rmi/src/main/java/org/apache/jackrabbit/rmi/client/iterator/ClientPropertyIterator.java b/jackrabbit-jcr-rmi/src/main/java/org/apache/jackrabbit/rmi/client/iterator/ClientPropertyIterator.java
index f825bc1b5..47e7a35ff 100644
--- a/jackrabbit-jcr-rmi/src/main/java/org/apache/jackrabbit/rmi/client/iterator/ClientPropertyIterator.java
+++ b/jackrabbit-jcr-rmi/src/main/java/org/apache/jackrabbit/rmi/client/iterator/ClientPropertyIterator.java
@@ -29,7 +29,7 @@ import org.apache.jackrabbit.rmi.remote.RemoteProperty;
  * <p>
  * A ClientIterator for iterating remote properties.
  */
-@Deprecated public class ClientPropertyIterator extends ClientIterator
+@Deprecated(forRemoval = true) public class ClientPropertyIterator extends ClientIterator
         implements PropertyIterator {
 
     /** The current session. */
diff --git a/jackrabbit-jcr-rmi/src/main/java/org/apache/jackrabbit/rmi/client/iterator/ClientRowIterator.java b/jackrabbit-jcr-rmi/src/main/java/org/apache/jackrabbit/rmi/client/iterator/ClientRowIterator.java
index c092440f4..6774b10ce 100644
--- a/jackrabbit-jcr-rmi/src/main/java/org/apache/jackrabbit/rmi/client/iterator/ClientRowIterator.java
+++ b/jackrabbit-jcr-rmi/src/main/java/org/apache/jackrabbit/rmi/client/iterator/ClientRowIterator.java
@@ -29,7 +29,7 @@ import org.apache.jackrabbit.rmi.remote.RemoteRow;
  * <p>
  * A ClientIterator for iterating remote rows.
  */
-@Deprecated public class ClientRowIterator extends ClientIterator implements RowIterator {
+@Deprecated(forRemoval = true) public class ClientRowIterator extends ClientIterator implements RowIterator {
 
     /** Current session. */
     private Session session;
diff --git a/jackrabbit-jcr-rmi/src/main/java/org/apache/jackrabbit/rmi/client/iterator/ClientVersionIterator.java b/jackrabbit-jcr-rmi/src/main/java/org/apache/jackrabbit/rmi/client/iterator/ClientVersionIterator.java
index 1178ce977..4d1cd98cc 100644
--- a/jackrabbit-jcr-rmi/src/main/java/org/apache/jackrabbit/rmi/client/iterator/ClientVersionIterator.java
+++ b/jackrabbit-jcr-rmi/src/main/java/org/apache/jackrabbit/rmi/client/iterator/ClientVersionIterator.java
@@ -29,7 +29,7 @@ import org.apache.jackrabbit.rmi.remote.RemoteVersion;
  * <p>
  * A ClientIterator for iterating remote versions.
  */
-@Deprecated public class ClientVersionIterator extends ClientIterator
+@Deprecated(forRemoval = true) public class ClientVersionIterator extends ClientIterator
         implements VersionIterator {
 
     /** The current session. */
diff --git a/jackrabbit-jcr-rmi/src/main/java/org/apache/jackrabbit/rmi/client/principal/ClientGroup.java b/jackrabbit-jcr-rmi/src/main/java/org/apache/jackrabbit/rmi/client/principal/ClientGroup.java
index c2a849ef7..8953b1acb 100644
--- a/jackrabbit-jcr-rmi/src/main/java/org/apache/jackrabbit/rmi/client/principal/ClientGroup.java
+++ b/jackrabbit-jcr-rmi/src/main/java/org/apache/jackrabbit/rmi/client/principal/ClientGroup.java
@@ -37,7 +37,7 @@ import org.apache.jackrabbit.rmi.remote.principal.RemotePrincipal;
  *
  * @see RemoteGroup
  */
-@Deprecated public class ClientGroup extends ClientPrincipal implements GroupPrincipal {
+@Deprecated(forRemoval = true) public class ClientGroup extends ClientPrincipal implements GroupPrincipal {
 
     private final LocalAdapterFactory factory;
 
diff --git a/jackrabbit-jcr-rmi/src/main/java/org/apache/jackrabbit/rmi/client/principal/ClientPrincipal.java b/jackrabbit-jcr-rmi/src/main/java/org/apache/jackrabbit/rmi/client/principal/ClientPrincipal.java
index 1052de5f7..24420e518 100644
--- a/jackrabbit-jcr-rmi/src/main/java/org/apache/jackrabbit/rmi/client/principal/ClientPrincipal.java
+++ b/jackrabbit-jcr-rmi/src/main/java/org/apache/jackrabbit/rmi/client/principal/ClientPrincipal.java
@@ -34,7 +34,7 @@ import org.apache.jackrabbit.rmi.remote.principal.RemotePrincipal;
  * @see Principal
  * @see RemotePrincipal
  */
-@Deprecated public class ClientPrincipal implements Principal {
+@Deprecated(forRemoval = true) public class ClientPrincipal implements Principal {
 
     private final RemotePrincipal p;
 
diff --git a/jackrabbit-jcr-rmi/src/main/java/org/apache/jackrabbit/rmi/client/principal/ClientPrincipalIterator.java b/jackrabbit-jcr-rmi/src/main/java/org/apache/jackrabbit/rmi/client/principal/ClientPrincipalIterator.java
index b8b152ec7..31f893b9e 100644
--- a/jackrabbit-jcr-rmi/src/main/java/org/apache/jackrabbit/rmi/client/principal/ClientPrincipalIterator.java
+++ b/jackrabbit-jcr-rmi/src/main/java/org/apache/jackrabbit/rmi/client/principal/ClientPrincipalIterator.java
@@ -28,7 +28,7 @@ import org.apache.jackrabbit.rmi.remote.principal.RemotePrincipal;
  * <p>
  * A ClientIterator for iterating remote principals
  */
-@Deprecated public class ClientPrincipalIterator extends ClientIterator {
+@Deprecated(forRemoval = true) public class ClientPrincipalIterator extends ClientIterator {
 
     public ClientPrincipalIterator(final RemoteIterator iterator,
             final LocalAdapterFactory factory) {
diff --git a/jackrabbit-jcr-rmi/src/main/java/org/apache/jackrabbit/rmi/client/security/ClientAccessControlEntry.java b/jackrabbit-jcr-rmi/src/main/java/org/apache/jackrabbit/rmi/client/security/ClientAccessControlEntry.java
index 481faac7a..1e1b3251c 100644
--- a/jackrabbit-jcr-rmi/src/main/java/org/apache/jackrabbit/rmi/client/security/ClientAccessControlEntry.java
+++ b/jackrabbit-jcr-rmi/src/main/java/org/apache/jackrabbit/rmi/client/security/ClientAccessControlEntry.java
@@ -40,7 +40,7 @@ import org.apache.jackrabbit.rmi.remote.security.RemoteAccessControlEntry;
  * @see javax.jcr.security.AccessControlEntry
  * @see org.apache.jackrabbit.rmi.remote.security.RemoteAccessControlEntry
  */
-@Deprecated public class ClientAccessControlEntry extends ClientObject implements
+@Deprecated(forRemoval = true) public class ClientAccessControlEntry extends ClientObject implements
         AccessControlEntry {
 
     private final RemoteAccessControlEntry race;
diff --git a/jackrabbit-jcr-rmi/src/main/java/org/apache/jackrabbit/rmi/client/security/ClientAccessControlList.java b/jackrabbit-jcr-rmi/src/main/java/org/apache/jackrabbit/rmi/client/security/ClientAccessControlList.java
index 110e90bf8..c497d95ba 100644
--- a/jackrabbit-jcr-rmi/src/main/java/org/apache/jackrabbit/rmi/client/security/ClientAccessControlList.java
+++ b/jackrabbit-jcr-rmi/src/main/java/org/apache/jackrabbit/rmi/client/security/ClientAccessControlList.java
@@ -42,7 +42,7 @@ import org.apache.jackrabbit.rmi.remote.security.RemoteAccessControlList;
  * @see javax.jcr.security.AccessControlList
  * @see org.apache.jackrabbit.rmi.remote.security.RemoteAccessControlList
  */
-@Deprecated public class ClientAccessControlList extends ClientAccessControlPolicy
+@Deprecated(forRemoval = true) public class ClientAccessControlList extends ClientAccessControlPolicy
         implements AccessControlList {
 
     public ClientAccessControlList(final RemoteAccessControlList racl,
diff --git a/jackrabbit-jcr-rmi/src/main/java/org/apache/jackrabbit/rmi/client/security/ClientAccessControlManager.java b/jackrabbit-jcr-rmi/src/main/java/org/apache/jackrabbit/rmi/client/security/ClientAccessControlManager.java
index 36972f5d4..d8c4fd96d 100644
--- a/jackrabbit-jcr-rmi/src/main/java/org/apache/jackrabbit/rmi/client/security/ClientAccessControlManager.java
+++ b/jackrabbit-jcr-rmi/src/main/java/org/apache/jackrabbit/rmi/client/security/ClientAccessControlManager.java
@@ -45,7 +45,7 @@ import org.apache.jackrabbit.rmi.remote.security.RemoteAccessControlManager;
  * @see javax.jcr.security.AccessControlManager
  * @see org.apache.jackrabbit.rmi.remote.security.RemoteAccessControlManager
  */
-@Deprecated public class ClientAccessControlManager extends ClientObject implements
+@Deprecated(forRemoval = true) public class ClientAccessControlManager extends ClientObject implements
         AccessControlManager {
 
     private final RemoteAccessControlManager racm;
diff --git a/jackrabbit-jcr-rmi/src/main/java/org/apache/jackrabbit/rmi/client/security/ClientAccessControlPolicy.java b/jackrabbit-jcr-rmi/src/main/java/org/apache/jackrabbit/rmi/client/security/ClientAccessControlPolicy.java
index 0b0f719bf..30c12bd3e 100644
--- a/jackrabbit-jcr-rmi/src/main/java/org/apache/jackrabbit/rmi/client/security/ClientAccessControlPolicy.java
+++ b/jackrabbit-jcr-rmi/src/main/java/org/apache/jackrabbit/rmi/client/security/ClientAccessControlPolicy.java
@@ -34,7 +34,7 @@ import org.apache.jackrabbit.rmi.remote.security.RemoteAccessControlPolicy;
  * @see javax.jcr.security.AccessControlPolicy
  * @see org.apache.jackrabbit.rmi.remote.security.RemoteAccessControlPolicy
  */
-@Deprecated public class ClientAccessControlPolicy extends ClientObject implements
+@Deprecated(forRemoval = true) public class ClientAccessControlPolicy extends ClientObject implements
         AccessControlPolicy {
 
     private final RemoteAccessControlPolicy racp;
diff --git a/jackrabbit-jcr-rmi/src/main/java/org/apache/jackrabbit/rmi/client/security/ClientAccessControlPolicyIterator.java b/jackrabbit-jcr-rmi/src/main/java/org/apache/jackrabbit/rmi/client/security/ClientAccessControlPolicyIterator.java
index 9774cddc7..80ac1bb07 100644
--- a/jackrabbit-jcr-rmi/src/main/java/org/apache/jackrabbit/rmi/client/security/ClientAccessControlPolicyIterator.java
+++ b/jackrabbit-jcr-rmi/src/main/java/org/apache/jackrabbit/rmi/client/security/ClientAccessControlPolicyIterator.java
@@ -29,7 +29,7 @@ import org.apache.jackrabbit.rmi.remote.security.RemoteAccessControlList;
  * <p>
  * A ClientIterator for iterating remote access control policies.
  */
-@Deprecated public class ClientAccessControlPolicyIterator extends ClientIterator implements
+@Deprecated(forRemoval = true) public class ClientAccessControlPolicyIterator extends ClientIterator implements
         AccessControlPolicyIterator {
 
     public ClientAccessControlPolicyIterator(RemoteIterator iterator,
diff --git a/jackrabbit-jcr-rmi/src/main/java/org/apache/jackrabbit/rmi/client/security/ClientPrivilege.java b/jackrabbit-jcr-rmi/src/main/java/org/apache/jackrabbit/rmi/client/security/ClientPrivilege.java
index 975cbf280..0bcfb22b1 100644
--- a/jackrabbit-jcr-rmi/src/main/java/org/apache/jackrabbit/rmi/client/security/ClientPrivilege.java
+++ b/jackrabbit-jcr-rmi/src/main/java/org/apache/jackrabbit/rmi/client/security/ClientPrivilege.java
@@ -37,7 +37,7 @@ import org.apache.jackrabbit.rmi.remote.security.RemotePrivilege;
  * @see javax.jcr.security.Privilege
  * @see org.apache.jackrabbit.rmi.remote.security.RemotePrivilege
  */
-@Deprecated public class ClientPrivilege extends ClientObject implements Privilege {
+@Deprecated(forRemoval = true) public class ClientPrivilege extends ClientObject implements Privilege {
 
     private final RemotePrivilege rp;
 
diff --git a/jackrabbit-jcr-rmi/src/main/java/org/apache/jackrabbit/rmi/iterator/ArrayEventIterator.java b/jackrabbit-jcr-rmi/src/main/java/org/apache/jackrabbit/rmi/iterator/ArrayEventIterator.java
index e045b4141..7b84b8422 100644
--- a/jackrabbit-jcr-rmi/src/main/java/org/apache/jackrabbit/rmi/iterator/ArrayEventIterator.java
+++ b/jackrabbit-jcr-rmi/src/main/java/org/apache/jackrabbit/rmi/iterator/ArrayEventIterator.java
@@ -27,7 +27,7 @@ import javax.jcr.observation.EventIterator;
  * This class is used by the JCR-RMI client adapters to convert
  * node arrays to iterators.
  */
-@Deprecated public class ArrayEventIterator extends ArrayIterator implements EventIterator {
+@Deprecated(forRemoval = true) public class ArrayEventIterator extends ArrayIterator implements EventIterator {
 
     /**
      * Creates an iterator for the given array of events.
diff --git a/jackrabbit-jcr-rmi/src/main/java/org/apache/jackrabbit/rmi/iterator/ArrayEventListenerIterator.java b/jackrabbit-jcr-rmi/src/main/java/org/apache/jackrabbit/rmi/iterator/ArrayEventListenerIterator.java
index f83a7ac65..1abc13e4c 100644
--- a/jackrabbit-jcr-rmi/src/main/java/org/apache/jackrabbit/rmi/iterator/ArrayEventListenerIterator.java
+++ b/jackrabbit-jcr-rmi/src/main/java/org/apache/jackrabbit/rmi/iterator/ArrayEventListenerIterator.java
@@ -27,7 +27,7 @@ import javax.jcr.observation.EventListenerIterator;
  * This class is used by the JCR-RMI client adapters to convert
  * listener arrays to iterators.
  */
-@Deprecated public class ArrayEventListenerIterator extends ArrayIterator
+@Deprecated(forRemoval = true) public class ArrayEventListenerIterator extends ArrayIterator
         implements EventListenerIterator {
 
     /**
diff --git a/jackrabbit-jcr-rmi/src/main/java/org/apache/jackrabbit/rmi/iterator/ArrayIterator.java b/jackrabbit-jcr-rmi/src/main/java/org/apache/jackrabbit/rmi/iterator/ArrayIterator.java
index 3b51825df..bdc89d6f2 100644
--- a/jackrabbit-jcr-rmi/src/main/java/org/apache/jackrabbit/rmi/iterator/ArrayIterator.java
+++ b/jackrabbit-jcr-rmi/src/main/java/org/apache/jackrabbit/rmi/iterator/ArrayIterator.java
@@ -29,7 +29,7 @@ import javax.jcr.RangeIterator;
  * of objects. Used as the base class for the type-specific iterator
  * classes defined in this package.
  */
-@Deprecated public class ArrayIterator implements RangeIterator {
+@Deprecated(forRemoval = true) public class ArrayIterator implements RangeIterator {
 
     /** The current iterator position. */
     private int position;
diff --git a/jackrabbit-jcr-rmi/src/main/java/org/apache/jackrabbit/rmi/jackrabbit/JackrabbitClientAdapterFactory.java b/jackrabbit-jcr-rmi/src/main/java/org/apache/jackrabbit/rmi/jackrabbit/JackrabbitClientAdapterFactory.java
index 8d613bfed..5fcfb5ba4 100644
--- a/jackrabbit-jcr-rmi/src/main/java/org/apache/jackrabbit/rmi/jackrabbit/JackrabbitClientAdapterFactory.java
+++ b/jackrabbit-jcr-rmi/src/main/java/org/apache/jackrabbit/rmi/jackrabbit/JackrabbitClientAdapterFactory.java
@@ -23,5 +23,5 @@ import org.apache.jackrabbit.rmi.client.ClientAdapterFactory;
  * <p>
  * @deprecated Use the normal {@link ClientAdapterFactory} instead
  */
-@Deprecated public class JackrabbitClientAdapterFactory extends ClientAdapterFactory {
+@Deprecated(forRemoval = true) public class JackrabbitClientAdapterFactory extends ClientAdapterFactory {
 }
diff --git a/jackrabbit-jcr-rmi/src/main/java/org/apache/jackrabbit/rmi/observation/ClientEventPoll.java b/jackrabbit-jcr-rmi/src/main/java/org/apache/jackrabbit/rmi/observation/ClientEventPoll.java
index 325c2bfc3..a30ebd589 100644
--- a/jackrabbit-jcr-rmi/src/main/java/org/apache/jackrabbit/rmi/observation/ClientEventPoll.java
+++ b/jackrabbit-jcr-rmi/src/main/java/org/apache/jackrabbit/rmi/observation/ClientEventPoll.java
@@ -55,7 +55,7 @@ import org.slf4j.LoggerFactory;
  *
  * @see #run()
  */
-@Deprecated public class ClientEventPoll extends Thread {
+@Deprecated(forRemoval = true) public class ClientEventPoll extends Thread {
 
     /** logger */
     private static final Logger log =
diff --git a/jackrabbit-jcr-rmi/src/main/java/org/apache/jackrabbit/rmi/observation/Queue.java b/jackrabbit-jcr-rmi/src/main/java/org/apache/jackrabbit/rmi/observation/Queue.java
index 9a25f0407..5b3928715 100644
--- a/jackrabbit-jcr-rmi/src/main/java/org/apache/jackrabbit/rmi/observation/Queue.java
+++ b/jackrabbit-jcr-rmi/src/main/java/org/apache/jackrabbit/rmi/observation/Queue.java
@@ -25,7 +25,7 @@ import java.util.LinkedList;
  * at least one consumer and potentially multiple producers. This class poses
  * no restrictions on the size of the queue.
  */
-@Deprecated public class Queue {
+@Deprecated(forRemoval = true) public class Queue {
 
     /** The linked list implementing the queue of data */
     private final LinkedList queue;
diff --git a/jackrabbit-jcr-rmi/src/main/java/org/apache/jackrabbit/rmi/observation/ServerEventListenerProxy.java b/jackrabbit-jcr-rmi/src/main/java/org/apache/jackrabbit/rmi/observation/ServerEventListenerProxy.java
index cbfe04439..94f78b6d1 100644
--- a/jackrabbit-jcr-rmi/src/main/java/org/apache/jackrabbit/rmi/observation/ServerEventListenerProxy.java
+++ b/jackrabbit-jcr-rmi/src/main/java/org/apache/jackrabbit/rmi/observation/ServerEventListenerProxy.java
@@ -44,7 +44,7 @@ import org.slf4j.LoggerFactory;
  * See the package overview for an explanation of the mechanisms implemented for
  * event dispatching.
  */
-@Deprecated public class ServerEventListenerProxy implements EventListener {
+@Deprecated(forRemoval = true) public class ServerEventListenerProxy implements EventListener {
 
     /** logger */
     private static final Logger log =
diff --git a/jackrabbit-jcr-rmi/src/main/java/org/apache/jackrabbit/rmi/remote/ArrayIterator.java b/jackrabbit-jcr-rmi/src/main/java/org/apache/jackrabbit/rmi/remote/ArrayIterator.java
index 046f6f7db..146f1479a 100644
--- a/jackrabbit-jcr-rmi/src/main/java/org/apache/jackrabbit/rmi/remote/ArrayIterator.java
+++ b/jackrabbit-jcr-rmi/src/main/java/org/apache/jackrabbit/rmi/remote/ArrayIterator.java
@@ -26,7 +26,7 @@ import java.util.NoSuchElementException;
  * short enough for all the elements to be sent over the network in
  * one go.
  */
-@Deprecated public class ArrayIterator implements RemoteIterator, Serializable {
+@Deprecated(forRemoval = true) public class ArrayIterator implements RemoteIterator, Serializable {
 
     /**
      * The elements in this iterator. Set to <code>null</code> when
diff --git a/jackrabbit-jcr-rmi/src/main/java/org/apache/jackrabbit/rmi/remote/BufferIterator.java b/jackrabbit-jcr-rmi/src/main/java/org/apache/jackrabbit/rmi/remote/BufferIterator.java
index 36b605564..43d8e7d00 100644
--- a/jackrabbit-jcr-rmi/src/main/java/org/apache/jackrabbit/rmi/remote/BufferIterator.java
+++ b/jackrabbit-jcr-rmi/src/main/java/org/apache/jackrabbit/rmi/remote/BufferIterator.java
@@ -27,7 +27,7 @@ import java.util.NoSuchElementException;
  * along with a buffer of the first few iterator elements in one network
  * transmission.
  */
-@Deprecated public class BufferIterator implements RemoteIterator, Serializable {
+@Deprecated(forRemoval = true) public class BufferIterator implements RemoteIterator, Serializable {
 
     /** The element buffer. Set to <code>null</code> when the iterator ends. */
     private Object[] buffer;
diff --git a/jackrabbit-jcr-rmi/src/main/java/org/apache/jackrabbit/rmi/remote/RemoteEventCollection.java b/jackrabbit-jcr-rmi/src/main/java/org/apache/jackrabbit/rmi/remote/RemoteEventCollection.java
index 5c5e9c3d2..0013e3188 100644
--- a/jackrabbit-jcr-rmi/src/main/java/org/apache/jackrabbit/rmi/remote/RemoteEventCollection.java
+++ b/jackrabbit-jcr-rmi/src/main/java/org/apache/jackrabbit/rmi/remote/RemoteEventCollection.java
@@ -31,7 +31,7 @@ import javax.jcr.RepositoryException;
  * event poller. On the client-side the enclosed list of events is then sent to
  * the listener identified by the contained listener identifier.
  */
-@Deprecated public interface RemoteEventCollection extends Remote {
+@Deprecated(forRemoval = true) public interface RemoteEventCollection extends Remote {
 
     /**
      * Returns unique identifier of the client-side listener to which the
diff --git a/jackrabbit-jcr-rmi/src/main/java/org/apache/jackrabbit/rmi/remote/RemoteItem.java b/jackrabbit-jcr-rmi/src/main/java/org/apache/jackrabbit/rmi/remote/RemoteItem.java
index bf6d0feeb..bc459dc06 100644
--- a/jackrabbit-jcr-rmi/src/main/java/org/apache/jackrabbit/rmi/remote/RemoteItem.java
+++ b/jackrabbit-jcr-rmi/src/main/java/org/apache/jackrabbit/rmi/remote/RemoteItem.java
@@ -41,7 +41,7 @@ import javax.jcr.RepositoryException;
  * @see org.apache.jackrabbit.rmi.client.ClientItem
  * @see org.apache.jackrabbit.rmi.server.ServerItem
  */
-@Deprecated public interface RemoteItem extends Remote {
+@Deprecated(forRemoval = true) public interface RemoteItem extends Remote {
 
     /**
      * Remote version of the
diff --git a/jackrabbit-jcr-rmi/src/main/java/org/apache/jackrabbit/rmi/remote/RemoteItemDefinition.java b/jackrabbit-jcr-rmi/src/main/java/org/apache/jackrabbit/rmi/remote/RemoteItemDefinition.java
index ac48d5e30..fdfedb991 100644
--- a/jackrabbit-jcr-rmi/src/main/java/org/apache/jackrabbit/rmi/remote/RemoteItemDefinition.java
+++ b/jackrabbit-jcr-rmi/src/main/java/org/apache/jackrabbit/rmi/remote/RemoteItemDefinition.java
@@ -42,7 +42,7 @@ import java.rmi.RemoteException;
  * @see org.apache.jackrabbit.rmi.client.ClientItemDefinition
  * @see org.apache.jackrabbit.rmi.server.ServerItemDefinition
  */
-@Deprecated public interface RemoteItemDefinition extends Remote {
+@Deprecated(forRemoval = true) public interface RemoteItemDefinition extends Remote {
 
     /**
      * Remote version of the
diff --git a/jackrabbit-jcr-rmi/src/main/java/org/apache/jackrabbit/rmi/remote/RemoteIterator.java b/jackrabbit-jcr-rmi/src/main/java/org/apache/jackrabbit/rmi/remote/RemoteIterator.java
index 82ad895b6..42604b882 100644
--- a/jackrabbit-jcr-rmi/src/main/java/org/apache/jackrabbit/rmi/remote/RemoteIterator.java
+++ b/jackrabbit-jcr-rmi/src/main/java/org/apache/jackrabbit/rmi/remote/RemoteIterator.java
@@ -31,7 +31,7 @@ import java.util.NoSuchElementException;
  * This interface allows both the client and server side to control the
  * amount of buffering used to increase performance.
  */
-@Deprecated public interface RemoteIterator extends Remote {
+@Deprecated(forRemoval = true) public interface RemoteIterator extends Remote {
 
     /**
      * Returns the size of the iteration, or <code>-1</code> if the
diff --git a/jackrabbit-jcr-rmi/src/main/java/org/apache/jackrabbit/rmi/remote/RemoteLock.java b/jackrabbit-jcr-rmi/src/main/java/org/apache/jackrabbit/rmi/remote/RemoteLock.java
index 49fad0691..d9ba20e26 100644
--- a/jackrabbit-jcr-rmi/src/main/java/org/apache/jackrabbit/rmi/remote/RemoteLock.java
+++ b/jackrabbit-jcr-rmi/src/main/java/org/apache/jackrabbit/rmi/remote/RemoteLock.java
@@ -39,7 +39,7 @@ import javax.jcr.RepositoryException;
  * @see org.apache.jackrabbit.rmi.client.ClientLock
  * @see org.apache.jackrabbit.rmi.server.ServerLock
  */
-@Deprecated public interface RemoteLock extends Remote {
+@Deprecated(forRemoval = true) public interface RemoteLock extends Remote {
 
     /**
      * Remote version of the
diff --git a/jackrabbit-jcr-rmi/src/main/java/org/apache/jackrabbit/rmi/remote/RemoteLockManager.java b/jackrabbit-jcr-rmi/src/main/java/org/apache/jackrabbit/rmi/remote/RemoteLockManager.java
index 2bf498003..894fee12f 100644
--- a/jackrabbit-jcr-rmi/src/main/java/org/apache/jackrabbit/rmi/remote/RemoteLockManager.java
+++ b/jackrabbit-jcr-rmi/src/main/java/org/apache/jackrabbit/rmi/remote/RemoteLockManager.java
@@ -21,7 +21,7 @@ import java.rmi.RemoteException;
 
 import javax.jcr.RepositoryException;
 
-@Deprecated public interface RemoteLockManager extends Remote {
+@Deprecated(forRemoval = true) public interface RemoteLockManager extends Remote {
 
     String[] getLockTokens() throws RepositoryException, RemoteException;
 
diff --git a/jackrabbit-jcr-rmi/src/main/java/org/apache/jackrabbit/rmi/remote/RemoteNamespaceRegistry.java b/jackrabbit-jcr-rmi/src/main/java/org/apache/jackrabbit/rmi/remote/RemoteNamespaceRegistry.java
index a602126c3..a241f0cc1 100644
--- a/jackrabbit-jcr-rmi/src/main/java/org/apache/jackrabbit/rmi/remote/RemoteNamespaceRegistry.java
+++ b/jackrabbit-jcr-rmi/src/main/java/org/apache/jackrabbit/rmi/remote/RemoteNamespaceRegistry.java
@@ -42,7 +42,7 @@ import javax.jcr.RepositoryException;
  * @see org.apache.jackrabbit.rmi.client.ClientNamespaceRegistry
  * @see org.apache.jackrabbit.rmi.server.ServerNamespaceRegistry
  */
-@Deprecated public interface RemoteNamespaceRegistry extends Remote {
+@Deprecated(forRemoval = true) public interface RemoteNamespaceRegistry extends Remote {
 
     /**
      * Remote version of the
diff --git a/jackrabbit-jcr-rmi/src/main/java/org/apache/jackrabbit/rmi/remote/RemoteNode.java b/jackrabbit-jcr-rmi/src/main/java/org/apache/jackrabbit/rmi/remote/RemoteNode.java
index 5558fe979..886cfe2bd 100644
--- a/jackrabbit-jcr-rmi/src/main/java/org/apache/jackrabbit/rmi/remote/RemoteNode.java
+++ b/jackrabbit-jcr-rmi/src/main/java/org/apache/jackrabbit/rmi/remote/RemoteNode.java
@@ -51,7 +51,7 @@ import javax.jcr.Value;
  * @see org.apache.jackrabbit.rmi.client.ClientNode
  * @see org.apache.jackrabbit.rmi.server.ServerNode
  */
-@Deprecated public interface RemoteNode extends RemoteItem {
+@Deprecated(forRemoval = true) public interface RemoteNode extends RemoteItem {
 
     /**
      * Remote version of the
diff --git a/jackrabbit-jcr-rmi/src/main/java/org/apache/jackrabbit/rmi/remote/RemoteNodeDefinition.java b/jackrabbit-jcr-rmi/src/main/java/org/apache/jackrabbit/rmi/remote/RemoteNodeDefinition.java
index 3768f2b6a..49c9ce949 100644
--- a/jackrabbit-jcr-rmi/src/main/java/org/apache/jackrabbit/rmi/remote/RemoteNodeDefinition.java
+++ b/jackrabbit-jcr-rmi/src/main/java/org/apache/jackrabbit/rmi/remote/RemoteNodeDefinition.java
@@ -40,7 +40,7 @@ import java.rmi.RemoteException;
  * @see org.apache.jackrabbit.rmi.client.ClientNodeDefinition
  * @see org.apache.jackrabbit.rmi.server.ServerNodeDefinition
  */
-@Deprecated public interface RemoteNodeDefinition extends RemoteItemDefinition {
+@Deprecated(forRemoval = true) public interface RemoteNodeDefinition extends RemoteItemDefinition {
 
     /**
      * Remote version of the
diff --git a/jackrabbit-jcr-rmi/src/main/java/org/apache/jackrabbit/rmi/remote/RemoteNodeType.java b/jackrabbit-jcr-rmi/src/main/java/org/apache/jackrabbit/rmi/remote/RemoteNodeType.java
index 01687cc76..08240e1e4 100644
--- a/jackrabbit-jcr-rmi/src/main/java/org/apache/jackrabbit/rmi/remote/RemoteNodeType.java
+++ b/jackrabbit-jcr-rmi/src/main/java/org/apache/jackrabbit/rmi/remote/RemoteNodeType.java
@@ -42,7 +42,7 @@ import javax.jcr.Value;
  * @see org.apache.jackrabbit.rmi.client.ClientNodeType
  * @see org.apache.jackrabbit.rmi.server.ServerNodeType
  */
-@Deprecated public interface RemoteNodeType extends Remote {
+@Deprecated(forRemoval = true) public interface RemoteNodeType extends Remote {
 
     /**
      * Remote version of the
diff --git a/jackrabbit-jcr-rmi/src/main/java/org/apache/jackrabbit/rmi/remote/RemoteNodeTypeManager.java b/jackrabbit-jcr-rmi/src/main/java/org/apache/jackrabbit/rmi/remote/RemoteNodeTypeManager.java
index d71be1686..ba74f0981 100644
--- a/jackrabbit-jcr-rmi/src/main/java/org/apache/jackrabbit/rmi/remote/RemoteNodeTypeManager.java
+++ b/jackrabbit-jcr-rmi/src/main/java/org/apache/jackrabbit/rmi/remote/RemoteNodeTypeManager.java
@@ -46,7 +46,7 @@ import javax.jcr.RepositoryException;
  * @see org.apache.jackrabbit.rmi.client.ClientNodeTypeManager
  * @see org.apache.jackrabbit.rmi.server.ServerNodeTypeManager
  */
-@Deprecated public interface RemoteNodeTypeManager extends Remote {
+@Deprecated(forRemoval = true) public interface RemoteNodeTypeManager extends Remote {
 
     /**
      * Remote version of the
diff --git a/jackrabbit-jcr-rmi/src/main/java/org/apache/jackrabbit/rmi/remote/RemoteObservationManager.java b/jackrabbit-jcr-rmi/src/main/java/org/apache/jackrabbit/rmi/remote/RemoteObservationManager.java
index 04569f2bd..3bab8ecdb 100644
--- a/jackrabbit-jcr-rmi/src/main/java/org/apache/jackrabbit/rmi/remote/RemoteObservationManager.java
+++ b/jackrabbit-jcr-rmi/src/main/java/org/apache/jackrabbit/rmi/remote/RemoteObservationManager.java
@@ -40,7 +40,7 @@ import javax.jcr.RepositoryException;
  * @see org.apache.jackrabbit.rmi.client.ClientObservationManager
  * @see org.apache.jackrabbit.rmi.server.ServerObservationManager
  */
-@Deprecated public interface RemoteObservationManager extends Remote {
+@Deprecated(forRemoval = true) public interface RemoteObservationManager extends Remote {
 
     /**
      * Remote version of the
diff --git a/jackrabbit-jcr-rmi/src/main/java/org/apache/jackrabbit/rmi/remote/RemoteProperty.java b/jackrabbit-jcr-rmi/src/main/java/org/apache/jackrabbit/rmi/remote/RemoteProperty.java
index cd41a5b35..6b61f89a5 100644
--- a/jackrabbit-jcr-rmi/src/main/java/org/apache/jackrabbit/rmi/remote/RemoteProperty.java
+++ b/jackrabbit-jcr-rmi/src/main/java/org/apache/jackrabbit/rmi/remote/RemoteProperty.java
@@ -51,7 +51,7 @@ import javax.jcr.Value;
  * @see org.apache.jackrabbit.rmi.client.ClientProperty
  * @see org.apache.jackrabbit.rmi.server.ServerProperty
  */
-@Deprecated public interface RemoteProperty extends RemoteItem {
+@Deprecated(forRemoval = true) public interface RemoteProperty extends RemoteItem {
 
     /**
      * Remote version of the
diff --git a/jackrabbit-jcr-rmi/src/main/java/org/apache/jackrabbit/rmi/remote/RemotePropertyDefinition.java b/jackrabbit-jcr-rmi/src/main/java/org/apache/jackrabbit/rmi/remote/RemotePropertyDefinition.java
index 68ed5999b..7c0ffc78f 100644
--- a/jackrabbit-jcr-rmi/src/main/java/org/apache/jackrabbit/rmi/remote/RemotePropertyDefinition.java
+++ b/jackrabbit-jcr-rmi/src/main/java/org/apache/jackrabbit/rmi/remote/RemotePropertyDefinition.java
@@ -45,7 +45,7 @@ import javax.jcr.Value;
  * @see org.apache.jackrabbit.rmi.client.ClientPropertyDefinition
  * @see org.apache.jackrabbit.rmi.server.ServerPropertyDefinition
  */
-@Deprecated public interface RemotePropertyDefinition extends RemoteItemDefinition {
+@Deprecated(forRemoval = true) public interface RemotePropertyDefinition extends RemoteItemDefinition {
 
     /**
      * Remote version of the
diff --git a/jackrabbit-jcr-rmi/src/main/java/org/apache/jackrabbit/rmi/remote/RemoteQuery.java b/jackrabbit-jcr-rmi/src/main/java/org/apache/jackrabbit/rmi/remote/RemoteQuery.java
index b0f6d9978..638700400 100644
--- a/jackrabbit-jcr-rmi/src/main/java/org/apache/jackrabbit/rmi/remote/RemoteQuery.java
+++ b/jackrabbit-jcr-rmi/src/main/java/org/apache/jackrabbit/rmi/remote/RemoteQuery.java
@@ -36,7 +36,7 @@ import javax.jcr.Value;
  * @see org.apache.jackrabbit.rmi.client.ClientQuery
  * @see org.apache.jackrabbit.rmi.server.ServerQuery
  */
-@Deprecated public interface RemoteQuery extends Remote {
+@Deprecated(forRemoval = true) public interface RemoteQuery extends Remote {
 
     /**
      * @see javax.jcr.query.Query#execute()
diff --git a/jackrabbit-jcr-rmi/src/main/java/org/apache/jackrabbit/rmi/remote/RemoteQueryManager.java b/jackrabbit-jcr-rmi/src/main/java/org/apache/jackrabbit/rmi/remote/RemoteQueryManager.java
index b3d65d3b7..fd4e25fda 100644
--- a/jackrabbit-jcr-rmi/src/main/java/org/apache/jackrabbit/rmi/remote/RemoteQueryManager.java
+++ b/jackrabbit-jcr-rmi/src/main/java/org/apache/jackrabbit/rmi/remote/RemoteQueryManager.java
@@ -36,7 +36,7 @@ import javax.jcr.query.Query;
  * @see org.apache.jackrabbit.rmi.client.ClientQueryManager
  * @see org.apache.jackrabbit.rmi.server.ServerQueryManager
  */
-@Deprecated public interface RemoteQueryManager extends Remote {
+@Deprecated(forRemoval = true) public interface RemoteQueryManager extends Remote {
 
     /**
      * @see javax.jcr.query.QueryManager#createQuery
diff --git a/jackrabbit-jcr-rmi/src/main/java/org/apache/jackrabbit/rmi/remote/RemoteQueryResult.java b/jackrabbit-jcr-rmi/src/main/java/org/apache/jackrabbit/rmi/remote/RemoteQueryResult.java
index ee3754b03..84bff5666 100644
--- a/jackrabbit-jcr-rmi/src/main/java/org/apache/jackrabbit/rmi/remote/RemoteQueryResult.java
+++ b/jackrabbit-jcr-rmi/src/main/java/org/apache/jackrabbit/rmi/remote/RemoteQueryResult.java
@@ -35,7 +35,7 @@ import javax.jcr.RepositoryException;
  * @see org.apache.jackrabbit.rmi.client.ClientQueryResult
  * @see org.apache.jackrabbit.rmi.server.ServerQueryResult
  */
-@Deprecated public interface RemoteQueryResult extends Remote {
+@Deprecated(forRemoval = true) public interface RemoteQueryResult extends Remote {
     /**
      * @see javax.jcr.query.QueryResult#getColumnNames()
      *
diff --git a/jackrabbit-jcr-rmi/src/main/java/org/apache/jackrabbit/rmi/remote/RemoteRepository.java b/jackrabbit-jcr-rmi/src/main/java/org/apache/jackrabbit/rmi/remote/RemoteRepository.java
index 01c4b3486..f1189b628 100644
--- a/jackrabbit-jcr-rmi/src/main/java/org/apache/jackrabbit/rmi/remote/RemoteRepository.java
+++ b/jackrabbit-jcr-rmi/src/main/java/org/apache/jackrabbit/rmi/remote/RemoteRepository.java
@@ -45,7 +45,7 @@ import javax.jcr.Value;
  * @see org.apache.jackrabbit.rmi.client.ClientRepository
  * @see org.apache.jackrabbit.rmi.server.ServerRepository
  */
-@Deprecated public interface RemoteRepository extends Remote {
+@Deprecated(forRemoval = true) public interface RemoteRepository extends Remote {
 
     /**
      * Remote version of the
diff --git a/jackrabbit-jcr-rmi/src/main/java/org/apache/jackrabbit/rmi/remote/RemoteRow.java b/jackrabbit-jcr-rmi/src/main/java/org/apache/jackrabbit/rmi/remote/RemoteRow.java
index 15784c5e7..ae9419b54 100644
--- a/jackrabbit-jcr-rmi/src/main/java/org/apache/jackrabbit/rmi/remote/RemoteRow.java
+++ b/jackrabbit-jcr-rmi/src/main/java/org/apache/jackrabbit/rmi/remote/RemoteRow.java
@@ -36,7 +36,7 @@ import javax.jcr.Value;
  * @see org.apache.jackrabbit.rmi.client.ClientRow
  * @see org.apache.jackrabbit.rmi.server.ServerRow
  */
-@Deprecated public interface RemoteRow extends Remote {
+@Deprecated(forRemoval = true) public interface RemoteRow extends Remote {
 
     /**
      * @see javax.jcr.query.Row#getValues()
diff --git a/jackrabbit-jcr-rmi/src/main/java/org/apache/jackrabbit/rmi/remote/RemoteSession.java b/jackrabbit-jcr-rmi/src/main/java/org/apache/jackrabbit/rmi/remote/RemoteSession.java
index 02cf10fc9..6ac8f4790 100644
--- a/jackrabbit-jcr-rmi/src/main/java/org/apache/jackrabbit/rmi/remote/RemoteSession.java
+++ b/jackrabbit-jcr-rmi/src/main/java/org/apache/jackrabbit/rmi/remote/RemoteSession.java
@@ -47,7 +47,7 @@ import org.apache.jackrabbit.rmi.remote.security.RemoteAccessControlManager;
  * @see org.apache.jackrabbit.rmi.client.ClientSession
  * @see org.apache.jackrabbit.rmi.server.ServerSession
  */
-@Deprecated public interface RemoteSession extends Remote {
+@Deprecated(forRemoval = true) public interface RemoteSession extends Remote {
 
     /**
      * Remote version of the
diff --git a/jackrabbit-jcr-rmi/src/main/java/org/apache/jackrabbit/rmi/remote/RemoteVersion.java b/jackrabbit-jcr-rmi/src/main/java/org/apache/jackrabbit/rmi/remote/RemoteVersion.java
index 60ee0ff69..b0ccc6eb1 100644
--- a/jackrabbit-jcr-rmi/src/main/java/org/apache/jackrabbit/rmi/remote/RemoteVersion.java
+++ b/jackrabbit-jcr-rmi/src/main/java/org/apache/jackrabbit/rmi/remote/RemoteVersion.java
@@ -42,7 +42,7 @@ import javax.jcr.RepositoryException;
  * @see org.apache.jackrabbit.rmi.client.ClientVersion
  * @see org.apache.jackrabbit.rmi.server.ServerVersion
  */
-@Deprecated public interface RemoteVersion extends RemoteNode {
+@Deprecated(forRemoval = true) public interface RemoteVersion extends RemoteNode {
 
     /**
      * Remote version of the
diff --git a/jackrabbit-jcr-rmi/src/main/java/org/apache/jackrabbit/rmi/remote/RemoteVersionHistory.java b/jackrabbit-jcr-rmi/src/main/java/org/apache/jackrabbit/rmi/remote/RemoteVersionHistory.java
index 87aa3f4a9..21ee15fd0 100644
--- a/jackrabbit-jcr-rmi/src/main/java/org/apache/jackrabbit/rmi/remote/RemoteVersionHistory.java
+++ b/jackrabbit-jcr-rmi/src/main/java/org/apache/jackrabbit/rmi/remote/RemoteVersionHistory.java
@@ -44,7 +44,7 @@ import javax.jcr.RepositoryException;
  * @see org.apache.jackrabbit.rmi.client.ClientVersionHistory
  * @see org.apache.jackrabbit.rmi.server.ServerVersionHistory
  */
-@Deprecated public interface RemoteVersionHistory extends RemoteNode {
+@Deprecated(forRemoval = true) public interface RemoteVersionHistory extends RemoteNode {
 
     /**
      * Remote version of the
diff --git a/jackrabbit-jcr-rmi/src/main/java/org/apache/jackrabbit/rmi/remote/RemoteVersionManager.java b/jackrabbit-jcr-rmi/src/main/java/org/apache/jackrabbit/rmi/remote/RemoteVersionManager.java
index 7de25d7db..232476319 100644
--- a/jackrabbit-jcr-rmi/src/main/java/org/apache/jackrabbit/rmi/remote/RemoteVersionManager.java
+++ b/jackrabbit-jcr-rmi/src/main/java/org/apache/jackrabbit/rmi/remote/RemoteVersionManager.java
@@ -21,7 +21,7 @@ import java.rmi.RemoteException;
 
 import javax.jcr.RepositoryException;
 
-@Deprecated public interface RemoteVersionManager extends Remote {
+@Deprecated(forRemoval = true) public interface RemoteVersionManager extends Remote {
 
     /**
      * Remote version of the
diff --git a/jackrabbit-jcr-rmi/src/main/java/org/apache/jackrabbit/rmi/remote/RemoteWorkspace.java b/jackrabbit-jcr-rmi/src/main/java/org/apache/jackrabbit/rmi/remote/RemoteWorkspace.java
index e335e448b..82b8a66bb 100644
--- a/jackrabbit-jcr-rmi/src/main/java/org/apache/jackrabbit/rmi/remote/RemoteWorkspace.java
+++ b/jackrabbit-jcr-rmi/src/main/java/org/apache/jackrabbit/rmi/remote/RemoteWorkspace.java
@@ -44,7 +44,7 @@ import javax.jcr.RepositoryException;
  * @see org.apache.jackrabbit.rmi.client.ClientWorkspace
  * @see org.apache.jackrabbit.rmi.server.ServerWorkspace
  */
-@Deprecated public interface RemoteWorkspace extends Remote {
+@Deprecated(forRemoval = true) public interface RemoteWorkspace extends Remote {
 
     /**
      * Remote version of the
diff --git a/jackrabbit-jcr-rmi/src/main/java/org/apache/jackrabbit/rmi/remote/RemoteXASession.java b/jackrabbit-jcr-rmi/src/main/java/org/apache/jackrabbit/rmi/remote/RemoteXASession.java
index 8bc7be4d9..356c1cfb9 100644
--- a/jackrabbit-jcr-rmi/src/main/java/org/apache/jackrabbit/rmi/remote/RemoteXASession.java
+++ b/jackrabbit-jcr-rmi/src/main/java/org/apache/jackrabbit/rmi/remote/RemoteXASession.java
@@ -28,7 +28,7 @@ import javax.transaction.xa.Xid;
  * Remote version of the {@link org.apache.jackrabbit.api.XASession}
  * interface.
  */
-@Deprecated public interface RemoteXASession extends RemoteSession, Remote {
+@Deprecated(forRemoval = true) public interface RemoteXASession extends RemoteSession, Remote {
 
     /**
      * Remote version of the
diff --git a/jackrabbit-jcr-rmi/src/main/java/org/apache/jackrabbit/rmi/remote/SerializableXid.java b/jackrabbit-jcr-rmi/src/main/java/org/apache/jackrabbit/rmi/remote/SerializableXid.java
index df168328f..e7bf5e19e 100644
--- a/jackrabbit-jcr-rmi/src/main/java/org/apache/jackrabbit/rmi/remote/SerializableXid.java
+++ b/jackrabbit-jcr-rmi/src/main/java/org/apache/jackrabbit/rmi/remote/SerializableXid.java
@@ -28,7 +28,7 @@ import javax.transaction.xa.Xid;
  *
  * @since Jackrabbit JCR-RMI 1.5
  */
-@Deprecated public class SerializableXid implements Serializable, Xid {
+@Deprecated(forRemoval = true) public class SerializableXid implements Serializable, Xid {
 
     private final int formatId;
 
diff --git a/jackrabbit-jcr-rmi/src/main/java/org/apache/jackrabbit/rmi/remote/principal/RemoteGroup.java b/jackrabbit-jcr-rmi/src/main/java/org/apache/jackrabbit/rmi/remote/principal/RemoteGroup.java
index 2f6b2423c..36fc05d89 100644
--- a/jackrabbit-jcr-rmi/src/main/java/org/apache/jackrabbit/rmi/remote/principal/RemoteGroup.java
+++ b/jackrabbit-jcr-rmi/src/main/java/org/apache/jackrabbit/rmi/remote/principal/RemoteGroup.java
@@ -42,7 +42,7 @@ import org.apache.jackrabbit.rmi.remote.RemoteIterator;
  * @see org.apache.jackrabbit.rmi.client.principal.ClientGroup
  * @see org.apache.jackrabbit.rmi.server.principal.ServerGroup
  */
-@Deprecated public interface RemoteGroup extends RemotePrincipal {
+@Deprecated(forRemoval = true) public interface RemoteGroup extends RemotePrincipal {
 
     /**
      * @see org.apache.jackrabbit.api.security.principal.GroupPrincipal#isMember(java.security.Principal)
diff --git a/jackrabbit-jcr-rmi/src/main/java/org/apache/jackrabbit/rmi/remote/principal/RemotePrincipal.java b/jackrabbit-jcr-rmi/src/main/java/org/apache/jackrabbit/rmi/remote/principal/RemotePrincipal.java
index 2c9a382ed..10bb5dd02 100644
--- a/jackrabbit-jcr-rmi/src/main/java/org/apache/jackrabbit/rmi/remote/principal/RemotePrincipal.java
+++ b/jackrabbit-jcr-rmi/src/main/java/org/apache/jackrabbit/rmi/remote/principal/RemotePrincipal.java
@@ -43,7 +43,7 @@ import java.rmi.RemoteException;
  * @see org.apache.jackrabbit.rmi.client.principal.ClientPrincipal
  * @see org.apache.jackrabbit.rmi.server.principal.ServerPrincipal
  */
-@Deprecated public interface RemotePrincipal extends Remote {
+@Deprecated(forRemoval = true) public interface RemotePrincipal extends Remote {
 
     /**
      * @see java.security.Principal#getName()
diff --git a/jackrabbit-jcr-rmi/src/main/java/org/apache/jackrabbit/rmi/remote/security/RemoteAccessControlEntry.java b/jackrabbit-jcr-rmi/src/main/java/org/apache/jackrabbit/rmi/remote/security/RemoteAccessControlEntry.java
index f7270c84e..eb5dea06e 100644
--- a/jackrabbit-jcr-rmi/src/main/java/org/apache/jackrabbit/rmi/remote/security/RemoteAccessControlEntry.java
+++ b/jackrabbit-jcr-rmi/src/main/java/org/apache/jackrabbit/rmi/remote/security/RemoteAccessControlEntry.java
@@ -44,7 +44,7 @@ import org.apache.jackrabbit.rmi.remote.principal.RemotePrincipal;
  * @see org.apache.jackrabbit.rmi.client.security.ClientAccessControlEntry
  * @see org.apache.jackrabbit.rmi.server.security.ServerAccessControlEntry
  */
-@Deprecated public interface RemoteAccessControlEntry extends Remote {
+@Deprecated(forRemoval = true) public interface RemoteAccessControlEntry extends Remote {
 
     /**
      * @see javax.jcr.security.AccessControlEntry#getPrincipal()
diff --git a/jackrabbit-jcr-rmi/src/main/java/org/apache/jackrabbit/rmi/remote/security/RemoteAccessControlList.java b/jackrabbit-jcr-rmi/src/main/java/org/apache/jackrabbit/rmi/remote/security/RemoteAccessControlList.java
index a3eda6dba..832eaf957 100644
--- a/jackrabbit-jcr-rmi/src/main/java/org/apache/jackrabbit/rmi/remote/security/RemoteAccessControlList.java
+++ b/jackrabbit-jcr-rmi/src/main/java/org/apache/jackrabbit/rmi/remote/security/RemoteAccessControlList.java
@@ -42,7 +42,7 @@ import javax.jcr.RepositoryException;
  * @see org.apache.jackrabbit.rmi.client.security.ClientAccessControlList
  * @see org.apache.jackrabbit.rmi.server.security.ServerAccessControlList
  */
-@Deprecated public interface RemoteAccessControlList extends RemoteAccessControlPolicy {
+@Deprecated(forRemoval = true) public interface RemoteAccessControlList extends RemoteAccessControlPolicy {
 
     /**
      * @see javax.jcr.security.AccessControlList#getAccessControlEntries()
diff --git a/jackrabbit-jcr-rmi/src/main/java/org/apache/jackrabbit/rmi/remote/security/RemoteAccessControlManager.java b/jackrabbit-jcr-rmi/src/main/java/org/apache/jackrabbit/rmi/remote/security/RemoteAccessControlManager.java
index 65015f1f3..baf3d4991 100644
--- a/jackrabbit-jcr-rmi/src/main/java/org/apache/jackrabbit/rmi/remote/security/RemoteAccessControlManager.java
+++ b/jackrabbit-jcr-rmi/src/main/java/org/apache/jackrabbit/rmi/remote/security/RemoteAccessControlManager.java
@@ -45,7 +45,7 @@ import org.apache.jackrabbit.rmi.remote.RemoteIterator;
  * @see org.apache.jackrabbit.rmi.client.security.ClientAccessControlManager
  * @see org.apache.jackrabbit.rmi.server.security.ServerAccessControlManager
  */
-@Deprecated public interface RemoteAccessControlManager extends Remote {
+@Deprecated(forRemoval = true) public interface RemoteAccessControlManager extends Remote {
 
     /**
      * @see javax.jcr.security.AccessControlManager#getApplicablePolicies(String)
diff --git a/jackrabbit-jcr-rmi/src/main/java/org/apache/jackrabbit/rmi/remote/security/RemoteAccessControlPolicy.java b/jackrabbit-jcr-rmi/src/main/java/org/apache/jackrabbit/rmi/remote/security/RemoteAccessControlPolicy.java
index b34298447..353393139 100644
--- a/jackrabbit-jcr-rmi/src/main/java/org/apache/jackrabbit/rmi/remote/security/RemoteAccessControlPolicy.java
+++ b/jackrabbit-jcr-rmi/src/main/java/org/apache/jackrabbit/rmi/remote/security/RemoteAccessControlPolicy.java
@@ -43,6 +43,6 @@ import java.rmi.Remote;
  * @see org.apache.jackrabbit.rmi.client.security.ClientAccessControlPolicy
  * @see org.apache.jackrabbit.rmi.server.security.ServerAccessControlPolicy
  */
-@Deprecated public interface RemoteAccessControlPolicy extends Remote {
+@Deprecated(forRemoval = true) public interface RemoteAccessControlPolicy extends Remote {
 
 }
diff --git a/jackrabbit-jcr-rmi/src/main/java/org/apache/jackrabbit/rmi/remote/security/RemotePrivilege.java b/jackrabbit-jcr-rmi/src/main/java/org/apache/jackrabbit/rmi/remote/security/RemotePrivilege.java
index b502c7958..f09982f30 100644
--- a/jackrabbit-jcr-rmi/src/main/java/org/apache/jackrabbit/rmi/remote/security/RemotePrivilege.java
+++ b/jackrabbit-jcr-rmi/src/main/java/org/apache/jackrabbit/rmi/remote/security/RemotePrivilege.java
@@ -41,7 +41,7 @@ import java.rmi.RemoteException;
  * @see org.apache.jackrabbit.rmi.client.security.ClientPrivilege
  * @see org.apache.jackrabbit.rmi.server.security.ServerPrivilege
  */
-@Deprecated public interface RemotePrivilege extends Remote {
+@Deprecated(forRemoval = true) public interface RemotePrivilege extends Remote {
 
     /**
      * @see javax.jcr.security.Privilege#getAggregatePrivileges()
diff --git a/jackrabbit-jcr-rmi/src/main/java/org/apache/jackrabbit/rmi/repository/AbstractRemoteRepositoryFactory.java b/jackrabbit-jcr-rmi/src/main/java/org/apache/jackrabbit/rmi/repository/AbstractRemoteRepositoryFactory.java
index 9fdcf7eb7..1b29ac184 100644
--- a/jackrabbit-jcr-rmi/src/main/java/org/apache/jackrabbit/rmi/repository/AbstractRemoteRepositoryFactory.java
+++ b/jackrabbit-jcr-rmi/src/main/java/org/apache/jackrabbit/rmi/repository/AbstractRemoteRepositoryFactory.java
@@ -32,7 +32,7 @@ import org.apache.jackrabbit.rmi.remote.RemoteRepository;
  *
  * @since 1.4
  */
-@Deprecated public abstract class AbstractRemoteRepositoryFactory
+@Deprecated(forRemoval = true) public abstract class AbstractRemoteRepositoryFactory
         implements RepositoryFactory {
 
     /**
diff --git a/jackrabbit-jcr-rmi/src/main/java/org/apache/jackrabbit/rmi/repository/JNDIRemoteRepository.java b/jackrabbit-jcr-rmi/src/main/java/org/apache/jackrabbit/rmi/repository/JNDIRemoteRepository.java
index ab6c45964..df577ce10 100644
--- a/jackrabbit-jcr-rmi/src/main/java/org/apache/jackrabbit/rmi/repository/JNDIRemoteRepository.java
+++ b/jackrabbit-jcr-rmi/src/main/java/org/apache/jackrabbit/rmi/repository/JNDIRemoteRepository.java
@@ -34,7 +34,7 @@ import org.apache.jackrabbit.rmi.client.LocalAdapterFactory;
  *
  * @since 1.4
  */
-@Deprecated public class JNDIRemoteRepository extends ProxyRepository {
+@Deprecated(forRemoval = true) public class JNDIRemoteRepository extends ProxyRepository {
 
     /**
      * Creates a proxy for a remote repository in JNDI.
diff --git a/jackrabbit-jcr-rmi/src/main/java/org/apache/jackrabbit/rmi/repository/JNDIRemoteRepositoryFactory.java b/jackrabbit-jcr-rmi/src/main/java/org/apache/jackrabbit/rmi/repository/JNDIRemoteRepositoryFactory.java
index d3a476fcb..943b904aa 100644
--- a/jackrabbit-jcr-rmi/src/main/java/org/apache/jackrabbit/rmi/repository/JNDIRemoteRepositoryFactory.java
+++ b/jackrabbit-jcr-rmi/src/main/java/org/apache/jackrabbit/rmi/repository/JNDIRemoteRepositoryFactory.java
@@ -30,7 +30,7 @@ import org.apache.jackrabbit.rmi.remote.RemoteRepository;
  *
  * @since 1.4
  */
-@Deprecated public class JNDIRemoteRepositoryFactory
+@Deprecated(forRemoval = true) public class JNDIRemoteRepositoryFactory
         extends AbstractRemoteRepositoryFactory {
 
     /**
diff --git a/jackrabbit-jcr-rmi/src/main/java/org/apache/jackrabbit/rmi/repository/ProxyRepository.java b/jackrabbit-jcr-rmi/src/main/java/org/apache/jackrabbit/rmi/repository/ProxyRepository.java
index 433ce5953..e5dd0afe1 100644
--- a/jackrabbit-jcr-rmi/src/main/java/org/apache/jackrabbit/rmi/repository/ProxyRepository.java
+++ b/jackrabbit-jcr-rmi/src/main/java/org/apache/jackrabbit/rmi/repository/ProxyRepository.java
@@ -34,7 +34,7 @@ import javax.jcr.Value;
  *
  * @since 1.4
  */
-@Deprecated public class ProxyRepository implements Repository {
+@Deprecated(forRemoval = true) public class ProxyRepository implements Repository {
 
     /**
      * The set of standard descriptor keys defined in the
diff --git a/jackrabbit-jcr-rmi/src/main/java/org/apache/jackrabbit/rmi/repository/RMIRemoteRepository.java b/jackrabbit-jcr-rmi/src/main/java/org/apache/jackrabbit/rmi/repository/RMIRemoteRepository.java
index bb3e29ca3..979dc7e0c 100644
--- a/jackrabbit-jcr-rmi/src/main/java/org/apache/jackrabbit/rmi/repository/RMIRemoteRepository.java
+++ b/jackrabbit-jcr-rmi/src/main/java/org/apache/jackrabbit/rmi/repository/RMIRemoteRepository.java
@@ -30,7 +30,7 @@ import org.apache.jackrabbit.rmi.client.LocalAdapterFactory;
  *
  * @since 1.4
  */
-@Deprecated public class RMIRemoteRepository extends ProxyRepository {
+@Deprecated(forRemoval = true) public class RMIRemoteRepository extends ProxyRepository {
 
     /**
      * Creates a proxy for the remote repository in the given RMI URL.
diff --git a/jackrabbit-jcr-rmi/src/main/java/org/apache/jackrabbit/rmi/repository/RMIRemoteRepositoryFactory.java b/jackrabbit-jcr-rmi/src/main/java/org/apache/jackrabbit/rmi/repository/RMIRemoteRepositoryFactory.java
index 87785b5f7..370ec3aea 100644
--- a/jackrabbit-jcr-rmi/src/main/java/org/apache/jackrabbit/rmi/repository/RMIRemoteRepositoryFactory.java
+++ b/jackrabbit-jcr-rmi/src/main/java/org/apache/jackrabbit/rmi/repository/RMIRemoteRepositoryFactory.java
@@ -33,7 +33,7 @@ import org.apache.jackrabbit.rmi.remote.RemoteRepository;
  *
  * @since 1.4
  */
-@Deprecated public class RMIRemoteRepositoryFactory
+@Deprecated(forRemoval = true) public class RMIRemoteRepositoryFactory
         extends AbstractRemoteRepositoryFactory {
 
     /**
diff --git a/jackrabbit-jcr-rmi/src/main/java/org/apache/jackrabbit/rmi/repository/RepositoryFactory.java b/jackrabbit-jcr-rmi/src/main/java/org/apache/jackrabbit/rmi/repository/RepositoryFactory.java
index c7b86150d..b16f85c1d 100644
--- a/jackrabbit-jcr-rmi/src/main/java/org/apache/jackrabbit/rmi/repository/RepositoryFactory.java
+++ b/jackrabbit-jcr-rmi/src/main/java/org/apache/jackrabbit/rmi/repository/RepositoryFactory.java
@@ -24,7 +24,7 @@ import javax.jcr.RepositoryException;
  * <p>
  * Factory interface for JCR content repositories.
  */
-@Deprecated interface RepositoryFactory {
+@Deprecated(forRemoval = true) interface RepositoryFactory {
 
     /**
      * Returns a content repository.
diff --git a/jackrabbit-jcr-rmi/src/main/java/org/apache/jackrabbit/rmi/repository/RmiRepositoryFactory.java b/jackrabbit-jcr-rmi/src/main/java/org/apache/jackrabbit/rmi/repository/RmiRepositoryFactory.java
index fbe916edf..8a7b3aa99 100644
--- a/jackrabbit-jcr-rmi/src/main/java/org/apache/jackrabbit/rmi/repository/RmiRepositoryFactory.java
+++ b/jackrabbit-jcr-rmi/src/main/java/org/apache/jackrabbit/rmi/repository/RmiRepositoryFactory.java
@@ -40,7 +40,7 @@ import org.apache.jackrabbit.rmi.client.LocalAdapterFactory;
 import org.apache.jackrabbit.rmi.client.SafeClientRepository;
 import org.apache.jackrabbit.rmi.remote.RemoteRepository;
 
-@Deprecated public class RmiRepositoryFactory implements RepositoryFactory {
+@Deprecated(forRemoval = true) public class RmiRepositoryFactory implements RepositoryFactory {
 
     private static final String REPOSITORY_URI =
         "org.apache.jackrabbit.repository.uri";
diff --git a/jackrabbit-jcr-rmi/src/main/java/org/apache/jackrabbit/rmi/repository/URLRemoteRepository.java b/jackrabbit-jcr-rmi/src/main/java/org/apache/jackrabbit/rmi/repository/URLRemoteRepository.java
index 23c198163..4d8095e7d 100644
--- a/jackrabbit-jcr-rmi/src/main/java/org/apache/jackrabbit/rmi/repository/URLRemoteRepository.java
+++ b/jackrabbit-jcr-rmi/src/main/java/org/apache/jackrabbit/rmi/repository/URLRemoteRepository.java
@@ -33,7 +33,7 @@ import org.apache.jackrabbit.rmi.client.LocalAdapterFactory;
  *
  * @since 1.4
  */
-@Deprecated public class URLRemoteRepository extends ProxyRepository {
+@Deprecated(forRemoval = true) public class URLRemoteRepository extends ProxyRepository {
 
     /**
      * Creates a proxy for the remote repository at the given URL.
diff --git a/jackrabbit-jcr-rmi/src/main/java/org/apache/jackrabbit/rmi/repository/URLRemoteRepositoryFactory.java b/jackrabbit-jcr-rmi/src/main/java/org/apache/jackrabbit/rmi/repository/URLRemoteRepositoryFactory.java
index e41b3c83a..cc950fa3e 100644
--- a/jackrabbit-jcr-rmi/src/main/java/org/apache/jackrabbit/rmi/repository/URLRemoteRepositoryFactory.java
+++ b/jackrabbit-jcr-rmi/src/main/java/org/apache/jackrabbit/rmi/repository/URLRemoteRepositoryFactory.java
@@ -32,7 +32,7 @@ import org.apache.jackrabbit.rmi.remote.RemoteRepository;
  *
  * @since 1.4
  */
-@Deprecated public class URLRemoteRepositoryFactory
+@Deprecated(forRemoval = true) public class URLRemoteRepositoryFactory
         extends AbstractRemoteRepositoryFactory {
 
     /**
diff --git a/jackrabbit-jcr-rmi/src/main/java/org/apache/jackrabbit/rmi/server/RemoteAdapterFactory.java b/jackrabbit-jcr-rmi/src/main/java/org/apache/jackrabbit/rmi/server/RemoteAdapterFactory.java
index 155a70fab..d30e5d1b0 100644
--- a/jackrabbit-jcr-rmi/src/main/java/org/apache/jackrabbit/rmi/server/RemoteAdapterFactory.java
+++ b/jackrabbit-jcr-rmi/src/main/java/org/apache/jackrabbit/rmi/server/RemoteAdapterFactory.java
@@ -102,7 +102,7 @@ import org.apache.jackrabbit.rmi.remote.security.RemotePrivilege;
  * @see org.apache.jackrabbit.rmi.server.ServerAdapterFactory
  * @see org.apache.jackrabbit.rmi.server.ServerObject
  */
-@Deprecated public interface RemoteAdapterFactory {
+@Deprecated(forRemoval = true) public interface RemoteAdapterFactory {
 
     /**
      * Returns the port number to which the server objects created by
diff --git a/jackrabbit-jcr-rmi/src/main/java/org/apache/jackrabbit/rmi/server/ServerAdapterFactory.java b/jackrabbit-jcr-rmi/src/main/java/org/apache/jackrabbit/rmi/server/ServerAdapterFactory.java
index 7cbf4f4b0..2b5e12205 100644
--- a/jackrabbit-jcr-rmi/src/main/java/org/apache/jackrabbit/rmi/server/ServerAdapterFactory.java
+++ b/jackrabbit-jcr-rmi/src/main/java/org/apache/jackrabbit/rmi/server/ServerAdapterFactory.java
@@ -117,7 +117,7 @@ import org.apache.jackrabbit.rmi.server.security.ServerPrivilege;
  * The <code>bufferSize</code> property can be used to configure the size of the
  * buffer used by iterators to speed up iterator traversal over the network.
  */
-@Deprecated public class ServerAdapterFactory implements RemoteAdapterFactory {
+@Deprecated(forRemoval = true) public class ServerAdapterFactory implements RemoteAdapterFactory {
 
     /** The default iterator buffer size. */
     private static final int DEFAULT_BUFFER_SIZE = 100;
diff --git a/jackrabbit-jcr-rmi/src/main/java/org/apache/jackrabbit/rmi/server/ServerEventCollection.java b/jackrabbit-jcr-rmi/src/main/java/org/apache/jackrabbit/rmi/server/ServerEventCollection.java
index 470aaf87f..b88192ca7 100644
--- a/jackrabbit-jcr-rmi/src/main/java/org/apache/jackrabbit/rmi/server/ServerEventCollection.java
+++ b/jackrabbit-jcr-rmi/src/main/java/org/apache/jackrabbit/rmi/server/ServerEventCollection.java
@@ -36,7 +36,7 @@ import org.apache.jackrabbit.rmi.remote.RemoteEventCollection;
  * provided such that the receiving listener may be identified on the
  * client-side.
  */
-@Deprecated public class ServerEventCollection extends ServerObject implements
+@Deprecated(forRemoval = true) public class ServerEventCollection extends ServerObject implements
         RemoteEventCollection {
 
     /** The unique identifier of the receiving listener */
diff --git a/jackrabbit-jcr-rmi/src/main/java/org/apache/jackrabbit/rmi/server/ServerItem.java b/jackrabbit-jcr-rmi/src/main/java/org/apache/jackrabbit/rmi/server/ServerItem.java
index 6ff506b3b..d6bf0b24b 100644
--- a/jackrabbit-jcr-rmi/src/main/java/org/apache/jackrabbit/rmi/server/ServerItem.java
+++ b/jackrabbit-jcr-rmi/src/main/java/org/apache/jackrabbit/rmi/server/ServerItem.java
@@ -38,7 +38,7 @@ import org.apache.jackrabbit.rmi.remote.RemoteNode;
  * @see javax.jcr.Item
  * @see org.apache.jackrabbit.rmi.remote.RemoteItem
  */
-@Deprecated public class ServerItem extends ServerObject implements RemoteItem {
+@Deprecated(forRemoval = true) public class ServerItem extends ServerObject implements RemoteItem {
 
     /** The adapted local item. */
     private Item item;
diff --git a/jackrabbit-jcr-rmi/src/main/java/org/apache/jackrabbit/rmi/server/ServerItemDefinition.java b/jackrabbit-jcr-rmi/src/main/java/org/apache/jackrabbit/rmi/server/ServerItemDefinition.java
index dc7314895..f9ad98d8c 100644
--- a/jackrabbit-jcr-rmi/src/main/java/org/apache/jackrabbit/rmi/server/ServerItemDefinition.java
+++ b/jackrabbit-jcr-rmi/src/main/java/org/apache/jackrabbit/rmi/server/ServerItemDefinition.java
@@ -40,7 +40,7 @@ import org.apache.jackrabbit.rmi.remote.RemoteNodeType;
  * @see javax.jcr.nodetype.ItemDefinition
  * @see org.apache.jackrabbit.rmi.remote.RemoteItemDefinition
  */
-@Deprecated public class ServerItemDefinition extends ServerObject implements RemoteItemDefinition {
+@Deprecated(forRemoval = true) public class ServerItemDefinition extends ServerObject implements RemoteItemDefinition {
 
     /** The adapted local item definition. */
     private ItemDefinition def;
diff --git a/jackrabbit-jcr-rmi/src/main/java/org/apache/jackrabbit/rmi/server/ServerLock.java b/jackrabbit-jcr-rmi/src/main/java/org/apache/jackrabbit/rmi/server/ServerLock.java
index 4f80a39cc..59db0f39f 100644
--- a/jackrabbit-jcr-rmi/src/main/java/org/apache/jackrabbit/rmi/server/ServerLock.java
+++ b/jackrabbit-jcr-rmi/src/main/java/org/apache/jackrabbit/rmi/server/ServerLock.java
@@ -35,7 +35,7 @@ import org.apache.jackrabbit.rmi.remote.RemoteNode;
  * @see javax.jcr.lock.Lock
  * @see org.apache.jackrabbit.rmi.remote.RemoteLock
  */
-@Deprecated public class ServerLock extends ServerObject implements RemoteLock {
+@Deprecated(forRemoval = true) public class ServerLock extends ServerObject implements RemoteLock {
 
     /** The adapted local lock. */
     private Lock lock;
diff --git a/jackrabbit-jcr-rmi/src/main/java/org/apache/jackrabbit/rmi/server/ServerLockManager.java b/jackrabbit-jcr-rmi/src/main/java/org/apache/jackrabbit/rmi/server/ServerLockManager.java
index 4c76d011f..9221f8c6b 100644
--- a/jackrabbit-jcr-rmi/src/main/java/org/apache/jackrabbit/rmi/server/ServerLockManager.java
+++ b/jackrabbit-jcr-rmi/src/main/java/org/apache/jackrabbit/rmi/server/ServerLockManager.java
@@ -24,7 +24,7 @@ import javax.jcr.lock.LockManager;
 import org.apache.jackrabbit.rmi.remote.RemoteLock;
 import org.apache.jackrabbit.rmi.remote.RemoteLockManager;
 
-@Deprecated public class ServerLockManager extends ServerObject
+@Deprecated(forRemoval = true) public class ServerLockManager extends ServerObject
         implements RemoteLockManager {
 
     /** The adapted local lock manager. */
diff --git a/jackrabbit-jcr-rmi/src/main/java/org/apache/jackrabbit/rmi/server/ServerNamespaceRegistry.java b/jackrabbit-jcr-rmi/src/main/java/org/apache/jackrabbit/rmi/server/ServerNamespaceRegistry.java
index b9c5696c9..445ea42d2 100644
--- a/jackrabbit-jcr-rmi/src/main/java/org/apache/jackrabbit/rmi/server/ServerNamespaceRegistry.java
+++ b/jackrabbit-jcr-rmi/src/main/java/org/apache/jackrabbit/rmi/server/ServerNamespaceRegistry.java
@@ -36,7 +36,7 @@ import org.apache.jackrabbit.rmi.remote.RemoteNamespaceRegistry;
  * @see javax.jcr.NamespaceRegistry
  * @see org.apache.jackrabbit.rmi.remote.RemoteNamespaceRegistry
  */
-@Deprecated public class ServerNamespaceRegistry extends ServerObject implements
+@Deprecated(forRemoval = true) public class ServerNamespaceRegistry extends ServerObject implements
         RemoteNamespaceRegistry {
 
     /** The adapted local namespace registry. */
diff --git a/jackrabbit-jcr-rmi/src/main/java/org/apache/jackrabbit/rmi/server/ServerNode.java b/jackrabbit-jcr-rmi/src/main/java/org/apache/jackrabbit/rmi/server/ServerNode.java
index ef7cd0d36..cb2aa90c5 100644
--- a/jackrabbit-jcr-rmi/src/main/java/org/apache/jackrabbit/rmi/server/ServerNode.java
+++ b/jackrabbit-jcr-rmi/src/main/java/org/apache/jackrabbit/rmi/server/ServerNode.java
@@ -48,7 +48,7 @@ import org.apache.jackrabbit.rmi.remote.RemoteVersionHistory;
  * @see javax.jcr.Node
  * @see org.apache.jackrabbit.rmi.remote.RemoteNode
  */
-@Deprecated public class ServerNode extends ServerItem implements RemoteNode {
+@Deprecated(forRemoval = true) public class ServerNode extends ServerItem implements RemoteNode {
 
     /** The adapted local node. */
     private Node node;
diff --git a/jackrabbit-jcr-rmi/src/main/java/org/apache/jackrabbit/rmi/server/ServerNodeDefinition.java b/jackrabbit-jcr-rmi/src/main/java/org/apache/jackrabbit/rmi/server/ServerNodeDefinition.java
index f767d0c3d..9239a3e65 100644
--- a/jackrabbit-jcr-rmi/src/main/java/org/apache/jackrabbit/rmi/server/ServerNodeDefinition.java
+++ b/jackrabbit-jcr-rmi/src/main/java/org/apache/jackrabbit/rmi/server/ServerNodeDefinition.java
@@ -36,7 +36,7 @@ import org.apache.jackrabbit.rmi.remote.RemoteNodeType;
  * @see javax.jcr.nodetype.NodeDefinition
  * @see org.apache.jackrabbit.rmi.remote.RemoteNodeDefinition
  */
-@Deprecated public class ServerNodeDefinition extends ServerItemDefinition implements RemoteNodeDefinition {
+@Deprecated(forRemoval = true) public class ServerNodeDefinition extends ServerItemDefinition implements RemoteNodeDefinition {
 
     /** The adapted node definition. */
     private NodeDefinition def;
diff --git a/jackrabbit-jcr-rmi/src/main/java/org/apache/jackrabbit/rmi/server/ServerNodeType.java b/jackrabbit-jcr-rmi/src/main/java/org/apache/jackrabbit/rmi/server/ServerNodeType.java
index eb8f5494e..c8881db8a 100644
--- a/jackrabbit-jcr-rmi/src/main/java/org/apache/jackrabbit/rmi/server/ServerNodeType.java
+++ b/jackrabbit-jcr-rmi/src/main/java/org/apache/jackrabbit/rmi/server/ServerNodeType.java
@@ -40,7 +40,7 @@ import org.apache.jackrabbit.rmi.remote.RemotePropertyDefinition;
  * @see javax.jcr.nodetype.NodeType
  * @see org.apache.jackrabbit.rmi.remote.RemoteNodeType
  */
-@Deprecated public class ServerNodeType extends ServerObject implements RemoteNodeType {
+@Deprecated(forRemoval = true) public class ServerNodeType extends ServerObject implements RemoteNodeType {
 
     /** The adapted local node type. */
     private NodeType type;
diff --git a/jackrabbit-jcr-rmi/src/main/java/org/apache/jackrabbit/rmi/server/ServerNodeTypeManager.java b/jackrabbit-jcr-rmi/src/main/java/org/apache/jackrabbit/rmi/server/ServerNodeTypeManager.java
index e15050ae6..0da63de87 100644
--- a/jackrabbit-jcr-rmi/src/main/java/org/apache/jackrabbit/rmi/server/ServerNodeTypeManager.java
+++ b/jackrabbit-jcr-rmi/src/main/java/org/apache/jackrabbit/rmi/server/ServerNodeTypeManager.java
@@ -38,7 +38,7 @@ import org.apache.jackrabbit.rmi.remote.RemoteNodeTypeManager;
  * @see javax.jcr.nodetype.NodeTypeManager
  * @see org.apache.jackrabbit.rmi.remote.RemoteNodeTypeManager
  */
-@Deprecated public class ServerNodeTypeManager extends ServerObject
+@Deprecated(forRemoval = true) public class ServerNodeTypeManager extends ServerObject
         implements RemoteNodeTypeManager {
 
     /** The adapted local node type manager. */
diff --git a/jackrabbit-jcr-rmi/src/main/java/org/apache/jackrabbit/rmi/server/ServerObject.java b/jackrabbit-jcr-rmi/src/main/java/org/apache/jackrabbit/rmi/server/ServerObject.java
index e5436144c..5a604f0f0 100644
--- a/jackrabbit-jcr-rmi/src/main/java/org/apache/jackrabbit/rmi/server/ServerObject.java
+++ b/jackrabbit-jcr-rmi/src/main/java/org/apache/jackrabbit/rmi/server/ServerObject.java
@@ -62,7 +62,7 @@ import org.apache.jackrabbit.rmi.value.SerialValueFactory;
  * centralize the handling of the RemoteAdapterFactory instance used
  * to instantiate new server adapters.
  */
-@Deprecated public class ServerObject extends UnicastRemoteObject {
+@Deprecated(forRemoval = true) public class ServerObject extends UnicastRemoteObject {
 
     /** Factory for creating server adapters. */
     private RemoteAdapterFactory factory;
diff --git a/jackrabbit-jcr-rmi/src/main/java/org/apache/jackrabbit/rmi/server/ServerObservationManager.java b/jackrabbit-jcr-rmi/src/main/java/org/apache/jackrabbit/rmi/server/ServerObservationManager.java
index 16e4fa6de..e15898768 100644
--- a/jackrabbit-jcr-rmi/src/main/java/org/apache/jackrabbit/rmi/server/ServerObservationManager.java
+++ b/jackrabbit-jcr-rmi/src/main/java/org/apache/jackrabbit/rmi/server/ServerObservationManager.java
@@ -46,7 +46,7 @@ import org.apache.jackrabbit.rmi.remote.RemoteObservationManager;
  * @see javax.jcr.observation.ObservationManager
  * @see org.apache.jackrabbit.rmi.remote.RemoteObservationManager
  */
-@Deprecated public class ServerObservationManager extends ServerObject implements
+@Deprecated(forRemoval = true) public class ServerObservationManager extends ServerObject implements
         RemoteObservationManager {
 
     /** The adapted local observation manager. */
diff --git a/jackrabbit-jcr-rmi/src/main/java/org/apache/jackrabbit/rmi/server/ServerProperty.java b/jackrabbit-jcr-rmi/src/main/java/org/apache/jackrabbit/rmi/server/ServerProperty.java
index 0d0eb95b3..1b1ab01d1 100644
--- a/jackrabbit-jcr-rmi/src/main/java/org/apache/jackrabbit/rmi/server/ServerProperty.java
+++ b/jackrabbit-jcr-rmi/src/main/java/org/apache/jackrabbit/rmi/server/ServerProperty.java
@@ -38,7 +38,7 @@ import org.apache.jackrabbit.rmi.value.SerialValueFactory;
  * @see javax.jcr.Property
  * @see org.apache.jackrabbit.rmi.remote.RemoteProperty
  */
-@Deprecated public class ServerProperty extends ServerItem implements RemoteProperty {
+@Deprecated(forRemoval = true) public class ServerProperty extends ServerItem implements RemoteProperty {
 
     /** The adapted local property. */
     private Property property;
diff --git a/jackrabbit-jcr-rmi/src/main/java/org/apache/jackrabbit/rmi/server/ServerPropertyDefinition.java b/jackrabbit-jcr-rmi/src/main/java/org/apache/jackrabbit/rmi/server/ServerPropertyDefinition.java
index c552810ab..647831ed2 100644
--- a/jackrabbit-jcr-rmi/src/main/java/org/apache/jackrabbit/rmi/server/ServerPropertyDefinition.java
+++ b/jackrabbit-jcr-rmi/src/main/java/org/apache/jackrabbit/rmi/server/ServerPropertyDefinition.java
@@ -37,7 +37,7 @@ import org.apache.jackrabbit.rmi.remote.RemotePropertyDefinition;
  * @see javax.jcr.nodetype.PropertyDefinition
  * @see org.apache.jackrabbit.rmi.remote.RemotePropertyDefinition
  */
-@Deprecated public class ServerPropertyDefinition extends ServerItemDefinition
+@Deprecated(forRemoval = true) public class ServerPropertyDefinition extends ServerItemDefinition
         implements RemotePropertyDefinition {
 
     /** The adapted local property definition. */
diff --git a/jackrabbit-jcr-rmi/src/main/java/org/apache/jackrabbit/rmi/server/ServerQuery.java b/jackrabbit-jcr-rmi/src/main/java/org/apache/jackrabbit/rmi/server/ServerQuery.java
index 732140acd..5cc63f8d4 100644
--- a/jackrabbit-jcr-rmi/src/main/java/org/apache/jackrabbit/rmi/server/ServerQuery.java
+++ b/jackrabbit-jcr-rmi/src/main/java/org/apache/jackrabbit/rmi/server/ServerQuery.java
@@ -37,7 +37,7 @@ import org.apache.jackrabbit.rmi.remote.RemoteNode;
  * @see javax.jcr.query.Query
  * @see org.apache.jackrabbit.rmi.remote.RemoteQuery
  */
-@Deprecated public class ServerQuery extends ServerObject implements RemoteQuery {
+@Deprecated(forRemoval = true) public class ServerQuery extends ServerObject implements RemoteQuery {
 
     /** The adapted local query manager. */
     private Query query;
diff --git a/jackrabbit-jcr-rmi/src/main/java/org/apache/jackrabbit/rmi/server/ServerQueryManager.java b/jackrabbit-jcr-rmi/src/main/java/org/apache/jackrabbit/rmi/server/ServerQueryManager.java
index 36a2602ac..4310bfc51 100644
--- a/jackrabbit-jcr-rmi/src/main/java/org/apache/jackrabbit/rmi/server/ServerQueryManager.java
+++ b/jackrabbit-jcr-rmi/src/main/java/org/apache/jackrabbit/rmi/server/ServerQueryManager.java
@@ -41,7 +41,7 @@ import org.apache.jackrabbit.rmi.remote.RemoteQueryManager;
  * @see javax.jcr.query.QueryManager
  * @see org.apache.jackrabbit.rmi.remote.RemoteQueryManager
  */
-@Deprecated public class ServerQueryManager extends ServerObject
+@Deprecated(forRemoval = true) public class ServerQueryManager extends ServerObject
         implements RemoteQueryManager {
 
     /** The current session. */
diff --git a/jackrabbit-jcr-rmi/src/main/java/org/apache/jackrabbit/rmi/server/ServerQueryResult.java b/jackrabbit-jcr-rmi/src/main/java/org/apache/jackrabbit/rmi/server/ServerQueryResult.java
index a1d04af01..2a4cc66b2 100644
--- a/jackrabbit-jcr-rmi/src/main/java/org/apache/jackrabbit/rmi/server/ServerQueryResult.java
+++ b/jackrabbit-jcr-rmi/src/main/java/org/apache/jackrabbit/rmi/server/ServerQueryResult.java
@@ -35,7 +35,7 @@ import org.apache.jackrabbit.rmi.remote.RemoteQueryResult;
  * @see javax.jcr.query.QueryResult
  * @see org.apache.jackrabbit.rmi.remote.RemoteQueryResult
  */
-@Deprecated public class ServerQueryResult extends ServerObject
+@Deprecated(forRemoval = true) public class ServerQueryResult extends ServerObject
         implements RemoteQueryResult {
 
     /** The adapted local query result. */
diff --git a/jackrabbit-jcr-rmi/src/main/java/org/apache/jackrabbit/rmi/server/ServerRepository.java b/jackrabbit-jcr-rmi/src/main/java/org/apache/jackrabbit/rmi/server/ServerRepository.java
index c9d83b627..0cac82f6e 100644
--- a/jackrabbit-jcr-rmi/src/main/java/org/apache/jackrabbit/rmi/server/ServerRepository.java
+++ b/jackrabbit-jcr-rmi/src/main/java/org/apache/jackrabbit/rmi/server/ServerRepository.java
@@ -40,7 +40,7 @@ import org.apache.jackrabbit.rmi.value.SerialValueFactory;
  * @see javax.jcr.Repository
  * @see org.apache.jackrabbit.rmi.remote.RemoteRepository
  */
-@Deprecated public class ServerRepository extends ServerObject implements RemoteRepository {
+@Deprecated(forRemoval = true) public class ServerRepository extends ServerObject implements RemoteRepository {
 
     /** The adapted local repository. */
     private Repository repository;
diff --git a/jackrabbit-jcr-rmi/src/main/java/org/apache/jackrabbit/rmi/server/ServerRow.java b/jackrabbit-jcr-rmi/src/main/java/org/apache/jackrabbit/rmi/server/ServerRow.java
index 387df0fe7..f41571bdf 100644
--- a/jackrabbit-jcr-rmi/src/main/java/org/apache/jackrabbit/rmi/server/ServerRow.java
+++ b/jackrabbit-jcr-rmi/src/main/java/org/apache/jackrabbit/rmi/server/ServerRow.java
@@ -37,7 +37,7 @@ import org.apache.jackrabbit.rmi.value.SerialValueFactory;
  * @see javax.jcr.query.Row
  * @see org.apache.jackrabbit.rmi.remote.RemoteRow
  */
-@Deprecated public class ServerRow extends ServerObject implements RemoteRow {
+@Deprecated(forRemoval = true) public class ServerRow extends ServerObject implements RemoteRow {
 
     /** The adapted local row. */
     private Row row;
diff --git a/jackrabbit-jcr-rmi/src/main/java/org/apache/jackrabbit/rmi/server/ServerSession.java b/jackrabbit-jcr-rmi/src/main/java/org/apache/jackrabbit/rmi/server/ServerSession.java
index 14a3e865e..f5ce9c04c 100644
--- a/jackrabbit-jcr-rmi/src/main/java/org/apache/jackrabbit/rmi/server/ServerSession.java
+++ b/jackrabbit-jcr-rmi/src/main/java/org/apache/jackrabbit/rmi/server/ServerSession.java
@@ -44,7 +44,7 @@ import org.apache.jackrabbit.rmi.remote.security.RemoteAccessControlManager;
  * @see javax.jcr.Session
  * @see org.apache.jackrabbit.rmi.remote.RemoteSession
  */
-@Deprecated public class ServerSession extends ServerObject implements RemoteSession {
+@Deprecated(forRemoval = true) public class ServerSession extends ServerObject implements RemoteSession {
 
     /** The adapted local session. */
     private Session session;
diff --git a/jackrabbit-jcr-rmi/src/main/java/org/apache/jackrabbit/rmi/server/ServerVersion.java b/jackrabbit-jcr-rmi/src/main/java/org/apache/jackrabbit/rmi/server/ServerVersion.java
index f11ea0ce8..2dda97f12 100644
--- a/jackrabbit-jcr-rmi/src/main/java/org/apache/jackrabbit/rmi/server/ServerVersion.java
+++ b/jackrabbit-jcr-rmi/src/main/java/org/apache/jackrabbit/rmi/server/ServerVersion.java
@@ -37,7 +37,7 @@ import org.apache.jackrabbit.rmi.remote.RemoteVersionHistory;
  * @see javax.jcr.version.Version
  * @see org.apache.jackrabbit.rmi.remote.RemoteVersion
  */
-@Deprecated public class ServerVersion extends ServerNode implements RemoteVersion {
+@Deprecated(forRemoval = true) public class ServerVersion extends ServerNode implements RemoteVersion {
 
     /** The adapted local version. */
     private Version version;
diff --git a/jackrabbit-jcr-rmi/src/main/java/org/apache/jackrabbit/rmi/server/ServerVersionHistory.java b/jackrabbit-jcr-rmi/src/main/java/org/apache/jackrabbit/rmi/server/ServerVersionHistory.java
index 95a37e50c..ac31de6c5 100644
--- a/jackrabbit-jcr-rmi/src/main/java/org/apache/jackrabbit/rmi/server/ServerVersionHistory.java
+++ b/jackrabbit-jcr-rmi/src/main/java/org/apache/jackrabbit/rmi/server/ServerVersionHistory.java
@@ -38,7 +38,7 @@ import org.apache.jackrabbit.rmi.remote.RemoteVersionHistory;
  * @see javax.jcr.version.VersionHistory
  * @see org.apache.jackrabbit.rmi.remote.RemoteVersionHistory
  */
-@Deprecated public class ServerVersionHistory extends ServerNode
+@Deprecated(forRemoval = true) public class ServerVersionHistory extends ServerNode
         implements RemoteVersionHistory {
 
     /** The adapted local version history. */
diff --git a/jackrabbit-jcr-rmi/src/main/java/org/apache/jackrabbit/rmi/server/ServerVersionManager.java b/jackrabbit-jcr-rmi/src/main/java/org/apache/jackrabbit/rmi/server/ServerVersionManager.java
index 96c5a4a73..61d2fd6f9 100644
--- a/jackrabbit-jcr-rmi/src/main/java/org/apache/jackrabbit/rmi/server/ServerVersionManager.java
+++ b/jackrabbit-jcr-rmi/src/main/java/org/apache/jackrabbit/rmi/server/ServerVersionManager.java
@@ -30,7 +30,7 @@ import org.apache.jackrabbit.rmi.remote.RemoteVersion;
 import org.apache.jackrabbit.rmi.remote.RemoteVersionHistory;
 import org.apache.jackrabbit.rmi.remote.RemoteVersionManager;
 
-@Deprecated public class ServerVersionManager extends ServerObject
+@Deprecated(forRemoval = true) public class ServerVersionManager extends ServerObject
         implements RemoteVersionManager {
 
     private final Session session;    
diff --git a/jackrabbit-jcr-rmi/src/main/java/org/apache/jackrabbit/rmi/server/ServerWorkspace.java b/jackrabbit-jcr-rmi/src/main/java/org/apache/jackrabbit/rmi/server/ServerWorkspace.java
index 9efd288eb..f3c18efbf 100644
--- a/jackrabbit-jcr-rmi/src/main/java/org/apache/jackrabbit/rmi/server/ServerWorkspace.java
+++ b/jackrabbit-jcr-rmi/src/main/java/org/apache/jackrabbit/rmi/server/ServerWorkspace.java
@@ -47,7 +47,7 @@ import org.apache.jackrabbit.rmi.remote.RemoteWorkspace;
  * @see Workspace
  * @see RemoteWorkspace
  */
-@Deprecated public class ServerWorkspace extends ServerObject implements RemoteWorkspace {
+@Deprecated(forRemoval = true) public class ServerWorkspace extends ServerObject implements RemoteWorkspace {
 
     /** The adapted local workspace. */
     private Workspace workspace;
diff --git a/jackrabbit-jcr-rmi/src/main/java/org/apache/jackrabbit/rmi/server/ServerXASession.java b/jackrabbit-jcr-rmi/src/main/java/org/apache/jackrabbit/rmi/server/ServerXASession.java
index 9141a3390..661c027f8 100644
--- a/jackrabbit-jcr-rmi/src/main/java/org/apache/jackrabbit/rmi/server/ServerXASession.java
+++ b/jackrabbit-jcr-rmi/src/main/java/org/apache/jackrabbit/rmi/server/ServerXASession.java
@@ -33,7 +33,7 @@ import org.apache.jackrabbit.rmi.remote.SerializableXid;
  *
  * @since 1.4
  */
-@Deprecated public class ServerXASession extends ServerSession implements RemoteXASession {
+@Deprecated(forRemoval = true) public class ServerXASession extends ServerSession implements RemoteXASession {
 
     /**
      * The adapted local XA resource
diff --git a/jackrabbit-jcr-rmi/src/main/java/org/apache/jackrabbit/rmi/server/iterator/ServerIterator.java b/jackrabbit-jcr-rmi/src/main/java/org/apache/jackrabbit/rmi/server/iterator/ServerIterator.java
index 4c8ca406f..f675dd453 100644
--- a/jackrabbit-jcr-rmi/src/main/java/org/apache/jackrabbit/rmi/server/iterator/ServerIterator.java
+++ b/jackrabbit-jcr-rmi/src/main/java/org/apache/jackrabbit/rmi/server/iterator/ServerIterator.java
@@ -34,7 +34,7 @@ import org.apache.jackrabbit.rmi.server.ServerObject;
  * class makes a local iterator available as an RMI service using the
  * {@link RemoteIterator} interface.
  */
-@Deprecated public abstract class ServerIterator extends ServerObject
+@Deprecated(forRemoval = true) public abstract class ServerIterator extends ServerObject
         implements RemoteIterator {
 
     /** The adapted local iterator. */
diff --git a/jackrabbit-jcr-rmi/src/main/java/org/apache/jackrabbit/rmi/server/iterator/ServerNodeIterator.java b/jackrabbit-jcr-rmi/src/main/java/org/apache/jackrabbit/rmi/server/iterator/ServerNodeIterator.java
index 5b56a1212..471e6859b 100644
--- a/jackrabbit-jcr-rmi/src/main/java/org/apache/jackrabbit/rmi/server/iterator/ServerNodeIterator.java
+++ b/jackrabbit-jcr-rmi/src/main/java/org/apache/jackrabbit/rmi/server/iterator/ServerNodeIterator.java
@@ -28,7 +28,7 @@ import org.apache.jackrabbit.rmi.server.RemoteAdapterFactory;
  * <p>
  * A ServerIterator for iterating nodes.
  */
-@Deprecated public class ServerNodeIterator extends ServerIterator {
+@Deprecated(forRemoval = true) public class ServerNodeIterator extends ServerIterator {
 
     /**
      * Creates a ServerNodeIterator instance.
diff --git a/jackrabbit-jcr-rmi/src/main/java/org/apache/jackrabbit/rmi/server/iterator/ServerNodeTypeIterator.java b/jackrabbit-jcr-rmi/src/main/java/org/apache/jackrabbit/rmi/server/iterator/ServerNodeTypeIterator.java
index b66348c74..5e817880f 100644
--- a/jackrabbit-jcr-rmi/src/main/java/org/apache/jackrabbit/rmi/server/iterator/ServerNodeTypeIterator.java
+++ b/jackrabbit-jcr-rmi/src/main/java/org/apache/jackrabbit/rmi/server/iterator/ServerNodeTypeIterator.java
@@ -28,7 +28,7 @@ import org.apache.jackrabbit.rmi.server.RemoteAdapterFactory;
  * <p>
  * A ServerIterator for iterating node types.
  */
-@Deprecated public class ServerNodeTypeIterator extends ServerIterator {
+@Deprecated(forRemoval = true) public class ServerNodeTypeIterator extends ServerIterator {
 
     /**
      * Creates a ServerNodeTypeIterator instance.
diff --git a/jackrabbit-jcr-rmi/src/main/java/org/apache/jackrabbit/rmi/server/iterator/ServerPropertyIterator.java b/jackrabbit-jcr-rmi/src/main/java/org/apache/jackrabbit/rmi/server/iterator/ServerPropertyIterator.java
index 9d55d8d13..478626669 100644
--- a/jackrabbit-jcr-rmi/src/main/java/org/apache/jackrabbit/rmi/server/iterator/ServerPropertyIterator.java
+++ b/jackrabbit-jcr-rmi/src/main/java/org/apache/jackrabbit/rmi/server/iterator/ServerPropertyIterator.java
@@ -28,7 +28,7 @@ import org.apache.jackrabbit.rmi.server.RemoteAdapterFactory;
  * <p>
  * A ServerIterator for iterating properties.
  */
-@Deprecated public class ServerPropertyIterator extends ServerIterator {
+@Deprecated(forRemoval = true) public class ServerPropertyIterator extends ServerIterator {
 
     /**
      * Creates a ServerPropertyIterator instance.
diff --git a/jackrabbit-jcr-rmi/src/main/java/org/apache/jackrabbit/rmi/server/iterator/ServerRowIterator.java b/jackrabbit-jcr-rmi/src/main/java/org/apache/jackrabbit/rmi/server/iterator/ServerRowIterator.java
index 6122a0785..07ea0a3a8 100644
--- a/jackrabbit-jcr-rmi/src/main/java/org/apache/jackrabbit/rmi/server/iterator/ServerRowIterator.java
+++ b/jackrabbit-jcr-rmi/src/main/java/org/apache/jackrabbit/rmi/server/iterator/ServerRowIterator.java
@@ -28,7 +28,7 @@ import org.apache.jackrabbit.rmi.server.RemoteAdapterFactory;
  * <p>
  * A ServerIterator for iterating rows.
  */
-@Deprecated public class ServerRowIterator extends ServerIterator {
+@Deprecated(forRemoval = true) public class ServerRowIterator extends ServerIterator {
 
     /**
      * Creates a ServerRowIterator instance.
diff --git a/jackrabbit-jcr-rmi/src/main/java/org/apache/jackrabbit/rmi/server/iterator/ServerVersionIterator.java b/jackrabbit-jcr-rmi/src/main/java/org/apache/jackrabbit/rmi/server/iterator/ServerVersionIterator.java
index 96a5e8d6a..b235f2593 100644
--- a/jackrabbit-jcr-rmi/src/main/java/org/apache/jackrabbit/rmi/server/iterator/ServerVersionIterator.java
+++ b/jackrabbit-jcr-rmi/src/main/java/org/apache/jackrabbit/rmi/server/iterator/ServerVersionIterator.java
@@ -28,7 +28,7 @@ import org.apache.jackrabbit.rmi.server.RemoteAdapterFactory;
  * <p>
  * A ServerIterator for iterating versions.
  */
-@Deprecated public class ServerVersionIterator extends ServerIterator {
+@Deprecated(forRemoval = true) public class ServerVersionIterator extends ServerIterator {
 
     /**
      * Creates a ServerVersionIterator instance.
diff --git a/jackrabbit-jcr-rmi/src/main/java/org/apache/jackrabbit/rmi/server/jmx/JCRServer.java b/jackrabbit-jcr-rmi/src/main/java/org/apache/jackrabbit/rmi/server/jmx/JCRServer.java
index 3c37a6722..62b10c3e5 100644
--- a/jackrabbit-jcr-rmi/src/main/java/org/apache/jackrabbit/rmi/server/jmx/JCRServer.java
+++ b/jackrabbit-jcr-rmi/src/main/java/org/apache/jackrabbit/rmi/server/jmx/JCRServer.java
@@ -35,7 +35,7 @@ import org.apache.jackrabbit.rmi.server.ServerAdapterFactory;
  * <p>
  * MBean that registers a JCR RMI server through JNDI.
  */
-@Deprecated public class JCRServer implements JCRServerMBean {
+@Deprecated(forRemoval = true) public class JCRServer implements JCRServerMBean {
 
     /**
      * local repository address
diff --git a/jackrabbit-jcr-rmi/src/main/java/org/apache/jackrabbit/rmi/server/jmx/JCRServerMBean.java b/jackrabbit-jcr-rmi/src/main/java/org/apache/jackrabbit/rmi/server/jmx/JCRServerMBean.java
index 6af2a7333..cb8a76a48 100644
--- a/jackrabbit-jcr-rmi/src/main/java/org/apache/jackrabbit/rmi/server/jmx/JCRServerMBean.java
+++ b/jackrabbit-jcr-rmi/src/main/java/org/apache/jackrabbit/rmi/server/jmx/JCRServerMBean.java
@@ -18,7 +18,7 @@ package org.apache.jackrabbit.rmi.server.jmx;
 
 import javax.jcr.RepositoryException;
 
-@Deprecated public interface JCRServerMBean {
+@Deprecated(forRemoval = true) public interface JCRServerMBean {
 
     void start() throws Exception;
 
diff --git a/jackrabbit-jcr-rmi/src/main/java/org/apache/jackrabbit/rmi/server/principal/ServerGroup.java b/jackrabbit-jcr-rmi/src/main/java/org/apache/jackrabbit/rmi/server/principal/ServerGroup.java
index c96916c3d..256929b7e 100644
--- a/jackrabbit-jcr-rmi/src/main/java/org/apache/jackrabbit/rmi/server/principal/ServerGroup.java
+++ b/jackrabbit-jcr-rmi/src/main/java/org/apache/jackrabbit/rmi/server/principal/ServerGroup.java
@@ -29,7 +29,7 @@ import org.apache.jackrabbit.rmi.remote.RemoteIterator;
 import org.apache.jackrabbit.rmi.remote.principal.RemoteGroup;
 import org.apache.jackrabbit.rmi.server.RemoteAdapterFactory;
 
-@Deprecated public class ServerGroup extends ServerPrincipal implements RemoteGroup {
+@Deprecated(forRemoval = true) public class ServerGroup extends ServerPrincipal implements RemoteGroup {
 
     public ServerGroup(final GroupPrincipal principal, final RemoteAdapterFactory factory)
             throws RemoteException {
diff --git a/jackrabbit-jcr-rmi/src/main/java/org/apache/jackrabbit/rmi/server/principal/ServerPrincipal.java b/jackrabbit-jcr-rmi/src/main/java/org/apache/jackrabbit/rmi/server/principal/ServerPrincipal.java
index bdab3c961..c7d3dc414 100644
--- a/jackrabbit-jcr-rmi/src/main/java/org/apache/jackrabbit/rmi/server/principal/ServerPrincipal.java
+++ b/jackrabbit-jcr-rmi/src/main/java/org/apache/jackrabbit/rmi/server/principal/ServerPrincipal.java
@@ -25,7 +25,7 @@ import org.apache.jackrabbit.rmi.remote.principal.RemotePrincipal;
 import org.apache.jackrabbit.rmi.server.RemoteAdapterFactory;
 import org.apache.jackrabbit.rmi.server.ServerObject;
 
-@Deprecated public class ServerPrincipal extends ServerObject implements RemotePrincipal {
+@Deprecated(forRemoval = true) public class ServerPrincipal extends ServerObject implements RemotePrincipal {
 
     private final Principal principal;
 
diff --git a/jackrabbit-jcr-rmi/src/main/java/org/apache/jackrabbit/rmi/server/principal/ServerPrincipalIterator.java b/jackrabbit-jcr-rmi/src/main/java/org/apache/jackrabbit/rmi/server/principal/ServerPrincipalIterator.java
index 97cfdb2a7..1d5cb1c1b 100644
--- a/jackrabbit-jcr-rmi/src/main/java/org/apache/jackrabbit/rmi/server/principal/ServerPrincipalIterator.java
+++ b/jackrabbit-jcr-rmi/src/main/java/org/apache/jackrabbit/rmi/server/principal/ServerPrincipalIterator.java
@@ -25,7 +25,7 @@ import org.apache.jackrabbit.commons.iterator.RangeIteratorAdapter;
 import org.apache.jackrabbit.rmi.server.RemoteAdapterFactory;
 import org.apache.jackrabbit.rmi.server.iterator.ServerIterator;
 
-@Deprecated public class ServerPrincipalIterator extends ServerIterator {
+@Deprecated(forRemoval = true) public class ServerPrincipalIterator extends ServerIterator {
 
     public ServerPrincipalIterator(Iterator<Principal> iterator,
             RemoteAdapterFactory factory, int maxBufferSize)
diff --git a/jackrabbit-jcr-rmi/src/main/java/org/apache/jackrabbit/rmi/server/security/ServerAccessControlEntry.java b/jackrabbit-jcr-rmi/src/main/java/org/apache/jackrabbit/rmi/server/security/ServerAccessControlEntry.java
index ec6b550e8..ae6ed38cf 100644
--- a/jackrabbit-jcr-rmi/src/main/java/org/apache/jackrabbit/rmi/server/security/ServerAccessControlEntry.java
+++ b/jackrabbit-jcr-rmi/src/main/java/org/apache/jackrabbit/rmi/server/security/ServerAccessControlEntry.java
@@ -26,7 +26,7 @@ import org.apache.jackrabbit.rmi.remote.security.RemotePrivilege;
 import org.apache.jackrabbit.rmi.server.RemoteAdapterFactory;
 import org.apache.jackrabbit.rmi.server.ServerObject;
 
-@Deprecated public class ServerAccessControlEntry extends ServerObject implements
+@Deprecated(forRemoval = true) public class ServerAccessControlEntry extends ServerObject implements
         RemoteAccessControlEntry {
 
     private final AccessControlEntry ace;
diff --git a/jackrabbit-jcr-rmi/src/main/java/org/apache/jackrabbit/rmi/server/security/ServerAccessControlList.java b/jackrabbit-jcr-rmi/src/main/java/org/apache/jackrabbit/rmi/server/security/ServerAccessControlList.java
index 202114f41..d4e3bf475 100644
--- a/jackrabbit-jcr-rmi/src/main/java/org/apache/jackrabbit/rmi/server/security/ServerAccessControlList.java
+++ b/jackrabbit-jcr-rmi/src/main/java/org/apache/jackrabbit/rmi/server/security/ServerAccessControlList.java
@@ -31,7 +31,7 @@ import org.apache.jackrabbit.rmi.remote.security.RemotePrivilege;
 import org.apache.jackrabbit.rmi.server.RemoteAdapterFactory;
 import org.apache.jackrabbit.rmi.server.principal.ServerPrincipal;
 
-@Deprecated public class ServerAccessControlList extends ServerAccessControlPolicy
+@Deprecated(forRemoval = true) public class ServerAccessControlList extends ServerAccessControlPolicy
         implements RemoteAccessControlList {
 
     public ServerAccessControlList(final AccessControlList acl,
diff --git a/jackrabbit-jcr-rmi/src/main/java/org/apache/jackrabbit/rmi/server/security/ServerAccessControlManager.java b/jackrabbit-jcr-rmi/src/main/java/org/apache/jackrabbit/rmi/server/security/ServerAccessControlManager.java
index b7c31f6dc..84b451156 100644
--- a/jackrabbit-jcr-rmi/src/main/java/org/apache/jackrabbit/rmi/server/security/ServerAccessControlManager.java
+++ b/jackrabbit-jcr-rmi/src/main/java/org/apache/jackrabbit/rmi/server/security/ServerAccessControlManager.java
@@ -31,7 +31,7 @@ import org.apache.jackrabbit.rmi.remote.security.RemotePrivilege;
 import org.apache.jackrabbit.rmi.server.RemoteAdapterFactory;
 import org.apache.jackrabbit.rmi.server.ServerObject;
 
-@Deprecated public class ServerAccessControlManager extends ServerObject implements
+@Deprecated(forRemoval = true) public class ServerAccessControlManager extends ServerObject implements
         RemoteAccessControlManager {
 
     private final AccessControlManager acm;
diff --git a/jackrabbit-jcr-rmi/src/main/java/org/apache/jackrabbit/rmi/server/security/ServerAccessControlPolicy.java b/jackrabbit-jcr-rmi/src/main/java/org/apache/jackrabbit/rmi/server/security/ServerAccessControlPolicy.java
index 1e987831d..0e6c75cb2 100644
--- a/jackrabbit-jcr-rmi/src/main/java/org/apache/jackrabbit/rmi/server/security/ServerAccessControlPolicy.java
+++ b/jackrabbit-jcr-rmi/src/main/java/org/apache/jackrabbit/rmi/server/security/ServerAccessControlPolicy.java
@@ -24,7 +24,7 @@ import org.apache.jackrabbit.rmi.remote.security.RemoteAccessControlPolicy;
 import org.apache.jackrabbit.rmi.server.RemoteAdapterFactory;
 import org.apache.jackrabbit.rmi.server.ServerObject;
 
-@Deprecated public class ServerAccessControlPolicy extends ServerObject implements
+@Deprecated(forRemoval = true) public class ServerAccessControlPolicy extends ServerObject implements
         RemoteAccessControlPolicy {
 
     private final AccessControlPolicy acp;
diff --git a/jackrabbit-jcr-rmi/src/main/java/org/apache/jackrabbit/rmi/server/security/ServerAccessControlPolicyIterator.java b/jackrabbit-jcr-rmi/src/main/java/org/apache/jackrabbit/rmi/server/security/ServerAccessControlPolicyIterator.java
index e9c44c6ab..5f17ca941 100644
--- a/jackrabbit-jcr-rmi/src/main/java/org/apache/jackrabbit/rmi/server/security/ServerAccessControlPolicyIterator.java
+++ b/jackrabbit-jcr-rmi/src/main/java/org/apache/jackrabbit/rmi/server/security/ServerAccessControlPolicyIterator.java
@@ -29,7 +29,7 @@ import org.apache.jackrabbit.rmi.server.iterator.ServerIterator;
  * <p>
  * A ServerIterator for iterating rows.
  */
-@Deprecated public class ServerAccessControlPolicyIterator extends ServerIterator {
+@Deprecated(forRemoval = true) public class ServerAccessControlPolicyIterator extends ServerIterator {
 
     /**
      * Creates a ServerRowIterator instance.
diff --git a/jackrabbit-jcr-rmi/src/main/java/org/apache/jackrabbit/rmi/server/security/ServerPrivilege.java b/jackrabbit-jcr-rmi/src/main/java/org/apache/jackrabbit/rmi/server/security/ServerPrivilege.java
index ee8bf9dcd..8fd174319 100644
--- a/jackrabbit-jcr-rmi/src/main/java/org/apache/jackrabbit/rmi/server/security/ServerPrivilege.java
+++ b/jackrabbit-jcr-rmi/src/main/java/org/apache/jackrabbit/rmi/server/security/ServerPrivilege.java
@@ -25,7 +25,7 @@ import org.apache.jackrabbit.rmi.remote.security.RemotePrivilege;
 import org.apache.jackrabbit.rmi.server.RemoteAdapterFactory;
 import org.apache.jackrabbit.rmi.server.ServerObject;
 
-@Deprecated public class ServerPrivilege extends ServerObject implements RemotePrivilege {
+@Deprecated(forRemoval = true) public class ServerPrivilege extends ServerObject implements RemotePrivilege {
 
     private final Privilege privilege;
 
diff --git a/jackrabbit-jcr-rmi/src/main/java/org/apache/jackrabbit/rmi/value/AbstractValue.java b/jackrabbit-jcr-rmi/src/main/java/org/apache/jackrabbit/rmi/value/AbstractValue.java
index 2689ee929..d4a5bf109 100644
--- a/jackrabbit-jcr-rmi/src/main/java/org/apache/jackrabbit/rmi/value/AbstractValue.java
+++ b/jackrabbit-jcr-rmi/src/main/java/org/apache/jackrabbit/rmi/value/AbstractValue.java
@@ -50,7 +50,7 @@ import javax.jcr.ValueFormatException;
  * The {@link #getStream()} method uses {@link #getBinary()} to implement
  * the deprecated JCR 1.0 behaviour. This method must not be overridden.
  */
-@Deprecated abstract class AbstractValue implements Value, Serializable {
+@Deprecated(forRemoval = true) abstract class AbstractValue implements Value, Serializable {
 
     /**
      * Serial version UID
diff --git a/jackrabbit-jcr-rmi/src/main/java/org/apache/jackrabbit/rmi/value/BinaryValue.java b/jackrabbit-jcr-rmi/src/main/java/org/apache/jackrabbit/rmi/value/BinaryValue.java
index 5f2806d9a..3ab01d1b2 100644
--- a/jackrabbit-jcr-rmi/src/main/java/org/apache/jackrabbit/rmi/value/BinaryValue.java
+++ b/jackrabbit-jcr-rmi/src/main/java/org/apache/jackrabbit/rmi/value/BinaryValue.java
@@ -35,7 +35,7 @@ import javax.jcr.Value;
  * <p>
  * Binary value.
  */
-@Deprecated class BinaryValue implements Value, Serializable {
+@Deprecated(forRemoval = true) class BinaryValue implements Value, Serializable {
 
     /**
      * Serial version UID.
diff --git a/jackrabbit-jcr-rmi/src/main/java/org/apache/jackrabbit/rmi/value/BooleanValue.java b/jackrabbit-jcr-rmi/src/main/java/org/apache/jackrabbit/rmi/value/BooleanValue.java
index 961bcf214..030dc5622 100644
--- a/jackrabbit-jcr-rmi/src/main/java/org/apache/jackrabbit/rmi/value/BooleanValue.java
+++ b/jackrabbit-jcr-rmi/src/main/java/org/apache/jackrabbit/rmi/value/BooleanValue.java
@@ -23,7 +23,7 @@ import javax.jcr.PropertyType;
  * <p>
  * Boolean value.
  */
-@Deprecated class BooleanValue extends AbstractValue {
+@Deprecated(forRemoval = true) class BooleanValue extends AbstractValue {
 
     /**
      * Serial version UID
diff --git a/jackrabbit-jcr-rmi/src/main/java/org/apache/jackrabbit/rmi/value/DateValue.java b/jackrabbit-jcr-rmi/src/main/java/org/apache/jackrabbit/rmi/value/DateValue.java
index ad6e3af9d..51e0931bd 100644
--- a/jackrabbit-jcr-rmi/src/main/java/org/apache/jackrabbit/rmi/value/DateValue.java
+++ b/jackrabbit-jcr-rmi/src/main/java/org/apache/jackrabbit/rmi/value/DateValue.java
@@ -30,7 +30,7 @@ import javax.jcr.ValueFormatException;
  * <p>
  * Date value.
  */
-@Deprecated class DateValue extends AbstractValue {
+@Deprecated(forRemoval = true) class DateValue extends AbstractValue {
 
     /**
      * Serial version UID
diff --git a/jackrabbit-jcr-rmi/src/main/java/org/apache/jackrabbit/rmi/value/DecimalValue.java b/jackrabbit-jcr-rmi/src/main/java/org/apache/jackrabbit/rmi/value/DecimalValue.java
index e4c2ba5d6..718907220 100644
--- a/jackrabbit-jcr-rmi/src/main/java/org/apache/jackrabbit/rmi/value/DecimalValue.java
+++ b/jackrabbit-jcr-rmi/src/main/java/org/apache/jackrabbit/rmi/value/DecimalValue.java
@@ -27,7 +27,7 @@ import javax.jcr.ValueFormatException;
  * <p>
  * Decimal value.
  */
-@Deprecated class DecimalValue extends AbstractValue {
+@Deprecated(forRemoval = true) class DecimalValue extends AbstractValue {
 
     /**
      * Serial version UID.
diff --git a/jackrabbit-jcr-rmi/src/main/java/org/apache/jackrabbit/rmi/value/DoubleValue.java b/jackrabbit-jcr-rmi/src/main/java/org/apache/jackrabbit/rmi/value/DoubleValue.java
index 9a78414a8..e11828313 100644
--- a/jackrabbit-jcr-rmi/src/main/java/org/apache/jackrabbit/rmi/value/DoubleValue.java
+++ b/jackrabbit-jcr-rmi/src/main/java/org/apache/jackrabbit/rmi/value/DoubleValue.java
@@ -27,7 +27,7 @@ import javax.jcr.ValueFormatException;
  * <p>
  * Double value.
  */
-@Deprecated class DoubleValue extends AbstractValue {
+@Deprecated(forRemoval = true) class DoubleValue extends AbstractValue {
 
     /**
      * Serial version UID.
diff --git a/jackrabbit-jcr-rmi/src/main/java/org/apache/jackrabbit/rmi/value/LongValue.java b/jackrabbit-jcr-rmi/src/main/java/org/apache/jackrabbit/rmi/value/LongValue.java
index 193c7881f..4e813f1d9 100644
--- a/jackrabbit-jcr-rmi/src/main/java/org/apache/jackrabbit/rmi/value/LongValue.java
+++ b/jackrabbit-jcr-rmi/src/main/java/org/apache/jackrabbit/rmi/value/LongValue.java
@@ -26,7 +26,7 @@ import javax.jcr.PropertyType;
  * <p>
  * Long value.
  */
-@Deprecated class LongValue extends AbstractValue {
+@Deprecated(forRemoval = true) class LongValue extends AbstractValue {
 
     /**
      * Serial version UID.
diff --git a/jackrabbit-jcr-rmi/src/main/java/org/apache/jackrabbit/rmi/value/NameValue.java b/jackrabbit-jcr-rmi/src/main/java/org/apache/jackrabbit/rmi/value/NameValue.java
index 759b0a063..5c26a5cec 100644
--- a/jackrabbit-jcr-rmi/src/main/java/org/apache/jackrabbit/rmi/value/NameValue.java
+++ b/jackrabbit-jcr-rmi/src/main/java/org/apache/jackrabbit/rmi/value/NameValue.java
@@ -28,7 +28,7 @@ import javax.jcr.ValueFormatException;
  *
  * @since 0.16.4.1
  */
-@Deprecated public class NameValue extends AbstractValue {
+@Deprecated(forRemoval = true) public class NameValue extends AbstractValue {
 
     /**
      * Serial version UID.
diff --git a/jackrabbit-jcr-rmi/src/main/java/org/apache/jackrabbit/rmi/value/PathValue.java b/jackrabbit-jcr-rmi/src/main/java/org/apache/jackrabbit/rmi/value/PathValue.java
index 8435b27d4..1efe3f5ef 100644
--- a/jackrabbit-jcr-rmi/src/main/java/org/apache/jackrabbit/rmi/value/PathValue.java
+++ b/jackrabbit-jcr-rmi/src/main/java/org/apache/jackrabbit/rmi/value/PathValue.java
@@ -28,7 +28,7 @@ import javax.jcr.ValueFormatException;
  *
  * @since 0.16.4.1
  */
-@Deprecated public class PathValue extends AbstractValue {
+@Deprecated(forRemoval = true) public class PathValue extends AbstractValue {
 
     /**
      * Serial version UID.
diff --git a/jackrabbit-jcr-rmi/src/main/java/org/apache/jackrabbit/rmi/value/ReferenceValue.java b/jackrabbit-jcr-rmi/src/main/java/org/apache/jackrabbit/rmi/value/ReferenceValue.java
index 363d11e1a..6e55a573c 100644
--- a/jackrabbit-jcr-rmi/src/main/java/org/apache/jackrabbit/rmi/value/ReferenceValue.java
+++ b/jackrabbit-jcr-rmi/src/main/java/org/apache/jackrabbit/rmi/value/ReferenceValue.java
@@ -29,7 +29,7 @@ import javax.jcr.ValueFormatException;
  *
  * @since 0.16.4.1
  */
-@Deprecated public class ReferenceValue extends AbstractValue {
+@Deprecated(forRemoval = true) public class ReferenceValue extends AbstractValue {
 
     /**
      * Serial version UID.
diff --git a/jackrabbit-jcr-rmi/src/main/java/org/apache/jackrabbit/rmi/value/SerialValueFactory.java b/jackrabbit-jcr-rmi/src/main/java/org/apache/jackrabbit/rmi/value/SerialValueFactory.java
index e5c057759..9d1173fb1 100644
--- a/jackrabbit-jcr-rmi/src/main/java/org/apache/jackrabbit/rmi/value/SerialValueFactory.java
+++ b/jackrabbit-jcr-rmi/src/main/java/org/apache/jackrabbit/rmi/value/SerialValueFactory.java
@@ -47,7 +47,7 @@ import javax.jcr.ValueFormatException;
  * methods of the <code>ValueFactory</code> interface are declared final to
  * guard against breaking the rules.
  */
-@Deprecated public class SerialValueFactory implements ValueFactory {
+@Deprecated(forRemoval = true) public class SerialValueFactory implements ValueFactory {
 
     /** The singleton value factory instance */
     private static final SerialValueFactory INSTANCE = new SerialValueFactory();
diff --git a/jackrabbit-jcr-rmi/src/main/java/org/apache/jackrabbit/rmi/value/SerializableBinary.java b/jackrabbit-jcr-rmi/src/main/java/org/apache/jackrabbit/rmi/value/SerializableBinary.java
index ac696fb94..8da0a56a9 100644
--- a/jackrabbit-jcr-rmi/src/main/java/org/apache/jackrabbit/rmi/value/SerializableBinary.java
+++ b/jackrabbit-jcr-rmi/src/main/java/org/apache/jackrabbit/rmi/value/SerializableBinary.java
@@ -37,7 +37,7 @@ import javax.jcr.RepositoryException;
  * <p>
  * Serializable binary.
  */
-@Deprecated class SerializableBinary implements Binary, Serializable {
+@Deprecated(forRemoval = true) class SerializableBinary implements Binary, Serializable {
 
     /**
      * Serial version UID.
diff --git a/jackrabbit-jcr-rmi/src/main/java/org/apache/jackrabbit/rmi/value/StringValue.java b/jackrabbit-jcr-rmi/src/main/java/org/apache/jackrabbit/rmi/value/StringValue.java
index f685ca048..8d9ffb85c 100644
--- a/jackrabbit-jcr-rmi/src/main/java/org/apache/jackrabbit/rmi/value/StringValue.java
+++ b/jackrabbit-jcr-rmi/src/main/java/org/apache/jackrabbit/rmi/value/StringValue.java
@@ -29,7 +29,7 @@ import javax.jcr.ValueFormatException;
  * <p>
  * String value.
  */
-@Deprecated class StringValue extends AbstractValue {
+@Deprecated(forRemoval = true) class StringValue extends AbstractValue {
 
     /**
      * Serial version UID.
diff --git a/jackrabbit-jcr-rmi/src/test/java/org/apache/jackrabbit/rmi/ConformanceTest.java b/jackrabbit-jcr-rmi/src/test/java/org/apache/jackrabbit/rmi/ConformanceTest.java
index 40e5b1fe8..3272ab6c9 100644
--- a/jackrabbit-jcr-rmi/src/test/java/org/apache/jackrabbit/rmi/ConformanceTest.java
+++ b/jackrabbit-jcr-rmi/src/test/java/org/apache/jackrabbit/rmi/ConformanceTest.java
@@ -26,7 +26,7 @@ import org.apache.jackrabbit.test.JCRTestSuite;
  * <p>
  * JCR API conformance test suite.
  */
-@Deprecated public class ConformanceTest extends TestCase {
+@Deprecated(forRemoval = true) public class ConformanceTest extends TestCase {
 
     public static TestSuite suite() {
         TestSuite suite = new TestSuite();
diff --git a/jackrabbit-jcr-rmi/src/test/java/org/apache/jackrabbit/rmi/RepositoryStubImpl.java b/jackrabbit-jcr-rmi/src/test/java/org/apache/jackrabbit/rmi/RepositoryStubImpl.java
index de19175e7..34e7e5356 100644
--- a/jackrabbit-jcr-rmi/src/test/java/org/apache/jackrabbit/rmi/RepositoryStubImpl.java
+++ b/jackrabbit-jcr-rmi/src/test/java/org/apache/jackrabbit/rmi/RepositoryStubImpl.java
@@ -39,7 +39,7 @@ import org.apache.jackrabbit.rmi.server.ServerAdapterFactory;
 import org.apache.jackrabbit.rmi.server.principal.ServerGroup;
 import org.apache.jackrabbit.test.RepositoryStubException;
 
-@Deprecated public class RepositoryStubImpl extends JackrabbitRepositoryStub {
+@Deprecated(forRemoval = true) public class RepositoryStubImpl extends JackrabbitRepositoryStub {
 
     /**
      * A known principal used for access control tests.