Skip to main content
aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorMathieu Velten2013-11-20 14:03:26 +0000
committerGerrit Code Review @ Eclipse.org2013-12-19 07:56:23 +0000
commitf14f771ed499274460c1776b45340e9202f40c37 (patch)
tree9bb049132968e43999b70df43197205c8a278858 /plugins/org.eclipse.emf.cdo.server/src/org/eclipse
parente8405e0a186c9378cddafe504182df3b596a1409 (diff)
downloadcdo-f14f771ed499274460c1776b45340e9202f40c37.tar.gz
cdo-f14f771ed499274460c1776b45340e9202f40c37.tar.xz
cdo-f14f771ed499274460c1776b45340e9202f40c37.zip
[422145]: Branches cannot be renamed
https://bugs.eclipse.org/bugs/show_bug.cgi?id=422145 Bug: 422145 Change-Id: I6ded9e20bc7ded6efd3548a9cbd6c4c61c2a161e Signed-off-by: Mathieu Velten <mathieu.velten@atos.net>
Diffstat (limited to 'plugins/org.eclipse.emf.cdo.server/src/org/eclipse')
-rw-r--r--plugins/org.eclipse.emf.cdo.server/src/org/eclipse/emf/cdo/internal/server/Repository.java31
-rw-r--r--plugins/org.eclipse.emf.cdo.server/src/org/eclipse/emf/cdo/internal/server/ServerCDOView.java5
-rw-r--r--plugins/org.eclipse.emf.cdo.server/src/org/eclipse/emf/cdo/internal/server/Session.java9
-rw-r--r--plugins/org.eclipse.emf.cdo.server/src/org/eclipse/emf/cdo/internal/server/SessionManager.java9
-rw-r--r--plugins/org.eclipse.emf.cdo.server/src/org/eclipse/emf/cdo/internal/server/embedded/EmbeddedClientSessionProtocol.java12
-rw-r--r--plugins/org.eclipse.emf.cdo.server/src/org/eclipse/emf/cdo/internal/server/embedded/EmbeddedServerSessionProtocol.java13
-rw-r--r--plugins/org.eclipse.emf.cdo.server/src/org/eclipse/emf/cdo/internal/server/mem/MEMStore.java18
-rw-r--r--plugins/org.eclipse.emf.cdo.server/src/org/eclipse/emf/cdo/internal/server/mem/MEMStoreAccessor.java5
-rw-r--r--plugins/org.eclipse.emf.cdo.server/src/org/eclipse/emf/cdo/internal/server/syncing/RepositorySynchronizer.java16
-rw-r--r--plugins/org.eclipse.emf.cdo.server/src/org/eclipse/emf/cdo/spi/server/ISessionProtocol.java10
-rw-r--r--plugins/org.eclipse.emf.cdo.server/src/org/eclipse/emf/cdo/spi/server/InternalRepository.java6
-rw-r--r--plugins/org.eclipse.emf.cdo.server/src/org/eclipse/emf/cdo/spi/server/InternalSession.java12
-rw-r--r--plugins/org.eclipse.emf.cdo.server/src/org/eclipse/emf/cdo/spi/server/InternalSessionManager.java16
13 files changed, 141 insertions, 21 deletions
diff --git a/plugins/org.eclipse.emf.cdo.server/src/org/eclipse/emf/cdo/internal/server/Repository.java b/plugins/org.eclipse.emf.cdo.server/src/org/eclipse/emf/cdo/internal/server/Repository.java
index 736e11e076..02744d06d5 100644
--- a/plugins/org.eclipse.emf.cdo.server/src/org/eclipse/emf/cdo/internal/server/Repository.java
+++ b/plugins/org.eclipse.emf.cdo.server/src/org/eclipse/emf/cdo/internal/server/Repository.java
@@ -67,6 +67,7 @@ import org.eclipse.emf.cdo.spi.common.CDOReplicationContext;
import org.eclipse.emf.cdo.spi.common.CDOReplicationInfo;
import org.eclipse.emf.cdo.spi.common.branch.CDOBranchUtil;
import org.eclipse.emf.cdo.spi.common.branch.InternalCDOBranchManager;
+import org.eclipse.emf.cdo.spi.common.branch.InternalCDOBranchManager.BranchLoader2;
import org.eclipse.emf.cdo.spi.common.commit.CDOChangeSetSegment;
import org.eclipse.emf.cdo.spi.common.commit.CDOCommitInfoUtil;
import org.eclipse.emf.cdo.spi.common.commit.CDORevisionAvailabilityInfo;
@@ -435,6 +436,36 @@ public class Repository extends Container<Object> implements InternalRepository
return accessor.loadBranches(startID, endID, branchHandler);
}
+ @Deprecated
+ public void deleteBranch(int branchID)
+ {
+ throw new UnsupportedOperationException();
+ }
+
+ public void renameBranch(int branchID, String newName)
+ {
+ if (!isSupportingBranches())
+ {
+ throw new IllegalStateException("Branching is not supported by " + this);
+ }
+
+ if (branchID == CDOBranch.MAIN_BRANCH_ID)
+ {
+ throw new IllegalArgumentException("Renaming of the MAIN branch is not supported");
+ }
+
+ IStoreAccessor accessor = StoreThreadLocal.getAccessor();
+ if (!(accessor instanceof BranchLoader2))
+ {
+ throw new UnsupportedOperationException("Branch renaming is not supported by " + this);
+ }
+
+ synchronized (createBranchLock)
+ {
+ ((BranchLoader2)accessor).renameBranch(branchID, newName);
+ }
+ }
+
public void loadCommitInfos(CDOBranch branch, long startTime, long endTime, CDOCommitInfoHandler handler)
{
IStoreAccessor accessor = StoreThreadLocal.getAccessor();
diff --git a/plugins/org.eclipse.emf.cdo.server/src/org/eclipse/emf/cdo/internal/server/ServerCDOView.java b/plugins/org.eclipse.emf.cdo.server/src/org/eclipse/emf/cdo/internal/server/ServerCDOView.java
index d680fec1ae..4c6e6e79d4 100644
--- a/plugins/org.eclipse.emf.cdo.server/src/org/eclipse/emf/cdo/internal/server/ServerCDOView.java
+++ b/plugins/org.eclipse.emf.cdo.server/src/org/eclipse/emf/cdo/internal/server/ServerCDOView.java
@@ -521,7 +521,7 @@ public class ServerCDOView extends AbstractCDOView implements org.eclipse.emf.cd
/**
* Server sessions may not be used to change the user's credentials: it must
* be done client-side by interaction with the user.
- *
+ *
* @since 4.3
*/
public void changeCredentials()
@@ -532,7 +532,7 @@ public class ServerCDOView extends AbstractCDOView implements org.eclipse.emf.cd
/**
* Server sessions may not be used to reset a user's credentials: it must
* be done client-side by interaction with an adminstrator.
- *
+ *
* @since 4.3
*/
public void resetCredentials(String userID)
@@ -1001,6 +1001,7 @@ public class ServerCDOView extends AbstractCDOView implements org.eclipse.emf.cd
throw new UnsupportedOperationException();
}
+ @Deprecated
public void handleBranchNotification(InternalCDOBranch branch)
{
throw new UnsupportedOperationException();
diff --git a/plugins/org.eclipse.emf.cdo.server/src/org/eclipse/emf/cdo/internal/server/Session.java b/plugins/org.eclipse.emf.cdo.server/src/org/eclipse/emf/cdo/internal/server/Session.java
index 0143be5079..5d742926f5 100644
--- a/plugins/org.eclipse.emf.cdo.server/src/org/eclipse/emf/cdo/internal/server/Session.java
+++ b/plugins/org.eclipse.emf.cdo.server/src/org/eclipse/emf/cdo/internal/server/Session.java
@@ -17,6 +17,7 @@ package org.eclipse.emf.cdo.internal.server;
import org.eclipse.emf.cdo.common.CDOCommonRepository;
import org.eclipse.emf.cdo.common.CDOCommonSession;
import org.eclipse.emf.cdo.common.branch.CDOBranch;
+import org.eclipse.emf.cdo.common.branch.CDOBranchChangedEvent.ChangeKind;
import org.eclipse.emf.cdo.common.branch.CDOBranchPoint;
import org.eclipse.emf.cdo.common.commit.CDOCommitInfo;
import org.eclipse.emf.cdo.common.id.CDOID;
@@ -397,11 +398,17 @@ public class Session extends Container<IView> implements InternalSession
}
}
+ @Deprecated
public void sendBranchNotification(InternalCDOBranch branch) throws Exception
{
+ sendBranchNotification(branch, ChangeKind.CREATED);
+ }
+
+ public void sendBranchNotification(InternalCDOBranch branch, ChangeKind changeKind) throws Exception
+ {
if (protocol != null)
{
- protocol.sendBranchNotification(branch);
+ protocol.sendBranchNotification(branch, changeKind);
}
}
diff --git a/plugins/org.eclipse.emf.cdo.server/src/org/eclipse/emf/cdo/internal/server/SessionManager.java b/plugins/org.eclipse.emf.cdo.server/src/org/eclipse/emf/cdo/internal/server/SessionManager.java
index fe39211de2..8c0a43a0f4 100644
--- a/plugins/org.eclipse.emf.cdo.server/src/org/eclipse/emf/cdo/internal/server/SessionManager.java
+++ b/plugins/org.eclipse.emf.cdo.server/src/org/eclipse/emf/cdo/internal/server/SessionManager.java
@@ -17,6 +17,7 @@ package org.eclipse.emf.cdo.internal.server;
import org.eclipse.emf.cdo.common.CDOCommonRepository;
import org.eclipse.emf.cdo.common.CDOCommonSession;
import org.eclipse.emf.cdo.common.CDOCommonSession.Options.LockNotificationMode;
+import org.eclipse.emf.cdo.common.branch.CDOBranchChangedEvent.ChangeKind;
import org.eclipse.emf.cdo.common.commit.CDOCommitInfo;
import org.eclipse.emf.cdo.common.id.CDOID;
import org.eclipse.emf.cdo.common.lock.CDOLockChangeInfo;
@@ -268,15 +269,21 @@ public class SessionManager extends Container<ISession> implements InternalSessi
}
}
+ @Deprecated
public void sendBranchNotification(InternalSession sender, InternalCDOBranch branch)
{
+ sendBranchNotification(sender, branch, ChangeKind.CREATED);
+ }
+
+ public void sendBranchNotification(InternalSession sender, InternalCDOBranch branch, ChangeKind changeKind)
+ {
for (InternalSession session : getSessions())
{
if (session != sender)
{
try
{
- session.sendBranchNotification(branch);
+ session.sendBranchNotification(branch, changeKind);
}
catch (Exception ex)
{
diff --git a/plugins/org.eclipse.emf.cdo.server/src/org/eclipse/emf/cdo/internal/server/embedded/EmbeddedClientSessionProtocol.java b/plugins/org.eclipse.emf.cdo.server/src/org/eclipse/emf/cdo/internal/server/embedded/EmbeddedClientSessionProtocol.java
index 1569e4f9a6..03ff06f428 100644
--- a/plugins/org.eclipse.emf.cdo.server/src/org/eclipse/emf/cdo/internal/server/embedded/EmbeddedClientSessionProtocol.java
+++ b/plugins/org.eclipse.emf.cdo.server/src/org/eclipse/emf/cdo/internal/server/embedded/EmbeddedClientSessionProtocol.java
@@ -138,6 +138,17 @@ public class EmbeddedClientSessionProtocol extends Lifecycle implements CDOSessi
throw new UnsupportedOperationException();
}
+ @Deprecated
+ public void deleteBranch(int branchID)
+ {
+ throw new UnsupportedOperationException();
+ }
+
+ public void renameBranch(int branchID, String newName)
+ {
+ throw new UnsupportedOperationException();
+ }
+
public RepositoryTimeResult getRepositoryTime()
{
RepositoryTimeResult result = new RepositoryTimeResult();
@@ -629,4 +640,5 @@ public class EmbeddedClientSessionProtocol extends Lifecycle implements CDOSessi
serverSessionProtocol = null;
super.doDeactivate();
}
+
}
diff --git a/plugins/org.eclipse.emf.cdo.server/src/org/eclipse/emf/cdo/internal/server/embedded/EmbeddedServerSessionProtocol.java b/plugins/org.eclipse.emf.cdo.server/src/org/eclipse/emf/cdo/internal/server/embedded/EmbeddedServerSessionProtocol.java
index 94ecdf8819..2431c84c83 100644
--- a/plugins/org.eclipse.emf.cdo.server/src/org/eclipse/emf/cdo/internal/server/embedded/EmbeddedServerSessionProtocol.java
+++ b/plugins/org.eclipse.emf.cdo.server/src/org/eclipse/emf/cdo/internal/server/embedded/EmbeddedServerSessionProtocol.java
@@ -12,6 +12,7 @@
package org.eclipse.emf.cdo.internal.server.embedded;
import org.eclipse.emf.cdo.common.CDOCommonRepository;
+import org.eclipse.emf.cdo.common.branch.CDOBranchChangedEvent.ChangeKind;
import org.eclipse.emf.cdo.common.commit.CDOCommitInfo;
import org.eclipse.emf.cdo.common.id.CDOID;
import org.eclipse.emf.cdo.common.lock.CDOLockChangeInfo;
@@ -72,8 +73,8 @@ public class EmbeddedServerSessionProtocol extends Lifecycle implements ISession
throw new UnsupportedOperationException();
}
- public Response sendCredentialsChallenge(Challenge challenge, String userID,
- CredentialsUpdateOperation operation) throws Exception
+ public Response sendCredentialsChallenge(Challenge challenge, String userID, CredentialsUpdateOperation operation)
+ throws Exception
{
throw new UnsupportedOperationException();
}
@@ -99,8 +100,12 @@ public class EmbeddedServerSessionProtocol extends Lifecycle implements ISession
public void sendBranchNotification(InternalCDOBranch branch)
{
- EmbeddedClientSession clientSession = clientSessionProtocol.getSession();
- clientSession.handleBranchNotification(branch);
+ throw new UnsupportedOperationException();
+ }
+
+ public void sendBranchNotification(InternalCDOBranch branch, ChangeKind changeKind) throws Exception
+ {
+ throw new UnsupportedOperationException();
}
@Deprecated
diff --git a/plugins/org.eclipse.emf.cdo.server/src/org/eclipse/emf/cdo/internal/server/mem/MEMStore.java b/plugins/org.eclipse.emf.cdo.server/src/org/eclipse/emf/cdo/internal/server/mem/MEMStore.java
index 743a176978..0dc8a19659 100644
--- a/plugins/org.eclipse.emf.cdo.server/src/org/eclipse/emf/cdo/internal/server/mem/MEMStore.java
+++ b/plugins/org.eclipse.emf.cdo.server/src/org/eclipse/emf/cdo/internal/server/mem/MEMStore.java
@@ -42,7 +42,7 @@ import org.eclipse.emf.cdo.server.StoreThreadLocal;
import org.eclipse.emf.cdo.server.mem.IMEMStore;
import org.eclipse.emf.cdo.spi.common.branch.InternalCDOBranch;
import org.eclipse.emf.cdo.spi.common.branch.InternalCDOBranchManager;
-import org.eclipse.emf.cdo.spi.common.branch.InternalCDOBranchManager.BranchLoader;
+import org.eclipse.emf.cdo.spi.common.branch.InternalCDOBranchManager.BranchLoader2;
import org.eclipse.emf.cdo.spi.common.commit.CDOChangeSetSegment;
import org.eclipse.emf.cdo.spi.common.commit.CDOCommitInfoUtil;
import org.eclipse.emf.cdo.spi.common.commit.InternalCDOCommitInfoManager;
@@ -96,7 +96,7 @@ import java.util.Set;
/**
* @author Simon McDuff
*/
-public class MEMStore extends LongIDStore implements IMEMStore, BranchLoader, DurableLocking2
+public class MEMStore extends LongIDStore implements IMEMStore, BranchLoader2, DurableLocking2
{
public static final String TYPE = "mem"; //$NON-NLS-1$
@@ -262,6 +262,20 @@ public class MEMStore extends LongIDStore implements IMEMStore, BranchLoader, Du
return count;
}
+ @Deprecated
+ public void deleteBranch(int branchID)
+ {
+ throw new UnsupportedOperationException();
+ }
+
+ public void renameBranch(int branchID, String newName)
+ {
+ BranchInfo oldBranchInfo = branchInfos.remove(branchID);
+ BranchInfo newBranchInfo = new BranchInfo(newName, oldBranchInfo.getBaseBranchID(),
+ oldBranchInfo.getBaseTimeStamp());
+ branchInfos.put(branchID, newBranchInfo);
+ }
+
public synchronized void loadCommitInfos(final CDOBranch branch, long startTime, final long endTime,
CDOCommitInfoHandler handler)
{
diff --git a/plugins/org.eclipse.emf.cdo.server/src/org/eclipse/emf/cdo/internal/server/mem/MEMStoreAccessor.java b/plugins/org.eclipse.emf.cdo.server/src/org/eclipse/emf/cdo/internal/server/mem/MEMStoreAccessor.java
index d26e59f9c3..edaff31120 100644
--- a/plugins/org.eclipse.emf.cdo.server/src/org/eclipse/emf/cdo/internal/server/mem/MEMStoreAccessor.java
+++ b/plugins/org.eclipse.emf.cdo.server/src/org/eclipse/emf/cdo/internal/server/mem/MEMStoreAccessor.java
@@ -226,6 +226,11 @@ public class MEMStoreAccessor extends LongIDStoreAccessor implements Raw, Durabl
return getStore().loadBranches(startID, endID, branchHandler);
}
+ public void renameBranch(int branchID, String newName)
+ {
+ getStore().renameBranch(branchID, newName);
+ }
+
public void loadCommitInfos(CDOBranch branch, long startTime, long endTime, CDOCommitInfoHandler handler)
{
getStore().loadCommitInfos(branch, startTime, endTime, handler);
diff --git a/plugins/org.eclipse.emf.cdo.server/src/org/eclipse/emf/cdo/internal/server/syncing/RepositorySynchronizer.java b/plugins/org.eclipse.emf.cdo.server/src/org/eclipse/emf/cdo/internal/server/syncing/RepositorySynchronizer.java
index 0abf61fba3..02523c58a8 100644
--- a/plugins/org.eclipse.emf.cdo.server/src/org/eclipse/emf/cdo/internal/server/syncing/RepositorySynchronizer.java
+++ b/plugins/org.eclipse.emf.cdo.server/src/org/eclipse/emf/cdo/internal/server/syncing/RepositorySynchronizer.java
@@ -15,7 +15,8 @@ import org.eclipse.emf.cdo.common.CDOCommonRepository.State;
import org.eclipse.emf.cdo.common.CDOCommonSession.Options.LockNotificationMode;
import org.eclipse.emf.cdo.common.CDOCommonSession.Options.PassiveUpdateMode;
import org.eclipse.emf.cdo.common.branch.CDOBranch;
-import org.eclipse.emf.cdo.common.branch.CDOBranchCreatedEvent;
+import org.eclipse.emf.cdo.common.branch.CDOBranchChangedEvent;
+import org.eclipse.emf.cdo.common.branch.CDOBranchChangedEvent.ChangeKind;
import org.eclipse.emf.cdo.common.commit.CDOCommitInfo;
import org.eclipse.emf.cdo.common.id.CDOID;
import org.eclipse.emf.cdo.common.lock.CDOLockChangeInfo;
@@ -340,10 +341,17 @@ public class RepositorySynchronizer extends PriorityQueueRunner implements Inter
return;
}
- if (event instanceof CDOBranchCreatedEvent)
+ if (event instanceof CDOBranchChangedEvent)
{
- CDOBranchCreatedEvent e = (CDOBranchCreatedEvent)event;
- addWork(new BranchRunnable(e.getBranch()));
+ CDOBranchChangedEvent e = (CDOBranchChangedEvent)event;
+ if (e.getChangeKind() == ChangeKind.CREATED)
+ {
+ addWork(new BranchRunnable(e.getBranch()));
+ }
+ else
+ {
+ throw new UnsupportedOperationException("Branch renaming not supported: " + RepositorySynchronizer.this);
+ }
}
else if (event instanceof CDOSessionInvalidationEvent)
{
diff --git a/plugins/org.eclipse.emf.cdo.server/src/org/eclipse/emf/cdo/spi/server/ISessionProtocol.java b/plugins/org.eclipse.emf.cdo.server/src/org/eclipse/emf/cdo/spi/server/ISessionProtocol.java
index 7ded592a9e..34082fa9c8 100644
--- a/plugins/org.eclipse.emf.cdo.server/src/org/eclipse/emf/cdo/spi/server/ISessionProtocol.java
+++ b/plugins/org.eclipse.emf.cdo.server/src/org/eclipse/emf/cdo/spi/server/ISessionProtocol.java
@@ -13,6 +13,7 @@
package org.eclipse.emf.cdo.spi.server;
import org.eclipse.emf.cdo.common.CDOCommonRepository;
+import org.eclipse.emf.cdo.common.branch.CDOBranchChangedEvent.ChangeKind;
import org.eclipse.emf.cdo.common.commit.CDOCommitInfo;
import org.eclipse.emf.cdo.common.id.CDOID;
import org.eclipse.emf.cdo.common.lock.CDOLockChangeInfo;
@@ -56,9 +57,18 @@ public interface ISessionProtocol extends CDOProtocol, IAuthenticationProtocol
public void sendRepositoryStateNotification(CDOCommonRepository.State oldState, CDOCommonRepository.State newState,
CDOID rootResourceID) throws Exception;
+ /**
+ * @deprecated As of 4.3 use {@link #sendBranchNotification(InternalCDOBranch, ChangeKind)}.
+ */
+ @Deprecated
public void sendBranchNotification(InternalCDOBranch branch) throws Exception;
/**
+ * @since 4.3
+ */
+ public void sendBranchNotification(InternalCDOBranch branch, ChangeKind changeKind) throws Exception;
+
+ /**
* @deprecated As of 4.2 use {@link #sendCommitNotification(CDOCommitInfo, boolean)}.
*/
@Deprecated
diff --git a/plugins/org.eclipse.emf.cdo.server/src/org/eclipse/emf/cdo/spi/server/InternalRepository.java b/plugins/org.eclipse.emf.cdo.server/src/org/eclipse/emf/cdo/spi/server/InternalRepository.java
index 91ba787ff7..a35639c226 100644
--- a/plugins/org.eclipse.emf.cdo.server/src/org/eclipse/emf/cdo/spi/server/InternalRepository.java
+++ b/plugins/org.eclipse.emf.cdo.server/src/org/eclipse/emf/cdo/spi/server/InternalRepository.java
@@ -28,7 +28,7 @@ import org.eclipse.emf.cdo.server.ITransaction;
import org.eclipse.emf.cdo.spi.common.CDOReplicationContext;
import org.eclipse.emf.cdo.spi.common.CDOReplicationInfo;
import org.eclipse.emf.cdo.spi.common.branch.InternalCDOBranchManager;
-import org.eclipse.emf.cdo.spi.common.branch.InternalCDOBranchManager.BranchLoader;
+import org.eclipse.emf.cdo.spi.common.branch.InternalCDOBranchManager.BranchLoader2;
import org.eclipse.emf.cdo.spi.common.commit.CDORevisionAvailabilityInfo;
import org.eclipse.emf.cdo.spi.common.commit.InternalCDOCommitInfoManager;
import org.eclipse.emf.cdo.spi.common.commit.InternalCDOCommitInfoManager.CommitInfoLoader;
@@ -64,8 +64,8 @@ import java.util.concurrent.Semaphore;
* @noextend This interface is not intended to be extended by clients.
* @noimplement This interface is not intended to be implemented by clients.
*/
-public interface InternalRepository extends IRepository, PackageProcessor, PackageLoader, BranchLoader, RevisionLoader,
- CommitInfoLoader, CDORevisionUnchunker
+public interface InternalRepository extends IRepository, PackageProcessor, PackageLoader, BranchLoader2,
+ RevisionLoader, CommitInfoLoader, CDORevisionUnchunker
{
public void setName(String name);
diff --git a/plugins/org.eclipse.emf.cdo.server/src/org/eclipse/emf/cdo/spi/server/InternalSession.java b/plugins/org.eclipse.emf.cdo.server/src/org/eclipse/emf/cdo/spi/server/InternalSession.java
index f8e0411f71..3d9c0bc3b8 100644
--- a/plugins/org.eclipse.emf.cdo.server/src/org/eclipse/emf/cdo/spi/server/InternalSession.java
+++ b/plugins/org.eclipse.emf.cdo.server/src/org/eclipse/emf/cdo/spi/server/InternalSession.java
@@ -12,6 +12,7 @@ package org.eclipse.emf.cdo.spi.server;
import org.eclipse.emf.cdo.common.CDOCommonRepository;
import org.eclipse.emf.cdo.common.CDOCommonSession;
+import org.eclipse.emf.cdo.common.branch.CDOBranchChangedEvent.ChangeKind;
import org.eclipse.emf.cdo.common.branch.CDOBranchPoint;
import org.eclipse.emf.cdo.common.commit.CDOCommitInfo;
import org.eclipse.emf.cdo.common.id.CDOID;
@@ -32,7 +33,7 @@ import java.util.Set;
* If the meaning of this type isn't clear, there really should be more of a description here...
*
* @author Eike Stepper
- * @since 3.0
+ * @since 4.3
* @noextend This interface is not intended to be extended by clients.
* @noimplement This interface is not intended to be implemented by clients.
*/
@@ -80,9 +81,18 @@ public interface InternalSession extends ISession, CDOIDProvider, CDOPermissionP
public void sendRepositoryStateNotification(CDOCommonRepository.State oldState, CDOCommonRepository.State newState,
CDOID rootResourceID) throws Exception;
+ /**
+ * @deprecated As of 4.3 use {@link #sendBranchNotification(InternalCDOBranch, ChangeKind)}.
+ */
+ @Deprecated
public void sendBranchNotification(InternalCDOBranch branch) throws Exception;
/**
+ * @since 4.3
+ */
+ public void sendBranchNotification(InternalCDOBranch branch, ChangeKind changeKind) throws Exception;
+
+ /**
* @deprecated As of 4.2 use {@link #sendCommitNotification(CDOCommitInfo, boolean)}.
*/
@Deprecated
diff --git a/plugins/org.eclipse.emf.cdo.server/src/org/eclipse/emf/cdo/spi/server/InternalSessionManager.java b/plugins/org.eclipse.emf.cdo.server/src/org/eclipse/emf/cdo/spi/server/InternalSessionManager.java
index cdbfaa9c05..9d57436952 100644
--- a/plugins/org.eclipse.emf.cdo.server/src/org/eclipse/emf/cdo/spi/server/InternalSessionManager.java
+++ b/plugins/org.eclipse.emf.cdo.server/src/org/eclipse/emf/cdo/spi/server/InternalSessionManager.java
@@ -13,6 +13,7 @@
package org.eclipse.emf.cdo.spi.server;
import org.eclipse.emf.cdo.common.CDOCommonRepository;
+import org.eclipse.emf.cdo.common.branch.CDOBranchChangedEvent.ChangeKind;
import org.eclipse.emf.cdo.common.commit.CDOCommitInfo;
import org.eclipse.emf.cdo.common.id.CDOID;
import org.eclipse.emf.cdo.common.lock.CDOLockChangeInfo;
@@ -83,13 +84,13 @@ public interface InternalSessionManager extends ISessionManager
/**
* Challenges the connected user to authenticate the connection.
- *
+ *
* @param sessionProtocol the authenticatable session protocol
* @return the user ID with which the user authenticated herself, or {@code null}
* if the server does not require authentication for this connection
- *
+ *
* @throws SecurityException on failure to authenticate
- *
+ *
* @since 4.3
*/
public String authenticateUser(IAuthenticationProtocol sessionProtocol) throws SecurityException;
@@ -131,9 +132,18 @@ public interface InternalSessionManager extends ISessionManager
public void sendRepositoryStateNotification(CDOCommonRepository.State oldState, CDOCommonRepository.State newState,
CDOID rootResourceID);
+ /**
+ * @deprecated As of 4.3 use {@link #sendBranchNotification(InternalSession, InternalCDOBranch, ChangeKind)}.
+ */
+ @Deprecated
public void sendBranchNotification(InternalSession sender, InternalCDOBranch branch);
/**
+ * @since 4.3
+ */
+ public void sendBranchNotification(InternalSession sender, InternalCDOBranch branch, ChangeKind changeKind);
+
+ /**
* @deprecated As of 4.2 use {@link #sendCommitNotification(InternalSession, CDOCommitInfo, boolean)}.
*/
@Deprecated

Back to the top