diff options
author | Eike Stepper | 2008-02-23 08:20:58 +0000 |
---|---|---|
committer | Eike Stepper | 2008-02-23 08:20:58 +0000 |
commit | df3b1fdd17dfabb7925a02139def2084203a8c2d (patch) | |
tree | 8eaeb7b8f8de863ebceabd8338476875ec532cca /plugins/org.eclipse.emf.cdo/src/org/eclipse/emf/internal/cdo/CDOTransactionImpl.java | |
parent | 5ca35c866363c9e2cdc36700f8408a4b2f97985e (diff) | |
download | cdo-df3b1fdd17dfabb7925a02139def2084203a8c2d.tar.gz cdo-df3b1fdd17dfabb7925a02139def2084203a8c2d.tar.xz cdo-df3b1fdd17dfabb7925a02139def2084203a8c2d.zip |
[217117] Develop a HibernateStore
https://bugs.eclipse.org/bugs/show_bug.cgi?id=217117
Diffstat (limited to 'plugins/org.eclipse.emf.cdo/src/org/eclipse/emf/internal/cdo/CDOTransactionImpl.java')
-rw-r--r-- | plugins/org.eclipse.emf.cdo/src/org/eclipse/emf/internal/cdo/CDOTransactionImpl.java | 29 |
1 files changed, 24 insertions, 5 deletions
diff --git a/plugins/org.eclipse.emf.cdo/src/org/eclipse/emf/internal/cdo/CDOTransactionImpl.java b/plugins/org.eclipse.emf.cdo/src/org/eclipse/emf/internal/cdo/CDOTransactionImpl.java index 313a370f7d..3dcba3a2c5 100644 --- a/plugins/org.eclipse.emf.cdo/src/org/eclipse/emf/internal/cdo/CDOTransactionImpl.java +++ b/plugins/org.eclipse.emf.cdo/src/org/eclipse/emf/internal/cdo/CDOTransactionImpl.java @@ -167,11 +167,17 @@ public class CDOTransactionImpl extends CDOViewImpl implements CDOTransaction return Collections.unmodifiableMap(newObjects); } + /** + * TODO Consolidate with {@link #getRevisionDeltas()} + */ public Map<CDOID, CDOObject> getDirtyObjects() { return Collections.unmodifiableMap(dirtyObjects); } + /** + * TODO Consolidate with {@link #getDirtyObjects()} + */ public Map<CDOID, CDORevisionDelta> getRevisionDeltas() { return Collections.unmodifiableMap(revisionDeltas); @@ -188,6 +194,19 @@ public class CDOTransactionImpl extends CDOViewImpl implements CDOTransaction return (CDOResource)getResourceSet().createResource(createURI); } + public CDOResource getOrCreateResource(String path) + { + CDOID id = getResourceID(path); + if (id == null || id.isNull()) + { + return createResource(path); + } + else + { + return addResource(id, path); + } + } + public void commit() throws TransactionException { if (dirty) @@ -236,7 +255,7 @@ public class CDOTransactionImpl extends CDOViewImpl implements CDOTransaction } cleanUp(); - Map<CDOID, CDOID> idMappings = result.getIDMappings(); + Map<CDOIDTemp, CDOID> idMappings = result.getIDMappings(); fireEvent(new FinishedEvent(CDOTransactionFinishedEvent.Type.COMMITTED, idMappings)); } catch (RuntimeException ex) @@ -280,7 +299,7 @@ public class CDOTransactionImpl extends CDOViewImpl implements CDOTransaction } cleanUp(); - Map<CDOID, CDOID> idMappings = Collections.emptyMap(); + Map<CDOIDTemp, CDOID> idMappings = Collections.emptyMap(); fireEvent(new FinishedEvent(CDOTransactionFinishedEvent.Type.ROLLED_BACK, idMappings)); } catch (RuntimeException ex) @@ -475,9 +494,9 @@ public class CDOTransactionImpl extends CDOViewImpl implements CDOTransaction private Type type; - private Map<CDOID, CDOID> idMappings; + private Map<CDOIDTemp, CDOID> idMappings; - private FinishedEvent(Type type, Map<CDOID, CDOID> idMappings) + private FinishedEvent(Type type, Map<CDOIDTemp, CDOID> idMappings) { this.type = type; this.idMappings = idMappings; @@ -488,7 +507,7 @@ public class CDOTransactionImpl extends CDOViewImpl implements CDOTransaction return type; } - public Map<CDOID, CDOID> getIDMappings() + public Map<CDOIDTemp, CDOID> getIDMappings() { return idMappings; } |