Skip to main content
summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorCaspar De Groot2011-09-05 11:07:38 +0000
committerCaspar De Groot2011-09-05 11:07:38 +0000
commit6f2beae5f3a603c684e37bcfe9eb1df99cdb9e94 (patch)
tree409af9eedae87ea111c08a7b5b787eaf479d6c4e /plugins/org.eclipse.emf.cdo/src/org/eclipse/emf/spi/cdo/CDOSessionProtocol.java
parent760274f256e688aa3afda4546bb91f737c6f307d (diff)
downloadcdo-6f2beae5f3a603c684e37bcfe9eb1df99cdb9e94.tar.gz
cdo-6f2beae5f3a603c684e37bcfe9eb1df99cdb9e94.tar.xz
cdo-6f2beae5f3a603c684e37bcfe9eb1df99cdb9e94.zip
[351912] Lock coordination with SynchronizableRepositories
https://bugs.eclipse.org/bugs/show_bug.cgi?id=351912
Diffstat (limited to 'plugins/org.eclipse.emf.cdo/src/org/eclipse/emf/spi/cdo/CDOSessionProtocol.java')
-rw-r--r--plugins/org.eclipse.emf.cdo/src/org/eclipse/emf/spi/cdo/CDOSessionProtocol.java30
1 files changed, 27 insertions, 3 deletions
diff --git a/plugins/org.eclipse.emf.cdo/src/org/eclipse/emf/spi/cdo/CDOSessionProtocol.java b/plugins/org.eclipse.emf.cdo/src/org/eclipse/emf/spi/cdo/CDOSessionProtocol.java
index fdfc9111ed..0dd3e0d929 100644
--- a/plugins/org.eclipse.emf.cdo/src/org/eclipse/emf/spi/cdo/CDOSessionProtocol.java
+++ b/plugins/org.eclipse.emf.cdo/src/org/eclipse/emf/spi/cdo/CDOSessionProtocol.java
@@ -14,6 +14,7 @@ import org.eclipse.emf.cdo.CDOObject;
import org.eclipse.emf.cdo.CDOObjectReference;
import org.eclipse.emf.cdo.common.CDOCommonRepository;
import org.eclipse.emf.cdo.common.CDOCommonRepository.IDGenerationLocation;
+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.CDOBranchPoint;
@@ -86,6 +87,11 @@ public interface CDOSessionProtocol extends CDOProtocol, PackageLoader, BranchLo
public void setPassiveUpdateMode(PassiveUpdateMode mode);
/**
+ * @since 4.1
+ */
+ public void setLockNotificationMode(LockNotificationMode mode);
+
+ /**
* @since 3.0
*/
public RefreshSessionResult refresh(long lastUpdateTime,
@@ -807,6 +813,8 @@ public interface CDOSessionProtocol extends CDOProtocol, PackageLoader, BranchLo
private long requiredTimestamp;
+ private long timestamp;
+
private CDORevisionKey[] staleRevisions;
private CDOLockState[] newLockStates;
@@ -815,14 +823,14 @@ public interface CDOSessionProtocol extends CDOProtocol, PackageLoader, BranchLo
public LockObjectsResult(boolean successful, boolean timedOut, boolean waitForUpdate, long requiredTimestamp,
CDORevisionKey[] staleRevisions)
{
- throw new AssertionError("Deprecated"); // TODO (CD) What to do about this??
+ throw new AssertionError("Deprecated");
}
/**
* @since 4.1
*/
public LockObjectsResult(boolean successful, boolean timedOut, boolean waitForUpdate, long requiredTimestamp,
- CDORevisionKey[] staleRevisions, CDOLockState[] newLockStates)
+ CDORevisionKey[] staleRevisions, CDOLockState[] newLockStates, long timestamp)
{
this.successful = successful;
this.timedOut = timedOut;
@@ -830,6 +838,7 @@ public interface CDOSessionProtocol extends CDOProtocol, PackageLoader, BranchLo
this.requiredTimestamp = requiredTimestamp;
this.staleRevisions = staleRevisions;
this.newLockStates = newLockStates;
+ this.timestamp = timestamp;
}
public boolean isSuccessful()
@@ -864,6 +873,14 @@ public interface CDOSessionProtocol extends CDOProtocol, PackageLoader, BranchLo
{
return newLockStates;
}
+
+ /**
+ * @since 4.1
+ */
+ public long getTimestamp()
+ {
+ return timestamp;
+ }
}
/**
@@ -873,7 +890,9 @@ public interface CDOSessionProtocol extends CDOProtocol, PackageLoader, BranchLo
{
private CDOLockState[] newLockStates;
- public UnlockObjectsResult(CDOLockState[] newLockStates)
+ private long timestamp;
+
+ public UnlockObjectsResult(CDOLockState[] newLockStates, long timestamp)
{
this.newLockStates = newLockStates;
}
@@ -882,5 +901,10 @@ public interface CDOSessionProtocol extends CDOProtocol, PackageLoader, BranchLo
{
return newLockStates;
}
+
+ public long getTimestamp()
+ {
+ return timestamp;
+ }
}
}

Back to the top