Skip to main content
aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
Diffstat (limited to 'plugins/org.eclipse.emf.cdo.server/src/org/eclipse/emf/cdo/internal/server/Repository.java')
-rw-r--r--plugins/org.eclipse.emf.cdo.server/src/org/eclipse/emf/cdo/internal/server/Repository.java26
1 files changed, 16 insertions, 10 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 52bbe71196..3cf440b6ea 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
@@ -115,6 +115,7 @@ import org.eclipse.emf.ecore.EcorePackage;
import org.eclipse.emf.spi.cdo.CDOSessionProtocol.LockObjectsResult;
import org.eclipse.emf.spi.cdo.CDOSessionProtocol.UnlockObjectsResult;
+import org.eclipse.core.runtime.IProgressMonitor;
import org.eclipse.core.runtime.Platform;
import java.io.IOException;
@@ -145,7 +146,7 @@ public class Repository extends Container<Object> implements InternalRepository
private Type type = Type.MASTER;
- private State state = State.ONLINE;
+ private State state = State.INITIAL;
private Map<String, String> properties;
@@ -295,6 +296,11 @@ public class Repository extends Container<Object> implements InternalRepository
}
}
+ public boolean waitWhileInitial(IProgressMonitor monitor)
+ {
+ return CDOCommonUtil.waitWhileInitial(this, this, monitor);
+ }
+
public synchronized Map<String, String> getProperties()
{
if (properties == null)
@@ -1203,10 +1209,10 @@ public class Repository extends Container<Object> implements InternalRepository
throws IOException
{
final int fromBranchID = lastReplicatedBranchID + 1;
- final int toBranchID = getStore().getLastBranchID();
+ final int toBranchID = store.getLastBranchID();
final long fromCommitTime = lastReplicatedCommitTime + 1L;
- final long toCommitTime = getStore().getLastCommitTime();
+ final long toCommitTime = store.getLastCommitTime();
out.writeInt(toBranchID);
out.writeLong(toCommitTime);
@@ -1822,6 +1828,11 @@ public class Repository extends Container<Object> implements InternalRepository
}
}
+ protected void setPostActivateState()
+ {
+ setState(State.ONLINE);
+ }
+
@Override
protected void doBeforeActivate() throws Exception
{
@@ -1897,15 +1908,10 @@ public class Repository extends Container<Object> implements InternalRepository
readPackageUnits();
readRootResource();
}
-
- // This check does not work for CDOWorkspace:
- // if (CDOIDUtil.isNull(rootResourceID))
- // {
- // throw new IllegalStateException("Root resource ID is null");
- // }
}
- LifecycleUtil.activate(getLockingManager()); // Needs an initialized main branch / branch manager
+ LifecycleUtil.activate(lockingManager); // Needs an initialized main branch / branch manager
+ setPostActivateState();
}
@Override

Back to the top