Skip to main content
aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorEike Stepper2010-02-02 11:39:48 +0000
committerEike Stepper2010-02-02 11:39:48 +0000
commitdc758eb87d5c2f0e802e49de4ca6173d3d94a2c8 (patch)
treeee1091aac506313694923c73871275551cbc714d /plugins/org.eclipse.emf.cdo.net4j/src/org/eclipse/emf/cdo/internal/net4j/protocol/LoadRevisionByVersionRequest.java
parent09f6a7f80829204abd2c2bf2511ba3b4e65c81c8 (diff)
downloadcdo-dc758eb87d5c2f0e802e49de4ca6173d3d94a2c8.tar.gz
cdo-dc758eb87d5c2f0e802e49de4ca6173d3d94a2c8.tar.xz
cdo-dc758eb87d5c2f0e802e49de4ca6173d3d94a2c8.zip
[270716] Provide support for branching
https://bugs.eclipse.org/bugs/show_bug.cgi?id=270716
Diffstat (limited to 'plugins/org.eclipse.emf.cdo.net4j/src/org/eclipse/emf/cdo/internal/net4j/protocol/LoadRevisionByVersionRequest.java')
-rw-r--r--plugins/org.eclipse.emf.cdo.net4j/src/org/eclipse/emf/cdo/internal/net4j/protocol/LoadRevisionByVersionRequest.java51
1 files changed, 37 insertions, 14 deletions
diff --git a/plugins/org.eclipse.emf.cdo.net4j/src/org/eclipse/emf/cdo/internal/net4j/protocol/LoadRevisionByVersionRequest.java b/plugins/org.eclipse.emf.cdo.net4j/src/org/eclipse/emf/cdo/internal/net4j/protocol/LoadRevisionByVersionRequest.java
index 773a031011..069b996463 100644
--- a/plugins/org.eclipse.emf.cdo.net4j/src/org/eclipse/emf/cdo/internal/net4j/protocol/LoadRevisionByVersionRequest.java
+++ b/plugins/org.eclipse.emf.cdo.net4j/src/org/eclipse/emf/cdo/internal/net4j/protocol/LoadRevisionByVersionRequest.java
@@ -10,51 +10,74 @@
**************************************************************************/
package org.eclipse.emf.cdo.internal.net4j.protocol;
+import org.eclipse.emf.cdo.common.branch.CDOBranchVersion;
import org.eclipse.emf.cdo.common.id.CDOID;
+import org.eclipse.emf.cdo.common.io.CDODataInput;
import org.eclipse.emf.cdo.common.io.CDODataOutput;
import org.eclipse.emf.cdo.common.protocol.CDOProtocolConstants;
import org.eclipse.emf.cdo.internal.net4j.bundle.OM;
+import org.eclipse.emf.cdo.spi.common.revision.InternalCDORevision;
import org.eclipse.net4j.util.om.trace.ContextTracer;
import java.io.IOException;
import java.text.MessageFormat;
-import java.util.Collections;
/**
* @author Eike Stepper
*/
-public class LoadRevisionByVersionRequest extends LoadRevisionRequest
+public class LoadRevisionByVersionRequest extends CDOClientRequest<InternalCDORevision>
{
private static final ContextTracer TRACER = new ContextTracer(OM.DEBUG_PROTOCOL, LoadRevisionByVersionRequest.class);
- private int version;
+ private CDOID id;
- public LoadRevisionByVersionRequest(CDOClientProtocol protocol, CDOID id, int referenceChunk, int prefetchDepth,
- int version)
+ private CDOBranchVersion branchVersion;
+
+ private int referenceChunk;
+
+ public LoadRevisionByVersionRequest(CDOClientProtocol protocol, CDOID id, CDOBranchVersion branchVersion,
+ int referenceChunk)
{
- super(protocol, CDOProtocolConstants.SIGNAL_LOAD_REVISION_BY_VERSION, Collections.singleton(id), referenceChunk,
- prefetchDepth);
- this.version = version;
+ super(protocol, CDOProtocolConstants.SIGNAL_LOAD_REVISION_BY_VERSION);
+ this.id = id;
+ this.branchVersion = branchVersion;
+ this.referenceChunk = referenceChunk;
}
@Override
protected void requesting(CDODataOutput out) throws IOException
{
- super.requesting(out);
if (TRACER.isEnabled())
{
- TRACER.format("Writing version: {0}", version); //$NON-NLS-1$
+ TRACER.format("Writing id: {0}", id); //$NON-NLS-1$
+ }
+
+ out.writeCDOID(id);
+ if (TRACER.isEnabled())
+ {
+ TRACER.format("Writing branchVersion: {0}", branchVersion); //$NON-NLS-1$
+ }
+
+ out.writeCDOBranchVersion(branchVersion);
+ if (TRACER.isEnabled())
+ {
+ TRACER.format("Writing referenceChunk: {0}", referenceChunk); //$NON-NLS-1$
}
- out.writeInt(version);
+ out.writeInt(referenceChunk);
+ }
+
+ @Override
+ protected InternalCDORevision confirming(CDODataInput in) throws IOException
+ {
+ return (InternalCDORevision)in.readCDORevision();
}
@Override
public String toString()
{
- return MessageFormat.format(
- "{0}(ids={1}, referenceChunk={2}, prefetchDepth={3}, version={4})", getClass().getSimpleName(), getIDs(), //$NON-NLS-1$
- getReferenceChunk(), getPrefetchDepth(), version);
+ return MessageFormat.format("LoadRevisionByVersionRequest(id={0}, branchVersion={1}, referenceChunk={2})", id,
+ branchVersion, referenceChunk);
}
}

Back to the top