diff options
author | Eike Stepper | 2008-04-21 11:52:36 +0000 |
---|---|---|
committer | Eike Stepper | 2008-04-21 11:52:36 +0000 |
commit | 2c87a1698647742d33fc35dbebe46007696333a5 (patch) | |
tree | 6b70eca9786d87505bc0544e3b7bcece0f008847 /plugins/org.eclipse.emf.cdo/src/org/eclipse/emf/internal/cdo/protocol/CommitTransactionRequest.java | |
parent | 2124fc5183c3cbec4bb37ecac59e65eb82b4a945 (diff) | |
download | cdo-2c87a1698647742d33fc35dbebe46007696333a5.tar.gz cdo-2c87a1698647742d33fc35dbebe46007696333a5.tar.xz cdo-2c87a1698647742d33fc35dbebe46007696333a5.zip |
[226233] Issues with EPackages having inter-dependencies
https://bugs.eclipse.org/bugs/show_bug.cgi?id=226233
Diffstat (limited to 'plugins/org.eclipse.emf.cdo/src/org/eclipse/emf/internal/cdo/protocol/CommitTransactionRequest.java')
-rw-r--r-- | plugins/org.eclipse.emf.cdo/src/org/eclipse/emf/internal/cdo/protocol/CommitTransactionRequest.java | 19 |
1 files changed, 11 insertions, 8 deletions
diff --git a/plugins/org.eclipse.emf.cdo/src/org/eclipse/emf/internal/cdo/protocol/CommitTransactionRequest.java b/plugins/org.eclipse.emf.cdo/src/org/eclipse/emf/internal/cdo/protocol/CommitTransactionRequest.java index 7b9622385f..c09232acf1 100644 --- a/plugins/org.eclipse.emf.cdo/src/org/eclipse/emf/internal/cdo/protocol/CommitTransactionRequest.java +++ b/plugins/org.eclipse.emf.cdo/src/org/eclipse/emf/internal/cdo/protocol/CommitTransactionRequest.java @@ -130,15 +130,18 @@ public class CommitTransactionRequest extends CDOClientRequest<CommitTransaction List<CDOPackage> newPackages = transaction.getNewPackages(); for (CDOPackage newPackage : newPackages) { - CDOIDMetaRange oldRange = newPackage.getMetaIDRange(); - CDOIDMetaRange newRange = CDOIDUtil.readMetaRange(in); - ((InternalCDOPackage)newPackage).setMetaIDRange(newRange); - for (int i = 0; i < oldRange.size(); i++) + if (newPackage.getParentURI() == null) { - CDOIDTemp oldID = (CDOIDTemp)oldRange.get(i); - CDOID newID = newRange.get(i); - session.remapMetaInstance(oldID, newID); - result.addIDMapping(oldID, newID); + CDOIDMetaRange oldRange = newPackage.getMetaIDRange(); + CDOIDMetaRange newRange = CDOIDUtil.readMetaRange(in); + ((InternalCDOPackage)newPackage).setMetaIDRange(newRange); + for (int i = 0; i < oldRange.size(); i++) + { + CDOIDTemp oldID = (CDOIDTemp)oldRange.get(i); + CDOID newID = newRange.get(i); + session.remapMetaInstance(oldID, newID); + result.addIDMapping(oldID, newID); + } } } |